【发布时间】:2012-10-23 10:37:21
【问题描述】:
在我的程序中,一个十六进制数除以十并检查余数。
第一师表现不错;然而,在第二次划分之后,程序出错了。我是组装新手,找不到问题出在哪里...
这里是代码段:
ORG 1000
MOV AX, 0x04B4 (1204 decimal value )
MOV BX, 0x000A ( 10 decimal value )
MOV CX, 0x0000
DIV BX ( After this part, AX is 120 decimal and DX 4 decimal )
CMP DX, 0x0000
JE eq1
ADD CX, 0x0002
JMP con1
eq1: ADD CX, 0x0001
con1:
DIV BX ( But, after this division AX becomes 6677 ( 26231 decimal and DX remains 4 decimal )
CMP DX, 0x0000
感谢您的帮助!
【问题讨论】:
-
这可能是最常见的装配问题。就不能做点什么吗?如果您提出一个新问题,建议框主要包含“整数除法没有返回浮点数,我很困惑”形式的问题和“我忘记
div是双宽”形式的问题并没有真正出现。