主题:求助,一个关于直接寻址的问题
全部代码如下:
问题:为何第19行即 MOV AL,[2002H] 编译时提示出错,可是书上有这种用法
DATA SEGMENT
ORG 2000H
DAT DB 'A','B','C','D','E','F','G'
DATA ENDS
STAK SEGMENT PARA STACK
DW 100 DUP(?)
STAK ENDS
CODE SEGMENT
ASSUME CS:CODE,DS:DATA,SS:STAK
START: MOV AX,DATA
MOV DS,AX
MOV AL,'A'
CALL DISPCRLF
MOV BL,'B'
MOV AL,BL
CALL DISPCRLF
MOV AL,[2002H]
CALL DISPCRLF
MOV BX,2003H
MOV AL,[BX]
CALL DISPCRLF
MOV AL,01H[BX]
CALL DISPCRLF
MOV DI,02H
MOV AL,[BX][DI]
CALL DISPCRLF
MOV AL,01H[BX][DI]
CALL DISPCRLF
MOV AH,4CH
INT 21H
DISPCRLF PROC NEAR
MOV AH,2
MOV DL,AL
INT 21H
MOV DL,0DH
INT 21H
MOV DL,0AH
INT 21H
RET
DISPCRLF ENDP
CODE ENDS
END START
问题:为何第19行即 MOV AL,[2002H] 编译时提示出错,可是书上有这种用法
DATA SEGMENT
ORG 2000H
DAT DB 'A','B','C','D','E','F','G'
DATA ENDS
STAK SEGMENT PARA STACK
DW 100 DUP(?)
STAK ENDS
CODE SEGMENT
ASSUME CS:CODE,DS:DATA,SS:STAK
START: MOV AX,DATA
MOV DS,AX
MOV AL,'A'
CALL DISPCRLF
MOV BL,'B'
MOV AL,BL
CALL DISPCRLF
MOV AL,[2002H]
CALL DISPCRLF
MOV BX,2003H
MOV AL,[BX]
CALL DISPCRLF
MOV AL,01H[BX]
CALL DISPCRLF
MOV DI,02H
MOV AL,[BX][DI]
CALL DISPCRLF
MOV AL,01H[BX][DI]
CALL DISPCRLF
MOV AH,4CH
INT 21H
DISPCRLF PROC NEAR
MOV AH,2
MOV DL,AL
INT 21H
MOV DL,0DH
INT 21H
MOV DL,0AH
INT 21H
RET
DISPCRLF ENDP
CODE ENDS
END START