0FFh + 1
|
00h – 1
|
00h – 1
|
INCLUDE Irvine32.inc .data X SWORD 12FFh .code main PROC movsx ebx, X inc bl call DumpRegs jz L1 call WaitMsg L1: mov X, bx movsx eax, X call WriteHex exit main ENDP END main |
INCLUDE Irvine32.inc .data X SWORD 0FF00h .code main PROC movsx ebx, X dec bl call DumpRegs mov X, bx js L1 call WaitMsg L1: movsx eax, X call WriteHex exit main ENDP END main |
INCLUDE Irvine32.inc .data X SWORD 0FF00h .code main PROC movsx ebx, X sub bl, 1 call DumpRegs mov X, bx js L1 call WaitMsg L1: movsx eax, X call WriteHex exit main ENDP END main |
| Output | Output | Output |
[X + 1] + 1
|
0FF0Fh + 1
|
0101h + 1
|
INCLUDE Irvine32.inc .data X SWORD 0FF00h .code main PROC add X+1, 1 call DumpRegs jz L1 call WaitMsg L1: movsx eax, X call WriteHex exit main ENDP END main |
INCLUDE Irvine32.inc .data Dummy WORD ? .code main PROC mov bx, 0FF0Fh add bl, 1 call DumpRegs lahf test ah, 00010000b jz L1 call WaitMsg L1: movsx eax, bx call WriteHex exit main ENDP END main |
INCLUDE Irvine32.inc .data Dummy WORD ? .code main PROC mov bx, 0101h add bx, 1 call DumpRegs jp L1 call WaitMsg L1: movsx eax, bx call WriteHex exit main ENDP END main |
| Output | Output | Output |
|
“I’m not arguing, I’m just explaining why I’m right.” ― Unknown |