汇编语言,检测溢出寄存器。

4

我有这段非常简单的汇编代码:

start:
add ax, 100    
; if ax overflow add to bx 1
jmp start

但是我不知道如何检测ax寄存器溢出,有谁能帮我吗?

2个回答

11

ADD 指令会设置适当的 FLAGS 标志,以反映溢出条件。有两种类型的溢出:有符号和无符号。您需要决定哪种情况合适,并对于无符号使用 jc/jnc,有符号使用 jo/jno

add ax, 100
jnc noUnsignedOverflow
...
noUnsignedOverflow:

add ax, 100
jno noSignedOverflow
...
noSignedOverflow:

4

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接