救命稻草悠悠
幼苗
共回答了16个问题采纳率:87.5% 举报
ORG伪指令的功能: 告诉编译器下一条汇编语句的偏移地址
ORG 2000H ;告诉编译器下一条汇编语句的偏移地址为2000H
所以 NUM1 的 偏移地址是2000H
NUM1 DB 200,2 DUP(1,2), 'ABC'的占据的内存是
ds:2000 c8 01 02 01 02 41 42 43 共占据了8个字节
所以,NUM2的地址为2008H
NUM2 DW 12, '9', 1234H,5678H 占据的内存是
ds:2008 0c 00 39 00 34 12 78 56 共8个字节
CNT EQ $-NUM2 这条语句想表达的意思就是计算NUM2的长度(占据多少个字节)
所以CNT 的值是8
LEA 的功能: 取源操作数的偏移地址 赋值给 目的操作数中
LEA BX,NUM1 ;这条语句的意思是取NUM1的偏移地址给BX
所以现在BX的值是2000H
ADD BX,CNT ;将BX和CNT的值相加,然后将结果出入BX
因为BX = 2000H,CNT = 8 ,所以BX = 2000H + 8 = 2008H
MOV AL,BYTE PTR NUM2+2 ;取NUM2+2的值(字节)赋值给AL
首先,NUM2 = 2008H,NUM2+2 = 2010H,而2010H存放的值是39H
所以AL = 39H
终上所述
1.寄存器BX的值是_2008H___,寄存器AL的值是__39H_____。
2.$这个符号是什么作用,该如何理解?
答: 这个符号我理解是一个指针
如有不明白的地方,可以追问
1年前
4