序号助记符MOVMOVMOVMOVMOVMOVMOVMOVMOVMOVMOVMOVMOVMOVMOVMOVMOVCMOVCMOVXMOVXMOVXMOVXPUSHPOPXCHXCHXCHXCHDINCINCINCINCINCDECDECDECDECMULDIVDAADDADDADDADDADDCADDCADDCADDCSUBBSUBBSUBBSUBBA,RnA,directA,@RiA,#dataRn,ARn,directRn,#datadirect,Rndirect,directdirect,Adirect,@Ridirect,#data@Ri,A@Ri,direct@Ri,#dataDPTR,#data16A,@A+DPTRA,@A+PCA,@RiA,@DPTR@Ri,A@DPTR,AdirectdirectA,RnA, directA, @RiA, @RiARndirect@RiDPTRARndirect@RiABABAA,RnA,directA,@RiA,#dataA,RnA,directA,@RiA,#dataA,RnA,directA,@RiA,#dataAA1A2A3A4A5A6A7A8A9A10A11A12A13A14A15A16A17A18A19A20A21A22A23A24A25A26A27A28BB1B2B3B4B5B6B7B8B9B10B11B12B13B14B15B16B17B18B19B20B21B22B23B24指令说明(数据传递类指令)寄存器传送到累加器直接地址传送到累加器累加器传送到外部RAM(8 地址)立即数传送到累加器累加器传送到寄存器直接地址传送到寄存器累加器传送到直接地址寄存器传送到直接地址直接地址传送到直接地址累加器传送到直接地址间接RAM 传送到直接地址立即数传送到直接地址直接地址传送到直接地址直接地址传送到间接RAM立即数传送到间接RAM16 位常数加载到数据指针代码字节传送到累加器代码字节传送到累加器外部RAM(8 地址)传送到累加器外部RAM(16 地址)传送到累加器累加器传送到外部RAM(8 地址)累加器传送到外部RAM(16 地址)直接地址压入堆栈直接地址弹出堆栈寄存器和累加器交换直接地址和累加器交换间接RAM 和累加器交换间接RAM 和累加器交换低4 位字节(算术运算类指令)累加器加1寄存器加1直接地址加1间接RAM 加1数据指针加1累加器减1寄存器减1直接地址减1间接RAM 减1累加器和B 寄存器相乘累加器除以B 寄存器累加器十进制调整寄存器与累加器求和直接地址与累加器求和间接RAM 与累加器求和立即数与累加器求和寄存器与累加器求和(带进位)直接地址与累加器求和(带进位)间接RAM 与累加器求和(带进位)立即数与累加器求和(带进位)累加器减去寄存器(带借位)累加器减去直接地址(带借位)累加器减去间接RAM(带借位)累加器减去立即数(带借位)字节数周期数12121222322312231111112212111121111211111212121212121111121121222121222222221111111121121441111111111111CC1C2C3C4C5C6C7C8C9C10C11C12C13C14C15C16C17C18C19C20C21C22C23C24C25DD1D2D3D4D5D6D7D8D9D10D11D12D13D14D15D16D17ANLANLANLANLANLANLORLORLORLORLORLORLXRLXRLXRLXRLXRLXRLCLRCPLRLRLCRRRRCSWAPJMPJZJNZCJNECJNECJNECJNEDJNZDJNZNOPACALLLCALLRETRETIAJMPLJMPSJMPA,RnA,directA,@RiA,#datadirect,Adirect, #dataA,RnA,directA,@RiA,#datadirect,Adirect, #dataA,RnA,directA,@RiA,#datadirect,Adirect, #dataAAAAAAA@A+DPTRrelrelA,direct,relA,#data,relRn,#data,rel@Ri,#data,relRn,reldirect,reladd11add16add11add16rel(逻辑运算类指令)寄存器“与”到累加器直接地址“与”到累加器间接RAM“与”到累加器立即数“与”到累加器累加器“与”到直接地址立即数“与”到直接地址寄存器“或”到累加器直接地址“或”到累加器间接RAM“或”到累加器立即数“或”到累加器累加器“或”到直接地址立即数“或”到直接地址寄存器“异或”到累加器直接地址“异或”到累加器间接RAM“异或”到累加器立即数“异或”到累加器累加器“异或”到直接地址立即数“异或”到直接地址累加器清零累加器求反累加器循环左移带进位累加器循环左移累加器循环右移带进位累加器循环右移累加器高、低4 位交换(控制转移类指令)相对DPTR 的无条件间接转移累加器为0 则转移累加器为1 则转移比较直接地址和累加器,不相等转移比较立即数和累加器,不相等转移比较寄存器和立即数,不相等转移比较立即数和间接RAM,不相等转移寄存器减1,不为0 则转移直接地址减1,不为0 则转移空操作,用于短暂延时绝对调用子程序长调用子程序从子程序返回从中断服务子程序返回无条件绝对转移无条件长转移无条件相对转移121223121223121223111111112233233312311232111112211111211111211111122222222212222222EE1E2E3E4E5E6E7E8E9E10E11E12E13E14E15E16E17FF1F2F3F4F5F6F7F8GG1G2G3G4G5G6G7G8G9G10G11CLRCLRSETBSETBCPLCPLANLANLORLORLMOVMOVJCJNCJBJNBJBCORGDBDWEQUDATAXDATABITENDCbitCbitCbitC,bitC,/bitC,bitC,/bitC,bitbit, Crelrelbit,relbit,relbit,rel(布尔指令)清进位位清直接寻址位置位进位位置位直接寻址位取反进位位取反直接寻址位直接寻址位“与”到进位位直接寻址位的反码“与”到进位位直接寻址位“或”到进位位直接寻址位的反码“或”到进位位直接寻址位传送到进位位进位位位传送到直接寻址如果进位位为1 则转移如果进位位为0 则转移如果直接寻址位为1 则转移如果直接寻址位为0 则转移直接寻址位为1 则转移并清除该位(伪指令)1212122222222233211111122221222222指明程序的开始位置定义数据表定义16 位的地址表给一个表达式或一个字符串起名给一个8 位的内部RAM 起名给一个8 位的外部RAM 起名给一个可位寻址的位单元起名指出源程序到此为止(指令中的符号标识)Rn工作寄存器R0-R7Ri工作寄存器R0 和R1@Ri间接寻址的8 位RAM 单元地址(00H-FFH)#data88 位常数#data1616 位常数addr1616 位目标地址,能转移或调用到KROM 的任何地方addr1111 位目标地址,在下条指令的2K 范围内转移或调用Rel8 位偏移量,用于SJMP 和所有条件转移指令,范围-128~+127Bit片内RAM 中的可寻址位和SFR 的可寻址位Direct直接地址,范围片内RAM 单元(00H-7FH)和80H-FFH$指本条指令的起始位置