2013-01-25 51 views
1

我有这个非常简单的汇编代码:装配,检测溢出的寄存器

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

,但我不知道如何检测AX寄存器溢出,谁能帮助我?

回答

7

ADD指令将适当FLAGS反映了溢出条件。有两种溢出:有符号和无符号。你必须决定什么是合适的,并且使用jc/jnc作为未签名的,使用jo/jno作为已签名的。

add ax, 100 
jnc noUnsignedOverflow 
... 
noUnsignedOverflow: 

add ax, 100 
jno noSignedOverflow 
... 
noSignedOverflow: