keil编程提示undefined symbol

ORG 0000H
SJMP MAIN
ORG 0050H
MAIN: MOV R7,#8
MOV R0,#20H
MOV DPTR,#TAB
LOOP1: CLR A
MOVC A,@A+DPTR
MOV @R0,A
INC DPTR
INC R0
DJNZ R7,LOOP1

MOV R7,#8
MOV R0,#20H
MOV R1,#30H
LOOP2: MOV A,@R0
LCALL H2ASC
MOV @R1,A
INC R1
MOV A,@R0
SWAP A
LCALL H2ASC
MOV @R1,A
INC R0
DJNZ R7,LOOP2
SJMP $
H2ASC: ANL A,#0FH
MOVC A,@A+DPTR
RET
TAB: DB 01H,23H,45H,67H,89H,ABH,CDH,EFH
DB "0123456789ABCDEF"
END

倒数第三行改为
TAB: DB 01H,23H,45H,67H,89H,0ABH,0CDH,0EFH
即可
字母开头的常数前面不加0的话,编译器会认为是符号(symbol)
那几个符号系统没看到定义,所以报错 说 未定义符号undefined symbol
温馨提示:答案为网友推荐,仅供参考
相似回答