编程实现两个一字节压缩型BCD码的减法,
设被减数地址在R0中,减数地址在R1中,差仍存于被减数地址单元中。
注意是单片机中啊。
------------------
一字节压缩的 BCD 码相减。
如:22-55 =-33。
注意:-33 的 BCD 补码是 67H。
MCS-51 汇编语言程序如下:
MOV R2,#22H ;被减数
MOV R3,#55H ;减数
CLR C
MOV A,R2
SUBB A,R3 ;先减一次,取得正负号
MOV F0,C ;暂时保存
;---------下面正式相减
MOV A,#9AH
SUBB A,R3 ;求减数的 BCD 补码=45H
ADD A,R2 ;加上被减数 22H,得 67H
DA A ;十进制调整,还是 67H
MOV R4,A ;保存差
MOV C,F0 ;用 Cy 当做“符号标志位”
--------------
如果运算数据,是:55-22 = 33,
执行本程序,将有:C = 0,R4 = 33。
谢谢你,想请问你一下你是从哪里学习到这些知识的?
追答单片机原理这本书上有的...
本回答被提问者采纳