社区
汇编语言
帖子详情
32位汇编用移位做乘法
misaki_526
2014-06-12 04:47:41
把这个溢出了的数值弄到edx
...全文
394
4
打赏
收藏
32位汇编用移位做乘法
把这个溢出了的数值弄到edx
复制链接
扫一扫
分享
转发到动态
举报
写回复
配置赞助广告
用AI写文章
4 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
赵4老师
2014-06-30
打赏
举报
回复
代码功能归根结底不是别人帮自己看或讲解或注释出来的;而是被自己静下心来花足够长的时间和精力亲自动手单步或设断点或对执行到某步获得的中间结果显示或写到日志文件中一步一步分析出来的。 提醒:再牛×的老师也无法代替学生自己领悟和上厕所! 单步调试和设断点调试(VS IDE中编译连接通过以后,按F10或F11键单步执行,按Shift+F11退出当前函数;在某行按F9设断点后按F5执行停在该断点处。)是程序员必须掌握的技能之一。
大熊猫侯佩
2014-06-12
打赏
举报
回复
请参考我置顶的帖子: [置顶] [原创]初学者问题集以及一些编程思路 [推荐]
misaki_526
2014-06-12
打赏
举报
回复
为什么输出结果有些正确,有些错误
misaki_526
2014-06-12
打赏
举报
回复
以下是我的代码 include irvine32.inc .data input1 byte '请输入第一个数:', 0 input2 byte '请输入第二个数:', 0 array db 32 dup(0) array_sum dd 64 dup(0) .code main proc mov edx, offset input1 call writestring call readint mov ebx, eax ;ebx为乘数 mov edx, offset input2 call writestring call readint ;eax为被乘数 mov ecx, 32 xor edi, edi ;初始化开关数组的指针,CF清零 rcl ebx, 1 ;循环左移,调整 MOVE: rcr ebx, 1 mov edx, ebx and edx, 1;0fffeh mov array[edi], dl inc edi loop MOVE XOR EDI,EDI MOV ECX,32 L2: MOV EDX,OFFSET array MOV EBX,OFFSET array_sum CALL MoveMul INC EDI LOOP L2 MOV ECX,32 XOR EDI,EDI XOR EAX,EAX XOR EDX,EDX SUM: ADD EAX,array_sum[EDI] ADC EDX,array_sum[EDI+4] ADD EDI,8 LOOP SUM call writedec exit MoveMul PROC ;NEAR push ecx test byte ptr [edx][edi],1 ;测试移动开关是否打开 jz OFF ON: xor ecx,ecx ;清除进位标志 mov ecx,edi ;移位次数 cmp ecx, 0 je L2 L1: shl eax,1 ;被乘数eax左移1位 shl edx,1 ;移入edx loop L1 L2: mov [ebx][edi*8],eax ;保存移位后的结果eax mov [ebx][edi*8+4],edx ;保存移位后的结果edx OFF: pop ecx ret MoveMul ENDP main endp end main
单片机
移位
实现
乘法
运算(
汇编
语言)
单片机
汇编
利用
移位
方式实现
乘法
运算,支持8位和16位。
移位
相加实现
乘法
移位
相加实现
乘法
,简单容易懂
ARM 芯片
汇编
指令集
ARM 指令集 -------------------------- 寄存器和处理器模式(26-bit 体系) 寄存器和处理器模式(32-bit 体系) 程序状态寄存器和操纵它的指令 寄存器装载和存储指令 算术和逻辑指令
移位
操作
乘法
指令 比较指令 分支指令 条件执行 软件中断指令 APCS (ARM 过程调用标准) 编写安全的 32-bit 代码的基本规则 IEEE 浮点指令
汇编
器伪指令 指令快速查找 ARM 指令格式
用位移指令实现两个数的
乘法
用位移指令实现两个数的
乘法
。有两个字节的类型的无符号数,用位操作指令和加发指令实现手工相乘,并将结果存放在一个16位的寄存器中。
ARM
汇编
指令 中文CHM版.rar
ARM
汇编
指令中文离线文档 目录: ARM 指令集 寄存器和处理器模式(26-bit 体系) 寄存器和处理器模式(32-bit 体系) 程序状态寄存器和操纵它的指令 寄存器装载和存储指令 算术和逻辑指令
移位
操作
乘法
指令 比较指令 分支指令 条件执行 软件中断指令 APCS (ARM 过程调用标准) 编写安全的 32-bit 代码的基本规则 IEEE 浮点指令
汇编
器伪指令 指令快速查找 ARM 指令格式
汇编语言
21,458
社区成员
41,600
社区内容
发帖
与我相关
我的任务
汇编语言
汇编语言(Assembly Language)是任何一种用于电子计算机、微处理器、微控制器或其他可编程器件的低级语言,亦称为符号语言。
复制链接
扫一扫
分享
社区描述
汇编语言(Assembly Language)是任何一种用于电子计算机、微处理器、微控制器或其他可编程器件的低级语言,亦称为符号语言。
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
暂无公告
试试用AI创作助手写篇文章吧
+ 用AI写文章