我正在尝试了解一些跳转命令
edx有-126,eax有+127
cmp edx, eax
ja short <offset>
它说明了跳转,现在我明白它基于标志设置,我没有得到的是数学如何有意义,例如,如果我们有一个JZ命令,结果是相等的那么显然跳跃将是拍摄。从我的理解cmp命令从源中减去目的地,在这种情况下,它将-126添加127,结果是1,我只是没有得到什么MATH结果触发标志?我只想知道
答案 0 :(得分:2)
ja
表示如果未签名上方(CF=0
和ZF=0
)则跳转。签名值的相应指令是jg
。
32位值-126是0xFFFFFF82,当看作无符号值时,显然大于127(0x7F)。