4

Intel の 80386 16 ビット フラグ レジスタのオーバーフロー フラグを直接読み書きできるアセンブリ命令はありますか? そうでない場合、どの疑似コードを使用する必要がありますか?

4

3 に答える 3

8

オーバーフロー フラグのみを読み取るには、次のようにします。

SETO AL
; AL now contains 1 if the overflow flag was set, and 0 if it wasn't


オーバーフロー フラグを反転するには:

PUSHF
POP    AX
XOR    AX,800h  ; The overflow flag is in bit 11
PUSH   AX
POPF
于 2013-03-13T15:38:02.440 に答える
1

フラグを に読み込むにはAX:

pushf
pop ax

フラグを書き込むには: 特定のビットを設定/クリアする必要がある場合は、(stc/clcキャリー フラグ用)、std/cld(方向用) などのコマンドがあります。しかし、ビットはこのように公開されません。フラグレジスタ全体を書き込むには、次を使用します

push ax
popf
于 2013-03-13T15:56:38.383 に答える
0

使用する

Pushf
// modify or read ax register
Popf
于 2013-03-13T15:19:49.003 に答える