被除数32位,则除数应该是16位。

被除数16位,则除数应该是8位。

防止溢出发生!

 

 

1.用到ax dx两个通用寄存器来存储被除数。一般是因为被除数大于65535.使用ax存储低位数据,使用dx存储高位数据。

示例:计算:100001/100

100001=186A1H        dx:1 ax:86a1

AX存储商  dx存储余数

汇编语言的div指令 ax dx bx

结果:

AX:03E8H   DX=1H  换成10进制:AX:1000   DX=1

验证正确!

 

2.仅用到ax这一个通用寄存器来存储被除数。这是因为被除数小于65535可以使用ax寄存器来存放被除数。

计算:1001/100

汇编语言的div指令 ax dx bx

al:存储商   ah:存储余数   分别为:10  1

 

OK

相关文章: