0

こんにちは、アセンブリx86にこのコードがあります

L1:
    mov edx, OFFSET prompt1
    call writeString
    call readHex
    JO L1

入力した符号なし 16 進数が 16 ビットより大きいかどうかを確認しようとしています。たとえば、ffffffffff を入力すると、ax ではオーバーフローが発生しますが、eax では発生しませんが、16 進数で保存された結果が eax に読み込まれます。 JO 命令は L1 ループを繰り返さないのですが、オーバーフロー フラグを設定するために ax だけをチェックするにはどうすればよいですか?

少し早いですがお礼を

4

1 に答える 1

0

オーバーフローは、ax から ax または eax から eax を実行している場合にのみ機能します。

eax to axを実行しているため、cmpが必要です

于 2013-05-16T09:45:48.923 に答える