編集:自分の質問に答えました。下記参照。-_-
次のように .data セグメントで定義された変数があります。
retVal DW 0100h ;stores hex fraction of the intermediate value. Starts at 1.00
これは、戻り値を取得するために加算または減算する値です。
コード セグメントに最初に表示されるのは、次の時点です。
sub [retVal], ax ;
デバッガーを使用しましたが、この操作の時点で ax レジスターが 0000h であることを確認できます。
それでも、その直前に次のコード行を追加すると:
mov dx, 0100h;
mov [retVal], 0100h;
私はまったく異なる値を取得します(これも間違っています)。私はかなり困惑しています。ここで変数を根本的に誤用していますか? 変数が最初に初期化された (まだ変更されていない) 同じ値をロードすると、結果が変わる理由がわかりません。
何か案は?それができない場合、CodeView を介して変数の値を追跡する方法を教えてもらえますか? (私が使っている DOSBox デバッガー)