DATA SEGMENT
DATA ENDS
CODE SEGMENT
ASSUME CS:CODE,DS:DATA
ORG 2000H
START: MOV BX,4000H
MOV AL,[BX] 。。。。。。。。。。。。。问,BX不是16位的么?AL,AH不是8位的么?为什么可以把16的内容送到8位的寄存器呢?是不是我哪里理解错了,求解
MOV AH,AL
MOV CL,4
SHR AH,CL
INC BX
MOV [BX],AH
AND AL,0FH
INC BX
MOV [BX],AL
MOV AH,4CH
INT 21H
CODE ENDS
END START
汇编
------解决方案--------------------
MOV AL, [BX] 指令不是将 BX 的内容传送给 AL ,而是将 BX 里的内容作为一个内存地址,将那个内存处的内容传递给 AL ,所以 AL 是多少位,就从那个内存处传送多少位的数据过来。