当前位置:
文档之家› MCS-51单片机汇编指令操作码助记符和英文全称对照
MCS-51单片机汇编指令操作码助记符和英文全称对照
寻址方式及相关的存储空间:
寻址方式
寻址范围
寄存器寻址 直接寻址
R0~R7 A 、B、C(CY)、AB(双字节)、DPTR(双字节)、PC(双字节) 内部 RAM 低 128 字节 特殊功能寄存器
内部 RAM 位寻区的 128 个位 特殊功能寄存器中可寻址的位
寄存器间接寻址 立即寻址
内部数据存储器 RAM【@R0,@R1,@SP(仅 PUSH,POP)】 内部数据存储器单元的低 4 位(@R0,@R1) 外部 RAM 或 I/O 口(@R0,@R1,器加变址 寄存器间接寻址
程序存储器(@A+PC,@A+DPTR)
特殊功能寄存器只能采用直接寻址,而内部 RAM 高 128 字节只能采用寄存器间接寻 址。目的操作数不能采用立即寻址,@Ri 中的 i 范围为 0 和 1,@Rn 中的 n 范围为 0~7,每 条指令中最多只能有 1 个 Rn 或者@Ri。下面的都是错的:
寄存器间接寻址使用当前工作寄存器区中 R0 或 R1 作地址指针(堆栈操作指令用栈指 针 SP)来寻址内部 RAM(00H~0FFH)。寄存器间接寻址也适用于访问外部扩展的数据存储 器,用 R0、R1 或 DPTR 作为地址指针。寄存器间接寻址用符号@表示。
相对寻址方式以 PC 的内容作为基地址,加上指令中给定的偏移量,所得结果送 PC 寄 存器作为转移地址。应注意偏移量是有符号数,在-128~+127 之间。
MOVe MOVe Cod MOVe eXternal PUSH POP eXCHange eXCHange Decimal ADD ADD with Carry SUBbtract with Borrow INCrement DECrement MULtiply DIVide Decimal Adjust Logical And Logical OR Logical eXclusive- oR ComPLement CLeaR SET Bit Rotate Left Rotate Right Rotate Left through the Carry flag Rotate Right through the Carry flag SWAP Absolute JuMP Long JuMP Short JuMP JuMP JuMP if acc is Zero JuMP if acc is not Zero JuMP if Carry(if Cy=1) JuMP if Not Carry(if Cy=0) JuMP if Bit is set(if Bit=1) JuMP if Not Bit (if Bit=1) JuMP if Bit is set and Clear bit Compare and Jump if Not Equal Decrement and Jump if Not Zero Absolute CALL Long CALL RETurn RETurn from Interrupt No OPeration
MCS-51 单片机汇编指令操作码助记符和英文全称对照表
MOV MOVC MOVX PUSH POP XCH XCHD ADD ADDC SUBB INC DEC MUL DIV DA ANL ORL XRL CPL CLR SETB RL RR RLC RRC SWAP AJMP LJMP SJMP JMP JZ JNZ JC JNC JB JNB JBC CJNE DJNZ ACALL LCALL RET RETI NOP
直接寻址方式访问以下三种存储空间:
1. 特殊功能寄存器(只能用直接寻址方式访问)。 2. 内部 RAM 的低 128 字节(对于 8032/8052 等单片机,其内部高 128 字节 RAM(80H~0FFH)
不能用直接寻址方式访问,而只能用寄存器间接寻址方式访问)。 3. 位地址空间。
寄存器间接寻址方式是由指令指出某一个寄存器的内容作为操作数的地址。(寄存器的 内容不是操作数,而是操作数所在的存储器地址。)
传送 代码传送 外部传送 压栈 退栈 交换 十进制交换 加 带进位加 带进位减 增量 减量 乘 除 十进制调整 逻辑与 逻辑或 逻辑异或 求补 清除 置位 循环左移 循环右移 带进位循环左移 带进位循环右移 (半字节)互换 短跳转(转移) 长跳转 相对转移 跳转 累加器为零转移 累加器不为零转移 进位位为 1 转移 进位位为零转移 指定位为 1 转移 指定位为零转移 指定位等于 1 转移并清该位 比较不相等转移 减 1 不为零转移 短调用 长调用 子程序返回 中断返回 空操作
MOV #30H 40H MOV A @R2