2011-12-14 4 views
1

- キャリー・フラグ:キャリーフラグがセットされていないのはなぜアセンブリ - 次のコードでは0xFFで

mov ebx, 0xFF 
add ebx, 1 

ebx = 11111111 
+ = 00000001 
    100000000 
+0

は8ビットではなく32ビットレジスタの各レジスタ、BH又はBL試みます。 –

答えて

14

これは、ebxが32ビットレジスタであるためです。これは値(256)を保持するのに十分な大きさなので、キャリーアウトはありません。

良好試験は次のようになります

mov ebx, 0xFFFFFFFF 
add ebx, 1 
+0

ホー、私には恥ずかしい!私は12分でそれを受け入れる(Stackoverflowの制限) –