重要指令符号: Rn:当前工作寄存器组中的R0~R7 Ri :当前工作寄存器组中的R0,R1 rel:相对偏移量(在相对转移指令中使用,位一字节补码) 寻址方式 七种分别是立即寻址、直接寻址、寄存器寻址、寄存器间接寻址、变址寻址、相对寻址、位寻址 立即寻址:指令直接给出操作数的寻址方式; exm:MOV A,#80H 直接寻址:指令直接给出操作数所在的地址的寻址方式;00H~7FH、片内RAM低128B和SFR; exm:MOV P0,#45H 寄存器寻址:以通用寄存器的内容为操作数的寻址方式,通用寄存器包括A,BDPTR,R0~R7; exm:MOV A,R0 寄存器间接寻址:以寄存器中的内容为地址,该地址中的内容为操作数的寻址方式,能用间接寻址的寄存器有R1、R0、DPTR exm:MOV @R0,A 变址寻址: exm:MOVX A,@A+DPTR 相对寻址: 位寻址:对位地址中的内容作位操作的寻址方式 exm:MOV 32H,C
指令 数据传输与交换指令: MOV:内部RAM和SFR间的传送指令 例:MOV A,R1
MOVX:外部数据存储器和A累加器之间的传送 MOVC:程序存储器和A累加器之间的传送 外部数据存储器及程序存储器只能和A之间进行传送而不能与内部RAM和SFR之间进行传送 例: 访问外部数据存储器指令: MOVX @Ri,A MOVX A,@Ri 访问程序存储器指令,数据存储器只能读不能写:MOVX A,@A+PC
堆栈操作: PUSH:入栈操作 例:PUSH dir ;SP+1->SP,(dir)->(SP) POP:出栈操作 例:POP dir ;(dir)->(SP),SP+1->SP
交换指令: XCH:字节交换指令 例:XCH A,Rn ;A的内容和Rn的内容进行交换 XCHD:低半字节交换 例:XCHD A,Rn ;A的低四位和Rn的低四位 交换 SWAP:A的高低半字节交换 例:SWAP A ;A的低四位与高四位进行交换