-1

データセグメントでバイトが定義されていると仮定します

DSEG      SEGMENT
    NUM   DB   ?
DSEG      ENDS

では、以下の命令はアドレッシングモードで何を意味するのでしょうか。

LEA     SI, NUM

MOV     NUM, 1AH

NUMはメモリ エントリ (たとえば 1000H) のラベルであるため、最初のものは として解釈され、2 番目のものは として解釈されると想定しMOV SI, [1000]ますMOV [1000], 1AH。そのため、ダイレクト メモリ アドレッシング モードを使用します。私は正しいですか?

4

1 に答える 1

2

いいえ、そうではありません。

は、アドレスLEAを宛先に移動するために使用されます。そのため、ラベルで表されるアドレスは に移動されます。値をレジスタに直接移動しているため、これは即時モードです。NUMSI

byte ptr2 つ目は、またはがありませんが[]、値 0​​x1a を label で表されるメモリ位置に移動しますNUM。で表される生メモリ アドレスを使用しているため、これは直接モードですNUM

于 2016-10-16T18:48:58.010 に答える