新手汇编程序出错,求大神帮忙
DATAS SEGMENT
DAT1 DB 65H
DAT2 DB ?
DAT3 DB ?
DATAS ENDS
STACKS SEGMENT
STACKS ENDS
CODES SEGMENT
ASSUME CS:CODES,DS:DATAS,SS:STACKS
START:
MOV AX,DATAS
MOV DS,AX
LEA SI,DAT1
MOV AL,[SI]
CMP AL,99
JBE BCD
LEA DI,DAT3
MOV [DI],0FFH
JMP EXIT
BCD:
CBW
MOV CL,10
DIV CL
MOV CL,4
SHL AL,CL
OR AL,AH
LEA DI,DAT2
MOV [DI],AL
EXIT:
MOV AH,4CH
INT 21H
CODES ENDS
END START
编译之后该行MOV [DI],0FFH出错,
错误提示是invalid instruction operands
还有求解释一下MOV [DI],0FFH是什么意思? 汇编
[解决办法]
额,程序太长,没看完,应该是类型问题,MOV [DI],0FFH,是把offh值传给ds:[di]内存单元。
而编译器不知道是对一个字节处理呢还是字处理,这样试下mov byte ptr【di】,0ffh