;FILENAME: EXA131.ASM
.486
DATA SEGMENT USE16 ;SEGMENT 拼写错误
SUM DB ?,? ;多一个逗号
MESG DB '25+9='
MESG1 DB 0,0,'$' ;用$作为结束符,用另一个字符串MESG1避免出BX+7
N1 DB 9,0F0H
N2 DW 25
DATA ENDS
CODE SEGMENT USE16
ASSUME CS:CODE, DS:DATA
BEG: MOV AX, DATA
MOV DS, AX
MOV BX, OFFSET SUM
MOV AH, N1
MOV AL, BYTE PTR N2 ;类型不匹配
ADD AH, AL
MOV [BX], AH
MOV DI, OFFSET MESG1
CALL CHANG
MOV AH, 9
MOV DX, OFFSET MESG ;拼写错误 MEST
INT 21H
MOV AH, 4CH
INT 21H
CHANG PROC
LAST: CMP BYTE PTR [BX], 10 ;操作数长度不匹配
JC NEXT
SUB BYTE PTR [BX],10 ;操作数长度不匹配
INC BYTE PTR [DI] ;操作数长度不匹配
JMP LAST
NEXT: MOV AH,SUM ;源和目标操作数都是存储器操作数
ADD [DI+1],AH
ADD BYTE PTR [DI],30H
ADD BYTE PTR [DI+1],30H
RET
CHANG ENDP
CODE ENDS
END BEG
结果: