注册 登录
编程论坛 汇编论坛

算术运算指令的困扰!

EngMichael 发布于 2005-08-08 18:47, 916 次点击
请问下面是怎么算的?

        0000H          0H
    -)  6780H          DX
   -----------------       DX
 1  <-  9880H
CF
那位能帮忙解释一下,我不知道是怎么算出来的9880H.非常感谢!!!
4 回复
#2
yfzsj2005-09-22 20:28
十六进制,不满16便借1,如0-16=-16;对十进制0-1=-1
#3
xieheping2005-10-18 12:23
十六进制,加法时满16进1,减法向前借1就等于借了16.如00-16不等于-16 ,00-16=-EA.这是等八位的,当然全部答案是FFEA.
0000-6780=-9880
如果你有计算器计算那就是FFFF9880.
前面的F是表示负号,
如-1就等于十六进制的FFFFFFFF.
#4
intotherain2005-10-20 16:57
A

MOV AX,0

SUB AX,6780

到debug里面去看
#5
小邪2005-11-08 12:54

不要受十进制运算的影响,多看看十六进制的算法,自然就会了
如果实在转不过来,你可以先把十六进制转变为二进制之后进行计算,如果二进制计算也不会,哈,你只有再辛苦下,把它转为十进制来算吧,呵呵,不过结果别忘了再换为十六进制啊,嘿嘿

1