Intelの808616ビットフラグレジスタの「OF」フラグと「TF」フラグを直接「設定」または「クリア」するためのアセンブリ命令はありますか?そうでない場合は、どの擬似コードを使用する必要がありますか?
質問する
10009 次
1 に答える
8
http://en.wikipedia.org/wiki/Trap_flag
8086 には、トラップ フラグを直接設定またはリセットする命令はありません。これらの操作は、フラグ レジスタをスタックにプッシュし、トラップ フラグ ビットをプログラマが望むものに変更し、フラグ レジスタをスタックからポップすることによって行われます。トラップ フラグを設定する手順は次のとおりです。
PUSHF ; Push flags on stack
MOV BP,SP ; Copy SP to BP for use as index
OR WORD PTR[BP+0],0100H ; Set TF flag
POPF ; Restore flag Register
トラップ フラグをリセットするには、前のシーケンスの OR 命令を次の命令に置き換えるだけです。
AND WORD PTR[BP+0],0FEFFH
オーバーフロー フラグを設定およびクリアするには、とを置き換え0100H
て同じことができます。0800H
0FEFFh
0F7FFh
TF
設定する前に、何が行われるかを確認してください。それは罠だ。
于 2012-11-17T08:53:31.043 に答える