汇编语言程序设计的几个题目
P65第一题, VAR1 DW 1234H 89 ,255,-2,-0AH 以字为单位 存储
VAR2 DB 34,78H,44,22,19,-12 以字节为单位
.
.
.
MOV AH ,23H 将23H 移动到 AH
LEA BX,VAR1+4 LEA近地址写入寄存器,在VAR1+4的地址数(-0AH吗?)移动到BX
MOV AL,BYTE PTR [BX+1] PTR是什么意思不太了解,命令符号多了就搞不清楚了,把BX+1地址下的内容送到AL
MOV SI,WORD PTR VAR2+3 VAR2+3的数值22送到SI
程序段执行后AX=_____,SI=____ 答案 23FFH 1316H 现在的题目感觉更难了!后面的中文为我自己的理解有错误的帮忙指出谢谢!一点都不明白他的答案是怎么出来的!
第二题, BUF DW 1,0,0AB1CH,582H,9,3A04H,9,0
LEA DI,BUF 把BUF的第一个地址放入DI
MOV CX,8 8放如CX
MOV AX,9 9放入AX
REPNZ SCASW 不懂这句
JNZ K1 结果不为零直接跳转到K1
SUB DI,OFFSET BUF OFFSET是偏移量什么DI下的数字减去BUF?
MOV DX,DI DI的数移动到DX
SUB DI ,OFFSET BUF DI减去BUF
MOV DX,DI DI移动到DX
SHR DX,1 算术右移一位
ADD DL,30H 30H加DL放入DL
MOV AH,2 2移动到AH
INT 21H 显示
K1:....
上述程序执行后:(1)程序完成什么功能?(2)显示输出的是什么值? 老样子文字是我自己的理解当中有几句关键的命令不懂所以感觉完全看不懂!