PC技术辅导:算术运算指令

PC技术辅导:算术运算指令,第1张

PC技术辅导:算术运算指令,第2张

算术指令是反映CPU计算能力的一组指令,也是编程中经常用到的一组指令。它包括加、减、乘、除和相关的辅助指令。
这组指令的操作数可以是8位、16位和32位(80386+)。当存储单元是这类指令的操作数时,该操作数的寻址方式可以是任何存储单元寻址方式。

1.加法指令
、加法指令add(二进制数加法指令)
格式:ADD Reg/Mem、Reg/Mem/Imm
受影响的标志位:af、CF、OF、PF、SF和ZF
指令的作用是

、ADC(带进位指令的加法)
指令格式:ADC Reg/Mem、Reg/Mem/Imm
受影响标志位:AF、CF、OF、PF、SF和ZF
指令的作用是把源操作数和进位标志位CF (0/)的值

、递增1指令Inc(递增1指令)
指令格式:INC Reg/Mem
受影响标志位:AF、OF、PF、SF、ZF。不影响CF
的指令的作用是将操作数的值加1。

、交换和相加指令XADD(交换和相加)
指令的格式:XADD Reg/Mem,Reg;0486+
受影响的标志位:AF、CF、OF、PF、SF、ZF
指令的作用是先交换两个操作数的值,再进行算术“加法”运算。
例5.3已知有两个32位的d1和d2(用数据类型d d解释)。编写一个程序片段,将d2的值加到d1上。
解决方案:32位数字d1和d2在内存中显示如下。
…… …… ……

方法一:程序
MOVAX,用16位寄存器写字ptr d1因为d1是双字类型,所以必须使用强制类型描述符。下同。
MOVDX,word ptr D1+2;(DX,AX)构成32位数据
ADDAX,字ptr d2低字加法
ADCDX,字ptr D2+2;高的话加起来。低位字相加在一起,可能产生“进位”
MOVword ptr d1,AX;低位字送到d1的低位字
MOVword ptr d1+2,DX;方法二:用32位寄存器写程序
MOVEAX,d1
ADDEAX,D2
MOVED1,EAX。

从上面两个程序不难看出,使用32位寄存器处理32位数据简单明了,而16位微机也可以处理32位数据,只是这样做比较复杂。
这里有学习和掌握加法指令的控件,可以模拟执行ADD、ADC、INC、XADD、CLC、STC和CMC。用鼠标左键单击寄存器列表框中指定的寄存器,以修改其值。后面其他控件的相关操作与此一致,不再赘述。

位律师回复
DABAN RP主题是一个优秀的主题,极致后台体验,无插件,集成会员系统
白度搜_经验知识百科全书 » PC技术辅导:算术运算指令

0条评论

发表评论

提供最优质的资源集合

立即查看 了解详情