汇编语言编译时提示out of range错误
汇编语言编译时提示out of range错误
DATA SEGMENT
BUF1 DW 5 DUP(?)
BUF2 DW 5 DUP(?)
MYDATA DB 1,2,20,4,5,3,4,40,5,20,5,6,60,6,20,1,2,20,4,20,2,3,10,5,15
DATA ENDS
STACK SEGMENT STACK
DW 5 DUP(?)
STACK ENDS
CODE SEGMENT
ASSUME CS:CODE,DS:DATA,SS:STACK
START:MOV AX,DATA
MOV DS,AX
MOV AX,STACK
MOV SS,AX
LEA SI,BUF1
LEA DI,BUF2
LEA BX,MYDATA
MOV CX,5
AGAIN:XOR AX,AX
MOV AL,[BX]
INC BX
MOV DL,[BX]
INC BX
IMUL DL
PUSH AX
MOV AL,[BX]
INC BX
CBW
MOV DL,[BX]
INC BX
IDIV DL
CBW
PUSH AX
MOV AL,[BX]
INC BX
CBW
XOR DX,DX
SUB DX,AX
POP AX
ADD DX,AX
POP AX
ADD DX,AX
JS IFNE
MOV [SI],DX
MOV AX,[SI]
MOV DL,10
IDIV DL
MOV DL,AL
ADD DL,30H
MOV AH,02H
INT 21H
MOV AX,[SI]
MOV DL,10
IDIV DL
MOV DL,AH
ADD DL,30H
MOV AH,02H
INT 21H
JMP OVER
IFNE:MOV [DI],DX
MOV DL,'-'
MOV AH,02H
INT 21H
MOV AX,[DI]
XOR AX,0FFH
INC AX
MOV DL,10
IDIV DL
MOV DL,AL
ADD DL,30H
MOV AH,02H
INT 21H
MOV AX,[DI]
XOR AX,0FFH
INC AX
MOV DL,10
IDIV DL
MOV DL,AH
ADD DL,30H
MOV AH,02H
INT 21H
OVER:MOV DL,0AH
MOV AH,02H
INT 21H
MOV DL,0DH
MOV AH,02H
INT 21H
INC SI
INC DI
LOOP AGAIN
MOV AH,4CH
INT 21H
CODE ENDS
END START
这是我写的代码,编译时提示out of range by 7 bytes错误,提示错误发生在倒数第五行,就是LOOP错误,什么原因,关键是有什么办法修改吗,