算术运算指令

[09-11 23:02:50]   来源:http://www.88dzw.com  单片机学习   阅读:8812

文章摘要:必须注意:本指令不能简单地把累加器A中的16进制数交换成BCD码,也不能用于十进制减法的调正。3.减法指令MCS-51在MCS-48的基础上增加了带借位减法指令,加强了计算机的运算功能。1、带借位减法指令:SUBB A,#dataSUBB A,dataSUBB A,@RiSUBB A,Rn带借位减法指令SUBB,从累加器A中减去进位标志位CY和指定的变量,结果在累加器A中,若第七位有借位,则置位位CY,否则CY清0。若第3位有错位,则置位辅助进位标志AC,否则清0 AC。若第7和第6位中有一位需借位,而另一位不借位,则置位溢出标志OV。溢出位OV用于带符号的整数减法

算术运算指令,标签:单片机开发,单片机原理,单片机教程,http://www.88dzw.com
必须注意:本指令不能简单地把累加器A中的16进制数交换成BCD码,也不能用于十进制减法的调正。

3.减法指令


MCS-51在MCS-48的基础上增加了带借位减法指令,加强了计算机的运算功能。
1、带借位减法指令:

SUBB    A,#data SUBB    A,data SUBB    A,@Ri SUBB    A,Rn

带借位减法指令SUBB,从累加器A中减去进位标志位CY和指定的变量,结果在累加器A中,若第七位有借位,则置位位CY,否则CY清0。若第3位有错位,则置位辅助进位标志AC,否则清0   AC。若第7和第6位中有一位需借位,而另一位不借位,则置位溢出标志OV。溢出位OV用于带符号的整数减法,它表示(OV=1)一个正数减负数结果为负数;或一个负数减正数结果为正数的错误结果。
源操作数允许有四种寻址方式:寄存器RN,直接地址direct,间址Ri或立即数。
当在进行单字节或多字节减法前,不知道进位标志位CY的值,则应在减法指令前先将CY清“0”。

4.乘法指令

MUL    AB

    乘法指令是MCS-51新增加的,运算速度只需4个机器周期。它大大增加了MCS-51单片机的运算功能,克服了MCS-48系列单片机的不足。
本指令将累加器A和寄存器B中二个8位无符号整数进行相乘,16位乘积的低8位存于A中,高8位存于B中,如果乘积大于255(0FFH),即B的内容不为0时,则置位溢出标志位OV,否则清“0”OV。进位标志位CY总是清“0”。

5.除法指令

DIV    AB

    MCS-51系列单片机增加的除法指令,运算时间亦只需4个机器周期,同样也增强了MCS-51的运算功能,使它能适用于复杂的且要求运算功能较强的控制系统。除法指令格式:
本指令将累加器A中8位无符号整数除以B寄存器中8位无符号整数,所得结果商的整数部分存于A中,整数作数部分存于寄存器B中。清“0”CY和OV标志位。当除数(B中内容)为00H时,则执行结果将为不定值,即执行结果送往A和B中的为不定值,且置位溢出标志位OV。在任何情况下,均清“0”CY。

6.减一指令

DEC    A DEC      data DEC   @Ri DEC      Rn

    DEC指令把所指的寄存器内容减1,结果仍送回原寄存器,若原来寄存器的内容为00H,则减1后将为FFH,运算结果不影响任何标志位,该组指令使用了直接、寄存器和寄存器间寻址。同加1指令一样,在第二条指令中,若直接地址是I/O口,则进行“读-改-写”操作。

上一页  [1] [2] 


Tag:单片机学习单片机开发,单片机原理,单片机教程单片机学习

《算术运算指令》相关文章

分类导航
最新更新
热门排行