2011-12-14 46 views
1

在下面的代码:大会 - 进位标志 - 0xFF的

mov ebx, 0xFF 
add ebx, 1 

为什么进位标志没有设置?

ebx = 11111111 
+ = 00000001 
    100000000 
+0

尝试BH或BL,8位寄存器,而不是一个32位寄存器。 – 2011-12-14 19:51:00

回答

14

这是因为ebx是一个32位寄存器。它足够大以保持值(256) - 因此不会执行结果。

一个更好的测试将是:

mov ebx, 0xFFFFFFFF 
add ebx, 1 
+0

何,耻辱我!我会在12分钟内接受它(Stackoverflow的限制) – 2011-12-14 18:30:52