次の操作の後に、どのさまざまなフラグ(キャリー、サイン、ゼロ、オーバーフロー)を設定する必要があるかを判断しようとしています。
mov ax, 7ff0h; ax register is now 7ff0h
add al, 10h;
アセンブリがこれをどのように処理するかについて私は混乱しています。を含むレジスタのal部分だけに追加しているのでf0h
、f0h + 10h
を与え100h
ます。これはオーバーフローフラグを設定しますか?キャリーフラグ?ない?オーバーフローフラグが設定されると思いますが、プログラムがこれを検出し、ahレジスタをから7fh
に自動的に変更80h
してフルax
レジスタを作成することも考えられます8000h
。8000h
これは理論的にはキャリーフラグを設定しませんが、全体の数が負になるため、代わりにサインフラグとオーバーフローフラグを設定します。誰かがこれがどのように処理されるか説明できますか?
ありがとう。