【发布时间】:2020-11-04 12:13:25
【问题描述】:
当我尝试将一个数字除以 2 时,出现“除以零”错误。
当前状态:
AX = 0009
我有这条线
Two DW 2
当我尝试这样做时
DIV Two
我收到此错误:
有什么问题?
【问题讨论】:
-
除以零并不是唯一可以引发
#DE异常的事情。
当我尝试将一个数字除以 2 时,出现“除以零”错误。
当前状态:
AX = 0009
我有这条线
Two DW 2
当我尝试这样做时
DIV Two
我收到此错误:
有什么问题?
【问题讨论】:
#DE 异常的事情。
分割前需要清除dx。回想一下,div 将DX:AX 除以操作数,而不仅仅是DX。如果不清除DX,则所得商不适合 16 位字,导致 CPU 产生异常。这与除以零时遇到的异常相同,调试器不会尝试区分两个错误源。
【讨论】: