编程论坛
注册
登录
编程论坛
→
汇编论坛
DIV 和 IDIV 指令
fsrm324
发布于 2014-05-13 20:47, 741 次点击
MOV AX,0FFBDH
MOV BX,12F8H
IDIV BL
运行之后为什么AX=FD08,求解???
请详细解释下
5 回复
#2
fsrm324
2014-05-14 14:53
FFBDH(-32701)/F8(-120),但是如何得到商8余数FD的?
#3
zklhp
2014-05-14 16:08
补码没学好
FFBDH 这个十进制是-67
F8H 这个十进制是-8
除 得数是8 余数是-3
-3 十六进制是FDH 没有问题
顺便告诉你补码的算法
比如FFBDH 这是个字 二进制是1111111110111101 取反加1 二进制1000011 也就是十进制67 因为最高位是1 所以是-67
再比如-3 这里当成一个字节 3的二进制是11 取反加1 二进制11111101 也就是十六进制FDH
#4
zklhp
2014-05-14 16:09
悄悄告诉你 Windows自带的计算器很好用 反正Win8带的比以前的要好用
#5
fsrm324
2014-05-14 23:22
回复 3 楼 zklhp
太感谢了,茅塞顿开
#6
可可粉
2022-12-12 08:57
回复 楼主 fsrm324
我们书上给的答案是AX=0308H,但是我们给你算的一样,不知道是不是答案错了
1