Моя книга и большинство источников показывают, что когда флаг переноса изменяется с 0 на 1, но я не понимаю, почему регистр EFL изменяет значения гораздо большими приращениями, как показано ниже: я помещаю комментарии, показывающие изменение значения регистра. как при переходе от 0 к 1 и обратно к 0 до -1.
mov eax , 0FFFFFFFFh
add eax , 1 ;flag from A12 to 257
inc eax ; flag to 203
neg eax ; flag to 297
inc eax ; flag to 257
dec eax ; flag to 297
inc eax ; flag to 257
dec eax ; flag to 297
mov ebx , 0 ;flag doesnt move
sub ebx , 1 ;flag doesnt move
inc ebx ; flag move to 257
dec ebx ; flag move to 297
dec eax ; flag to 283
mov ebx , 0 ;flag doesnt move
sub ebx , 1 ;flag to 297
mov eax , 00FFFFFFFh ;flag doesnt move
add eax , 1 ;flag to 216
mov ebx , 0Fh ;flag doesnt move
sub ebx , 1 ;flag to 202