当前位置: 代码迷 >> 汇编语言 >> 8086汇编DIV指令,该怎么处理
  详细解决方案

8086汇编DIV指令,该怎么处理

热度:2856   发布时间:2013-02-26 00:00:00.0
8086汇编DIV指令
王爽《汇编语言》上说:除数为8位,则AL存储商,AH存储余数,除数为16位则AX存储商,DX存储余数。为什么我在DEBUG里调试如下程序却发现商一直存储AX、余数存储于DX
Assembly code
mov ax, 1235mov bx, 2div bxmov ax, 123div bx


------解决方案--------------------------------------------------------
探讨
引用:
16位被除数除8位除数? 当然会溢出。把除数扩展成16位就没事啦。

不一定会溢出啊,比如被除数是4001,除数是200,商是20,余数为1。
而且扩展成16位也有溢出情况啊,比如

Assembly code


mov dx, 1234
mov ax, 5678
mov bx, 2
div bx


这种除法总应该有相应的解决办法吧……