direct:直接寻址方式符号,内部RAM地址:00H~7FH
SFR:特殊功能寄存器,PSW/ P0/ P1/ P2/ P3/ ACC/ B/ SP/ DPH/ DPL
SP/ DPH/ DPL不可以位寻址
Rn:R0~R7
@Ri:@R0,@R1
#data:指令中的8位二进制码立即数
#data 16:指令中的16位二进制码立即数
立即数:是直接数字不是地址,direct是直接地址不是数字
addr 16:16位二进制地址码
addr 11:11位二进制地址码
rel:带符号的8位二进制偏移量符号
DPTR:16位数据指针寄存器,由两个8位特殊功能寄存器DPL(低8位)和DPH(高8位)组成
MOV 一般传送类指令
MOV DPTR, #data
MOV Rn, #data/ A/ direct
MOV @Ri, #data/ A/ direct
MOV A, #data/ Rn/ @Ri/ direct
MOV direct, #data/ A/ Rn/ @Ri/ direct
ADD/ ADDC/ SUBB, ANL/ ORL/ XRL 加法指令/ 减法指令/ 逻辑运算指令
ADD/ ADDC/ SUBB A, #data/ Rn/ @Ri/ direct
ANL/ ORL/ XRL A, #data/ Rn/ @Ri/ direct
ANL/ ORL/ XRL direct, #data/ A
分别是加法指令、带进位加法指令(对多字节加法运算提供了方便)、常借位减法指令、逻辑“与”运算指令、逻辑“或”运算指令、逻辑“异或”运算指令
XCH/ XCHD 字节交换指令/ 半字节交换指令
XCH A, Rn/ @Ri/ direct
XCHD A, @Ri
XCHD低4位互换
MUL/ DIV 乘法指令/ 除法指令
MUL AB
DIV AB
PUSH/ POP 压栈指令/ 弹出指令
PUSH direct
POP direct
将直接寻址的单元内容压入堆栈保存
SWAP/ CLR/ CPL/ RL/ RLC/ RR/ RRC 互换、清零、取反、移位循环指令
SWAP/ CLR/ CPL/ RL/ RLC/ RR/ RRC A
分别是高低4位互换指令、内容清零指令、内容取反指令、循环左移指令、带进位的循环左移指令、循环右移指令、带进位的循环右移指令
INC/ DEC 加1指令/ 减1指令
INC Rn/ @Ri/ direct/ DPTR
DEC Rn/ @Ri/ direct
SJMP/ AJMP/ LJMP/ JZ/ JNZ 转移指令
SJMP/ AJMP/ LJMP/ JZ/ JNZ 标号
相对转移指令、绝对无条件转移指令、无条件长转移指令、判“0”转移指令
ACALL/ LCALL 绝对调用指令/ 长调用指令
ACALL/ LCALL 程序入口
RET/ RETI 子程序返回指令/ 终端服务子程序返回指令
RET/ RETI ;中断返回
CJNE/ DJNZ 比较转移指令/ 循环转移指令
“唯一的三字节指令CJNE”
CJNE A, direct, rel
CJNE Rn, #data, rel
CJNE @Ri, #data, rel
CJNE A, #data, rel
DJNZ Rn, rel
DJNZ direct, rel
NOP 空操作指令
MOVX 访问外部数据存储器
MOVX A, @DPTR;读
MOVX @DPTR, A;写
MOVX A, @Ri;Ri低8位地址
MOVX @Ri, A;高8位地址由P2提供
MOVC 读程序存储器内容
MOVC A, @A+PC
MOVC A, @A+DPTR