单片机汇编
发布网友
发布时间:2023-05-25 04:46
我来回答
共2个回答
热心网友
时间:2024-11-13 13:47
兄弟,你用的是什么单片机?就拿MCS-51说吧!
求X-Y=?,X存在30H,Y存在31H,将结果放在32H
ORG 0500H
MOV A,30H
CLR C
SUBB A,31H
MOV 32H,A
SJMP $
END
你认为这样行吗?
楼下兄弟那样没道理吧?只求两数之差cy必须清零!像仁兄说的,不是多减了cy的值?结果还是两数之差吗?SUBB A,30H 其含义是:A-(30H)-cy,如果等式是:X-(Y+Z)哪么求减法时cy就不能清零了,要把其值保留,在运算减法时要减去cy中的值!
热心网友
时间:2024-11-13 13:47
SUBB是带借位减法指令详细可以看书
设累加器A内容为0C9H,寄存器R2内容为54H,进位标志CY=1。
执行指令“SUBB A,R2”的结果为74H
标志位CY=0,AC=0,OV=1.
(A) =11001001
-)(CY)=00000001
--------------------------------
第一运算结果 11001000
-)(R2)=01010100
--------------------------------
最后运算结果 01110100