間接アドレス指定の問題に取り組んでいますが、バイトを正しくカウントする方法がわかりません。次のコードが与えられます。
.data
v1 db 9,7,5,3,1
v2 dw 0
v3 dw -1
v4 db '$'
mov dx,offset v2
mov ah,9
int 21h
この質問は、これらの命令が実行された後に標準出力デバイスに書き込まれるバイト数を尋ね、答えは 4 です。
この問題については、次のように設定しました。
offset 0 1 2 3 4 5 6 7 8 9
data 09 07 05 03 01 00 00 FF FF 24
5 を dx に移動し、2 バイト 00 05 を書き込みます。次に、DOS コードを設定してそれを書き出すので、出力は 2 バイトを書き出して 4 になりますか? 私の論理が間違っている場合は修正してください。