数据传送类指令(7种助记符)
MOV(Move)
对内部数据寄存器RAM和特殊功能寄存器SFR的数据进行传送
MOVC(Move Code)
读取程序存储器数据表格的数据传送
MOVX (Move External RAM)
对外部RAM的数据传送
XCH (Exchange)
字节交换
XCHD (Exchange low-order Digit)
低半字节交换
PUSH (Push onto Stack)
入栈
POP (Pop from Stack)
出栈
算术运算类指令(8种助记符)
ADD(Addition)
加法;
ADDC(Add with Carry)
带进位加法;
SUBB(Subtract with Borrow)
带借位减法;
DA(Decimal Adjust)
十进制调整;
INC(Increment)
加1;
DEC(Decrement)
减1;
MUL(Multiplication、Multiply)
乘法;
DIV(Division、Divide)
除法
逻辑运算类指令(10种助记符)
ANL(AND Logic)
逻辑与;
ORL(OR Logic)
逻辑或;
XRL(Exclusive-OR Logic)
逻辑异或;
CLR(Clear)
清零;
CPL(Complement)
取反;
RL(Rotate left)
循环左移;
RLC(Rotate Left throught the Carry flag)
带进位循环左移;
RR(Rotate Right)
循环右移;
RRC (Rotate Right throught the Carry flag)
带进位循环右移;
SWAP (Swap)
低4位与高4位交换;
控制转移类指令(17种助记符)
ACALL(Absolute subroutine Call)
子程序绝对调用;
LCALL(Long subroutine Call)
子程序长调用;
RET(Return from subroutine)
子程序返回;
RETI(Return from Interruption)
中断返回;
SJMP(Short Jump)
短转移;
AJMP(Absolute Jump)
绝对转移;
LJMP(Long Jump)
长转移;
CJNE (Compare Jump if Not Equal)
比较不相等则转移;
DJNZ (Decrement Jump if Not Zero)
减1后不为0则转移;
JZ (Jump if Zero)
结果为0则转移;
JNZ (Jump if Not Zero)
结果不为0则转移;
JC (Jump if the Carry flag is set)
有进位则转移;
JNC (Jump if Not Carry)
无进位则转移;
JB (Jump if the Bit is set)
位为1则转移;
JNB (Jump if the Bit is Not set)
位为0则转移;
JBC(Jump if the Bit is set and Clear the bit)
位为1则转移,并清除该位;
NOP (No Operation)
空操作
位操作指令(1种助记符)
SETB(Set Bit) 位 置1