附录211 80C51指令表

合集下载

第3章 80C51单片机的指令系统及编程

第3章 80C51单片机的指令系统及编程

三、指令系统 ~
(1) 数据传送类指令(28条)
数据传送类指令是数据处理的最基本操作,在80C51 单片机中,数据传送类指令占得比重比较大。这类指 令一般不影响程序状态字寄存器PSW的状态。 数据传送类指令可分为:一般传送类指令、查表指
令、片外RAM访问指令、堆栈操作指令和交换指令。 片外RAM访问指令 RAM
CLR C CLR bit CPL C CPL bit SETB C SETB bit 对全部可位寻址区的每一位, 对全部可位寻址区的每一位, 均可直接进行清0、 均可直接进行清 、取反及 置1操作 操作
三、指令系统 ~
(5)位操作类指令(17条)
(3)位逻辑运算指令 条) )位逻辑运算指令(4条
1、无条件转移指令(4条) 无条件转移指令( 2、条件转移指令(8条) 条件转移指令( 3、子程序调用与返回指令(4条) 子程序调用与返回指令( 4、空操作指令(1条) 空操作指令(
三、指令系统 ~
(4)控制转移类指令(17条)
1、无条件转移指令(4条) 无条件转移指令(
三、指令系统 ~
(4)控制转移类指令(17条)
2、条件转移指令(8条) 条件转移指令( (1)累加器判0转移指令(2条) 累加器判0转移指令(
三、指令系统 ~
(2) 比 较 不 相 等 转 移 指 令 条 (4 条)
(4)控制转移类指令(17条)
三、指令系统 ~
(4)控制转移类指令(17条)
2、条件转移指令(8条) 条件转移指令( (3)减1不为0转移指令(2条) 不为0转移指令(
二、寻址方式 ~ 3、寄存器寻址
二、寻址方式 ~ 4、寄存器间接寻址
二、寻址方式 ~ 5、变址寻址
二、寻址方式 ~ 6 、相对寻址

80C51单片机指令系统操作码助记符英语原文和汉语含义

80C51单片机指令系统操作码助记符英语原文和汉语含义

80C51单片机指令系统操作码助记符按功能可分为五大类:对每个助记符给出英语原文和汉语含义。

1)数据传送类指令(7种助记符)MOV:Move,对内部数据寄存器RAM和特殊功能寄存器SFR的数据进行传送。

MOVC:Move Code,读取程序存储器数据表格的数据传送。

MOVX:Move External RAM,对外部RAM的数据传送。

XCH:Exchange,字节交换。

XCHD:Exchange low-order Digit,低半字节交换。

PUSH:Push into Stack,入栈。

POP:Pop from Stack,出栈。

2)算术运算类指令(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,除法。

3)逻辑运算类指令(10种助记符)ANL:And Logic,逻辑与。

ORL:OR Logic,逻辑或。

XRL:Exclusive-OR Logic,逻辑异或。

CLR:Clear,清0。

CPL:Complement,取反。

RL:Rotate left,循环左移。

RLC:Rotate Left through the Carry flag,带进位循环左移。

RR:Rotate Right,循环右移。

RRC:Rotate Right through the Carry flag,带进位循环右移。

SWAP:Swap,低4位与高4位交换。

4)控制转移类指令(18种助记符)ACALL:Absolute subroutine Call,子程序绝对调用。

LCALL:Long subroutine Call,子程序长调用。

80C51特殊功能寄存器表

80C51特殊功能寄存器表

定时器模式
M1 M0 GATE C/T 方式选择 门控开/关 计数/定时 定时/计数器T0 的低8 位 定时/计数器T1 的低8 位 定时/计数器T0 的高8 位 定时/计数器T1 的高8 位
辅助寄存器 P1端口
95H 94H 93H 92H 91H 90H 90H P1.5 P1.4 P1.3 P1.2 P1.1 P1.0 9DH 9CH 9BH 9AH 99H 98H 98H 串行口控制 SCON SM2 REN TB8 RB8 TI RI 多机控制 串行接收允/ 发的第九位 收的第九位 送中断有/ 发 接收中断有/无 串行口数据 SBUF 99H A7H A6H A5H A4H A3H A2H A1H A0H P2端口 P2 A0H P2.7 P2.6 P2.5 P2.4 P2.3 P2.2 P2.1 P2.0 辅助寄存器1 AUXR1 A2H 看门狗复位 WDTRST A6H AFH AEH ADH ACH ABH AAH A9H A8H 中断允许 IE A8H EA - - ES ET1 EX1 ET0 EX0 中断总控 T2 串行口 INT1 T0 INT0 允/禁 允/禁 允/禁 允/禁 允/禁 允/禁 1/0 B7H B6H B5H B4H B3H B2H B1H B0H P3端口 P3 B0H P3.7 P3.6 P3.5 P3.4 P3.3 P3.2 P3.1 P3.0 RD WR T1 T0 INT1 INT0 TXD RXD BFH BEH BDH BCH BBH BAH B9H B8H 中断优先权 IP B8H - - PT2 PS PT1 PX1 PT0 PX0 T2 中行口 T1 INT1 T0 INT0 CFH CEH CDH CCH CBH CAH C9H C8H 定时器2控制 T2CON C8H TF2 EXF2 RCLK TCLK EXEN2 TR2 C/T2 DP/RL2 溢出标志 外部标志 接收时钟使能 发送时钟使能 外部使能 启动标志 定时/计数 捕获/重装 T2OE DCEN 定时器2模式 T2MOD C9H 输出允/禁 计数方式选择 RCAP2L 捕捉寄存器低字节 CAH 捕捉寄存器高字节 RCAP2H CBH T2低字节 TL2 CCH T2高字节 TH2 CDH D7H D6H D5H D4H D3H D2H D1H D0H 程序状态字 D0H PSW CY AC F0 RS1 RS0 OV - P E7H E6H E5H E4H E3H E2H E1H E0H A累加器 ACC E0H ACC.7 ACC.6 ACC.5 ACC.4 ACC.3 ACC.2 ACC.1 ACC.0 F7H F6H F5H F4H F3H F2H F1H F0H B寄存器 B F0H B.7 B.6 B.5 B.4 B.3 B.2 B.1 B.0

第3章 80C51系列单片机指令系统

第3章  80C51系列单片机指令系统

变址寻址示图
内部ROM 内部RAM
3AH 0046H 65H
操作数
寄存器
目的地
3AH 0046H
A
DPTR PC
基址寄存器 0012H
变址寄存器 34H
MOVC A, @A+DPTR
• 6.位寻址方式

80C51具有位处理功能,可以对数据位进行操作。 位寻址指令中应直接使用位地址,它属于直接寻址方式, 因此与直接寻址执行过程基本相同,但参与操作的数据 是1位,而不是8位。
指令一般由两部分组成,即操作码(表示指令的操作功能)和 操作数(参加操作的数据或数据地址)。 •由于计算机只能识别二进制数,所以计算机的指令均由二进制 代码组成。为了阅读和书写方便,常把它写成十六进制形式, 通常称这样的指令为机器指令。
• 机器语言级指令格式: • 1、单字节指令:对于单字节指令有两种情况:一种是 操作码、操作数均包含在这一个字节之内;另一种情况 是只有操作码无操作数;格式为: • 操作码 • 如:“MOV A,R0”所对应的机器语言指令为“E8H”。 • 2、双字节指令:对于双字节指令,均为一个字节是操 作码,一个字节是操作数;格式为: • 操作码 操作数 • 如:“MOV A,20H”所对应的机器语言指令为“E520H”。 • 3、三字节指令:对于三字节指令,一般是一个字节为 操作码,二个字节为操作数;格式为: • 操作码 第一操作数 第二操作数 • 如:“MOV 20H,#46H”所对应的机器语言指令为 “E52046H”。()
• 为了便于记忆和使用,制造厂家对指令系统的每一条指令都 给出了助记符。助记符是根据机器指令不同的功能和操作对 象来描述指令的符号。由于助记符是用英文缩写来描述指令 的特征,因此它不但便于记忆,也便于理解和分类。这种用 助记符形式来表示的机器指令称为汇编语言指令。计算机的 指令一般用汇编语言指令来表示。 • 80C51汇编语言指令格式如下: • [标号:] 操作码 [目的操作数]

80C51单片机指令系统

80C51单片机指令系统

80C51单片机指令汇总程序应用举例例1:MOV A, #60H将立即数60H(源操作数)送入累加器A(目的操作数)中;这是一条双字节指令,机器码为“74H 60H”,源操作数的寻址方式为立即寻址。

例2:MOV DPTR, #1808H将16位立即数1808H送入数据指针DPTR中;这是一条三字节指令,机器码是“90H 18H 08H”。

源操作数的寻址方式也使用立即寻址。

例3:MOV A, 40H将片内RAM40H单元中的内容送入累加器A;源操作数为直接寻址,40H为直接地址。

这是一条双字节指令,机器码是“E5H 40H”。

例4:MOV A, 0F0HMOV A, B以上两条指令功能完全相同,都是将寄存器B的内容送到累加器A中,前一条指令中第二个操作数采用B寄存器的单元地址表示;后一条指令中是直接用B寄存器的名称来表示。

但汇编后的机器码是完全一样的,由两个字节组成:“E5H F0H”。

例5:INC R2将当前工作寄存器R2的内容加1;这是一条单字节指令,机器码是“0AH”,指令中的操作数使用寄存器寻址方式。

该指令的机器码表示为0000 1rrr,其中的rrr与工作寄存器的编号有关,如本例中用到了R2,则rrr=010,指令执行时,会根据当前PSW寄存器中RS1、RS0的状态确定当前工作寄存器区,同时再根据机器码中rrr的值,确定所要访问的是哪一个工作寄存器,最后找到这个工作寄存器所在单元,将其中的内容加1。

例6:MOV A, @R0 ; A←((R0))该指令为单字节指令,机器码为“E6H”,指令中源操作数为间接寻址。

假设R0中的内容是3AH,而3AH单元的内容为37H,则指令的功能是,以R0寄存器的内容3AH为单元地址,把该单元中的内容37H送累加器A。

例7:设(32H)=10H,执行指令:MOV R0, #32HMOV A, @R0执行结果是:(R0)=32H,(A)=10H,(32H)=10H。

80C51指令表

80C51指令表

80C51指令表一、数据传送指令MOV A,Rn ; (Rn)→AMOV A,direct ; (direct)→AMOV A,@Ri ; ((Ri))→AMOV A,#data ; #data→AMOV Rn,A ; (A)→ RnMOV Rn,direct ; (direct)→ RnMOV Rn,#data ; #data→ RnMOV direct,A ; (A)→directMOV direct,Rn ; (Rn)→directMOV direct1,direct2 ; (direct1)→direct2MOV direct,@Ri ; ((Ri))→directMOV direct,#data ; #data→directMOV @Ri,A ; ((Ri))→AMOV @Ri,direct ; (direct)→(Ri)MOV @Ri,#data ; #data→ ((Ri))MOV DPTR,#data16 ; dataH→ DPH,data → LDPL MOVX A,@DPTR ; ((DPTR))→AMOVX @DPTR,A ; (A)→(DPTR)MOVX A,@Ri ; ((Ri))→AMOVX @Ri,A ;(A) →(Ri)MOVC A,@A+PC ; (PC)+1→PC,((A)+(PC))→ A MOVC A,@A+DPTR ; (A)+(DPTR)→APUSH direct ; (SP)+1 → SP,(direct) → (SP) POP direct ;((SP)) → (direct), (SP)-1 → SP XCH A,Rn ; (A) ←→(Rn)XCH A,direct ; (A) ←→(direct)XCH A,@Ri ; (A) ←→((Ri))XCHD A,@Ri ; (A)0~3 ←→((Ri))0~3SWAP A ; (A)0~3 ←→(A)4~7二、算术运算指令ADD A,Rn ; (A) + (Rn)→ AADD A,direct ; (A) + (direct)→ AADD A,@Ri ; (A) + ((Ri))→ AADD A,#data ; (A) + #data→ AADDC A,Rn ; (A) + (Rn) + cy→ AADDC A,direct ; (A) + (direct) + cy→ AADDC A,@Ri ; (A) + ((Ri)) + cy→ AADDC A,#data ; (A) + # data + cy→ ASUBB A,Rn ; (A) - ( Rn) - cy→ ASUBB A,direct ; (A) - (direct) - cy→ ASUBB A,@Ri ; (A) - ((Ri)) - cy→ ASUBB A,#data ; (A) - # data - cy→ AINC A ; (A) + 1 → AINC Rn ; (Rn) + 1 →RnINC direct ; (direct) + 1 →directINC @Ri ; ((Ri)) + 1 → (Ri)INC DPTR ; (DPTR) + 1 → DPTRDEC A ; (A) - 1 → ADEC Rn ; (Rn) - 1 →RnDEC direct ; (direct) - 1 →directDEC @Ri ; ((Ri)) - 1 → (Ri)MUL AB ; (A)·(B) → ABDIV AB ; (A) / (B) 商→ A , 余数→ B DA A ; 对A进行十进制调整三、逻辑操作指令ANL A,Rn ; (A)∧(Rn) → AANL A,direct ; (A)∧(direct) →AANL A,@Ri ; (A)∧((Ri)) → AANL A,#data ; (A)∧#data → AANL direct,A ; (direct)∧(A) →directANL direct,#data ; (direct)∧#data →directORL A,Rn ; (A)∨(Rn) → AORL A,direct ; (A)∨(direct) → AORL A,@Ri ; (A)∨((Ri)) → AORL A,#data ; (A)∨#data → AORL direct,A ; (direct)∨(A) →directORL direct,#data ; (direct)∨#data →directXRL A,Rn ; (A)⊕(Rn) → AXRL A,direct ; (A)⊕(direct) → AXRL A,@Ri ; (A)⊕((Ri)) → AXRL A,#data ; (A)⊕#data → AXRL direct,A ; (direct)⊕(A) →directXRL direct,#data ; (direct)⊕#data →directCLR A ; 0 → ACPL A ; (A) → ARL A ; (A)循环左移1位RLC A ; (A)带进位循环左移1位RR A ; (A)循环右移1位RRC A ; (A)带进位循环右移1位SWAP A ;(A)半字节交换四、位操作指令CLR C ; 0 → cyCLR bit ; 0 → bitSETB C ; 1 → cySETB bit ; 1 → bitCPL C ; (cy) → cyCPL bit ; (bit) → bitANL C,bit ; (cy) ∧(bit) → cyANL C,/bit ; (cy) ∧(bit) → cyORL C,bit ; (cy) ∨(bit) → cyORL C,/bit ; (cy) ∨(bit) → cyMOV C,bit ; (bit) → cyMOV bit,C ; (cy) → bit五、控制转移指令ACALL addr11 ; (PC)+2 → PC , (SP)+1 → SP;(PCL) → (SP),(SP)+1 → SP;(PCH) → (SP),addr11 → PC10~0 LCALL addr16 ; (PC)+3 → PC , (SP)+1 → SP;(PCL) → (SP),(SP)+1 → SP;(PCH) → (SP),addr16 → PCRET ; (SP) → PCH,(SP) -1 → SP;(SP) → PCL,(SP) -1 → SPRETI ; (SP) → PCH,(SP) -1 → SP;(SP) → PCL,(SP) -1 → SPAJMP add11 ; (PC)+2 → PC,;addr11 → CP10~0 LJMP add16 ; addr16 → PCSJMP rel ; (PC)+2 → PC,(PC)+ rel → PC JMP @A+DPTR ; ((A)+(DPTR))→ PCJZ rel ; (A)=0 : (PC)+2 +rel =PC; (A)≠0 : (PC)+2 =PCJNZ rel ; (A)≠0 : (PC)+2 +rel =PC; (A)=0 : (PC)+2 =PCJC rel ; (C)=1 : (PC)+2+rel =PC; (C)=0 : (PC)+2 =PCJNC rel ; (C)=0 : (PC)+2+rel =PC; (C)=1 : (PC)+2 =PCJB bit,rel ; (bit)=1 : 则(PC)+3+rel =PC; (bit)=0 : 则(PC)+3 =PCJNB bit,rel ; (bit)=0 : 则(PC)+3+rel =PC; (bit)=1 : 则(PC)+3 =PCJBC bit,rel ; (bit)=1 : 则(PC)+3+rel =PC, 0 → bit; (bit)=0 : 则(PC)+3 =PCCJNE A,direct,rel ; (A) = (direct), 则(PC)+3 → PC; (A) > (direct), 则(PC)+3+rel → PC,0 → CY; (A) < (direct), 则(PC)+3+rel → PC,1 → CY CJNE A,#data,rel ; (A) = #data, 则(PC)+3 → PC; (A) > #data, 则(PC)+3+rel → PC,0 → CY; (A) < #data, 则(PC)+3+rel → PC,1 → CY CJNE Rn,#data,rel ; (Rn) = #ata , 则(PC)+3 → PC; (Rn) > #ata, 则(PC)+3+rel → PC,0 → CY; (Rn) < #ata, 则(PC)+3+rel → PC,1 → CY CJNE @Ri,#data,rel ; ((Rn)) = #data, 则(PC)+3 → PC; ((Rn)) > #ata, 则(PC)+3+rel → PC,0 → CY; ((Rn)) < #ata, 则(PC)+3+rel → PC,1 → CY DJNZ Rn,rel ; (Rn)-1 → Rn,(Rn)=0,则(PC)+2 → PC;(Rn)≠0,则(PC)+2+rel → PCDJNZ direct,rel ; (direct)-1 → (direct),;(direct) ≠0,则(PC)+3+rel → PC;(direct)=0,则(PC)+3 → PCNOP ; 空操作。

第三章-80C51单片机的指令系统

第三章-80C51单片机的指令系统

第三章-80C51单片机的指令系统80C51单片机是一种常用的微控制器,广泛应用于嵌入式系统中。

其指令系统是该单片机的核心组成部分,决定了其功能和特性。

在本文中,我们将深入探讨80C51单片机的指令系统,包括其指令格式、指令集以及指令的执行过程。

一、指令格式80C51单片机的指令格式通常由若干个字节组成,每个字节又分为几个字段。

具体而言,一条指令通常包括操作码、目标操作数和源操作数等字段。

其中,操作码表示指令的类型和功能,目标操作数表示指令操作的目标寄存器或内存单元,源操作数表示指令操作的源寄存器或内存单元。

以MOV指令为例,其指令格式如下:| 操作码 | 目标操作数 | 源操作数 |其中,操作码为一个字节,表示MOV指令;目标操作数和源操作数也为一个字节,分别表示指令操作的目标和源。

二、指令集80C51单片机的指令集丰富多样,包括数据传送指令、算术运算指令、逻辑运算指令、分支指令等等。

这些指令可以实现各种功能,满足不同的应用需求。

1. 数据传送指令数据传送指令用于将数据从一个寄存器或内存单元复制到另一个寄存器或内存单元。

例如,MOV指令可以实现数据传送操作。

2. 算术运算指令算术运算指令用于进行加法、减法、乘法和除法等运算。

例如,ADD指令可以实现两个操作数的相加操作。

3. 逻辑运算指令逻辑运算指令用于进行与、或、非、异或等逻辑运算。

例如,AND 指令可以实现两个操作数的与运算。

4. 分支指令分支指令用于实现循环、条件判断和跳转等功能。

例如,JMP指令可以无条件跳转到指定的地址。

除了上述指令之外,80C51单片机还支持位操作指令、移位指令、输入输出指令等。

三、指令执行过程在80C51单片机中,指令的执行过程包括取指、译码、执行以及访问存储器等阶段。

1. 取指阶段取指阶段是指令执行的第一步,其目的是从存储器中读取指令。

取指的过程通常涉及到程序计数器的操作,确定下一条要执行的指令地址。

2. 译码阶段译码阶段是将取到的指令进行解码,将其转换为内部指令表示形式,以便后续的执行。

第三章80C51单片机的指令系统

第三章80C51单片机的指令系统

3.3

80C51指令集
根据指令功能的不同, 51单片机指令通常分 为数据传送类、算术运算类、逻辑运算类、控 制转移类及位操作类这5大类指令。
3.3.1数据传送与交换类指令
51指令系统中,数据传送类指令共有29条。这 类指令将源操作数传送到指定的目的地址,传 送后源操作数保持不变。数据传送类指令可以 在累加器A,R0~R7工作寄存器与片内数据 存储器、片外数据存储器和程序存储器之间进 行数据传送。传送类指令一般不影响标志位, 只有堆栈操作可以直接修改程序状态字PSW。
这条8位数传送指令的含义是把指令码第2字节立即数23H 取出来存放到累加器(A)中。该指令的操作码占1B; 23H为源操作数,也是1B;累加器(A)是目的操作数寄 存器,隐含在操作码字段中。
3.三字节指令(17条)
这条指令的指令码的第1字节为操作码;第2和第3字节为 操作数或操作数地址,有如下3类。 1)16位数据 例如:MOV DPTR,#26ABH 指令码为:
第三章
80C51单片机的 指令系统



3.1 指令系统概述 3.2 寻址方式 3.3 80C51指令集
3.3.1数据传送与交换类指令 3.3.2算术运算指令 3.3.3逻辑运算及移位类指令 3.3.4控制转移类指令 3.3.5位操作类指令 3.4 51单片机汇编语言程序设计

3.1 指令系统概述
例:已知R0中存放片内RAM地址65H,数据指针DPTR 内存放片外RAM地址8000H,地址65H和8000H里面 都存放着立即数30H,执行以下指令后: MOV A,@R0; MOVX A,@DPTR; 其中,累加器A的内容为30H。 寄存器间接寻址的寻址范围: 1)片内RAM低128单元:这里只能用R0和R1作为间 接寻址寄存器。 2)片外RAM 64KB:使用DPTR作为间接寻址寄存器。 3)片外RAM低256单元:可以使用DPTR、R0和R1。 4)堆栈区:以堆栈指针SP作为间接寻址寄存器。

80C51系列单片机指令表

80C51系列单片机指令表

80C51系列单片机指令表80C51系列单片机指令以A开头的指令有18条,分别为:ACALL addr11ADD A,RnADD A,directADD A,@RiADD A,#dataADDC A,RnADDC A,directADDC A,@RiADDC A,#dataAJMP addr11ANL A,RnANL A,directANL A,@RiANL A,#dataANL direct,AANL direct,#dataANL C,bitANL C,/bit1. ACALL addr11指令名称:绝对调用指令指令代码:A10 A9 A8 1 0 0 0 1 A7 A6 A5 A4 A3 A2 A1 A0指令功能:构造目的地址,进行子程序调用。

其方法是以指令提供的11位地址(al0~a0),取代PC的低11位,PC的高5位不变。

操作内容:PC←(PC)+2SP←(SP)+1(SP)←(PC)7~0SP←(SP)+1(SP)←(PC)15~8PC10~0←addrl0~0字节数:2机器周期:2使用说明:由于指令只给出子程序入口地址的低11位,因此调用范围是2KB。

2. ADD A,Rn指令名称:寄存器加法指令指令代码:28H~2FH指令功能:累加器内容与寄存器内容相加操作内容:A←(A)+(Rn),n=0~7字节数:1机器周期:1影响标志位:C,AC,OV3. ADD A,direct指令名称:直接寻址加法指令指令代码:25H指令功能:累加器内容与内部RAM单元或专用寄存器内容相加操作内容:A←(A)+(direct)字节数:2机器周期:1影响标志位:C,AC,OV4. ADD A,@Ri指令名称:间接寻址加法指令指令代码:26H~27H指令功能:累加器内容与内部RAM低128单元内容相加操作内容:A←(A)+((Ri)),i=0,1字节数:1机器周期:1影响标志位:C,AC,OV5. ADD A,#data指令名称:立即数加法指令指令代码:24H指令功能:累加器内容与立即数相加操作内容:A←(A)+data字节数:2机器周期:1影响标志位:C,AC,OV6. ADDC A,Rn指令名称:寄存器带进位加法指令指令代码:38H~3FH指令功能:累加器内容、寄存器内容和进位位相加操作内容:A←(A)+(Rn)+(C),n=0~7字节数:1机器周期:1影响标志位:C,AC,OV7. ADDC A,direct指令名称:直接寻址带进位加法指令指令代码:35H指令功能:累加器内容、内部RAM低128单元或专用寄存器内容与进位位加操作内容:A←(A)+(direct)+(C)字节数:2机器周期:1影响标志位:C,AC,OV8. ADDC A,@Ri指令名称:间接寻址带进位加法指令指令代码:36H~37H指令功能:累加器内容、内部RAM低128单元内容及进位位相加操作内容:A←(A)+((Ri))+(C),i=0,1字节数:1机器周期:1影响标志位:C,AC,OV9. ADDC A,#data指令名称:立即数带进位加法指令指令代码:34H指令功能:累加器内容、立即数及进位位相加操作内容:A←(A)+data+(C)字节数:2机器周期:1影响标志位:C,AC,OV10. AJMP addr11指令名称:绝对转移指令指令代码:A10 A9 A8 1 0 0 0 1 A7 A6 A5 A4 A3 A2 A1 A0指令功能:构造目的地址,实现程序转移.其方法是以指令提供的11位地址,取代PC的低11位,而PC的高5位保持不变.操作内容:PC←(PC)+2PCl0~0←addrll字节数:2机器周期:2使用说明:由于addrll的最小值是000H,最大值是7FFH,因此地址转移范围是2KB.11. ANL A,Rn指令名称:寄存器逻辑与指令指令代码:58H~5FH指令功能:累加器内容逻辑与寄存器内容操作内容:A←(A)∧(Rn),n=0~7字节数:1机器周期:112. ANL A,direct指令名称:直接寻址逻辑与指令指令代码:55H指令功能:累加器内容逻辑与内部RAM低128单元或专用寄存器内容操作内容:A←(A)∧(diret)字节数:2机器周期:113. ANL A,@Ri指令名称:间接寻址逻辑与指令指令代码:56H~57H指令功能:累加器内容逻辑与内部RAM低128单元内容操作内容:A←(A)∧((Ri))i=0,1字节数:1机器周期:114. ANL A,#data指令名称:立即数逻辑与指令指令代码:54H指令功能:累加器内容逻辑与立即数操作内容:A←(A)∧data字节数:2机器周期:115. ANL direct,A指令名称:累加器逻辑与指令指令代码:52H指令功能:内部RAM低128单元或专用寄存器内容逻辑与累加器内容操作内容:direct←(A)∧(direct)字节数:2机器周期:116. ANL direct,#data指令名称:逻辑与指令指令代码:53H指令功能:内部RAM低128单元或专用寄存器内容逻辑与立即数操作内容:direct←(direct)∧data字节数:3机器周期:217. ANL C,bit指令名称:位逻辑与指令指令代码:82H指令功能:进位标志逻辑与直接寻址位操作内容:C←(C)∧(bit)字节数:2机器周期:218. ANL C,/bit指令名称:位逻辑与指令指令代码:B0H指令功能:进位标志逻辑与直接寻址位的反操作内容:C←(C)∧(bit)字节数:2机器周期:280C51系列单片机指令以C开头的指令有10条,分别为: CJNE A,dircet,relCJNE A,#data,relCJNE Rn,#data,relCJNE @Ri,#data,relCLR ACLR CCLR bitCPL ACPL CCPL bit1. CJNE A,dircet,rel指令名称:数值比较转移指令指令代码:B5H指令功能:累加器内容与内部RAM低128字节或专用寄存器内容比较,不等则转移。

单片机第三章(80C51的指令系统)(12)

单片机第三章(80C51的指令系统)(12)

2、寄存器间接寻址 、
指令中指出某一个寄存器的内容为操作数的地址, 以符号“ 指令中指出某一个寄存器的内容 为操作数的地址,以符号 “ @ ” 表 为操作数的地址 寄存器中出现的数并不是参加操作的数据本身, 示。寄存器中出现的数并不是参加操作的数据本身,而是操作数在存储 器中的存放 , ;(A)←(( )) ) ((R0)) (( 若(R0)=30H,(30H)=40H,则执行该指令后(A)=40H。如下 ) , ) ,则执行该指令后( ) 。 图所示。 图所示。 ROM PC 11100110 R0 RAM(内) ( (00H) ) RAM(内) ( A
第三章 指令系统
3-1 指令的常用表达方式和寻址方式
一、 指令的表达方式 机器语言指令: 进制代码表示 常以16进制表示 进制代码表示。 进制表示。 机器语言指令:用2进制代码表示。常以 进制表示。 汇编语言指令: 由助记符表示, 汇编语言指令 : 由助记符表示 , 分别与机器语言指令 相对应。 相对应。
#date16: 表示 位立即数,即16位常数,取值 表示16位立即数 位立即数, 位常数, 位常数 范围为#0000H~#0FFFFH 范围为 ~ rel: 用补码形式表示的地址偏移量,取值范围为 用补码形式表示的地址偏移量, -128~+127。 ~ 。 bit: 表示内部 表示内部RAM和SFR中的具有位寻址功能 和 中的具有位寻址功能 的位地址。SFR中的位地址可以直接出现在指令中, 的位地址。 中的位地址可以直接出现在指令中, 中的位地址可以直接出现在指令中 为了阅读方便,往往也可用SFR的名字和所在的数 为了阅读方便,往往也可用SFR的名字和所在的数 位表示。 表示PSW中奇偶校验位,可写成 中奇偶校验位, 位表示。如:表示 中奇偶校验位 可写成D0H, , 也可写成PSW.0的形式出现在指令中。 的形式出现在指令中。 也可写成 的形式出现在指令中 @: 表示间接寻址寄存器或基址寄存器的前缀符 号。 $: 表示当前指令的地址。 表示当前指令的地址。

第4章 80C51的指令系统-宋110810

第4章 80C51的指令系统-宋110810
特点:传送和执行速度快
2013-7-17
17
【例】若(R0)=44H, 执行1000H: MOV A,R0, 结果(A)=44H
4.2.4 寄存器间接寻址 指令中给出寄存器的名称,以寄存器的内容为地 址再取一次数,该数才是真正的操作数,这种寻址 方式称为寄存器间接寻址。 寄存器中的内容是操作数的地址 寻址空间: 片内RAM( 采用@R0,@R1或SP) 片外RAM(采用@R0,@R1或@DPTR) 片内:MOV 片外:MOVX
0 0 0 1 1 1 0 0 1 1 0 1 1 0 0 0 0 1 1 0 0 1 1 0
编码为: 即:73H 30H 66H
2013-7-17
8
4.1.2 指令的执行时间
MCS-51系列单片机指令执行时间有单周期指令(64 条),双周期指令(45条)和四周期指令(2条)。 (1)单周期指令的执行指令时间为一个机器周期。 例如:ADD A,R1 (2)双周期指令的执行指令时间为2个机器周期。 例如: DJNZ R3,rel (3)四周期指令的执行指令时间为4个机器周期。 例如:MUL AB
2013-7-17 11
(6) 注释:在编写程序时, 为了增加程序的可读 性, 由用户对该条指令或该段程序功能进行的说明。 它以分号“;”开头, 由于“;”以后部分计算机不予 处理, 故可以用中文、 英文的某些符号来表示, 但 要注意在非注释部分的所有字符,都必须是英文的, 例如标点符号“,”、“:”只能用半角输入,而 不能用全角输入。
2013-7-17
27
4.3
数据传送类指令(29条)
一般不影响标志寄存器PSW的状态。
传送类指令有两大类 一般传送指令( MOV )(16条) 特殊传送指令(13条

80C51单片机指令集

80C51单片机指令集

80C51指令系统数据传送指令助记符指令功能字节数周期数对标志位影响P OV AC CYMOV A , #data A←DATA 8位立即数送A 2 1 √×××MOV direct ,#data data←Direct 8立即数送直接寻址单元 3 2 ××××MOV @Ri ,#data (Ri)←Data 8位立即数送Ri间接寻址单元 2 1 ××××MOV Rn ,#data Rn←Data 8位立即数送寄存器 2 1 ××××MOV DPTR ,#data16 DPTR←Data16 16位立即数送DPTR高8位送DPH,低8位DPL3 2 ××××MOV direct2,direct1 Direct2←(direct1) 直接寻址单元送直接寻址单元 3 2 ××××MOV direct ,@Ri direct←((Ri)) 间接寻址数据送直接单元 2 2 ××××MOV direct ,Rn direct←(Rn) 寄存器内容送直接寻址单元 2 2 ××××MOV @Ri ,direct (Ri)←(direct) 直接寻址数据送Ri间接寻址单元 2 2 ××××MOV Rn ,direct Rn←(direct) 直接寻址数据送寄存器 2 2 ××××MOV A ,direct A←(direct) 直接寻址数据送累加器 2 1 ××××MOV A ,@Ri A←((Ri)) Ri间接寻址数据送累加器 1 1 ××××MOV A ,Rn A←(Rn) 寄存器类容送累加器 1 1 ××××MOV direct ,A direct←(A) 累加器内容送直接寻址单元 2 1 ××××MOV @Ri ,A (Ri)←(A) 累加器内容送Ri间接寻址单元 1 1 ××××MOV Rn ,A Rn←(A) 累加器内容送寄存器 1 1 ××××MOVX A ,@Ri A←((Ri)) Ri间接寻址的外部RAM单元读 1 2 ××××MOVX @Ri ,A (Ri)←(A) Ri间接寻址的外部RAM单元写 1 2 ××××MOVX A ,@DPTR A←((DPTR)) DPTR间接寻址的外部RAM单元读 1 2 ××××MOVX @DPTR ,A (DPTR)←(A) DPTR间接寻址的外部RAM单元写 1 2 ××××X代表外部,外部数据存储器读/写只能通过累加器A使用间接寻址方式进行,间接寄存器可是Ri或DPTR MOVC A ,@A+DPTR A←((A)+(DPTR)) 程序存储器读 1 2 √×××MOVC A ,@A+PC A←((A)+(PC)) 程序存储器读 1 2 √×××程序存储器只能读,不能写,包括内部存储器及外部存储器,通过累加器A进行XCH A ,Rn (A)⇔(Rn) 寄存器寻址字节交换 1 1 √×××XCH A ,direct (direct) ⇔(A) 直接寻址字节交换 2 1 √×××XCH A ,@Ri ((Ri)) ⇔(A) Ri间接寻址字节交换 1 1 √×××XCHD A ,@Ri ((Ri))3~0⇔(A)3~0 Ri间接寻址低半字节交换 1 1 √×××SWAP A (A)3~0⇔(A)7~4 累加器内容高低半字节交换 1 1 ××××PUSH direct SP←(SP)+1 , (SP)←(direct) 进栈 2 2 ××××POP direct direct←((SP)) , SP←(SP)-1 出栈 2 2 ××××进出栈只能写为“PUSH ACC”和“POP ACC”,不能用“A”算术运算类指令算术运算指令都按8位二进制无符号数执行助记符指令功能字节数周期数对标志位影响P OV AC CYADD A ,#data A←(A)+data 立即数加法 2 1 √√√√ADD A ,direct A←(A)+(direct) 直接寻址加法 2 1 √√√√ADD A ,@Ri A←(A)+((Ri)) 间接寻址加法 1 1 √√√√ADD A ,Rn A←(A)+(Rn) 寄存器寻址加法 1 1 √√√√ADDC A ,#data A←(A)+data+(CY) 立即数带进位加法 1 1 √√√√ADDC A ,direct A←(A)+(direct)+(CY) 直接寻址带进位加法 2 1 √√√√ADDC A ,@Ri A←((Ri))+(A)+(CY) 间接寻址带进位加法 1 1 √√√√ADDC A ,Rn A←(Rn)+(A)+(CY) 寄存器寻址带进位加法 1 1 √√√√SUBB A ,#data A←(A)-data-(CY) 立即数带借位减法 2 1 √√√√SUBB A ,direct A←(A)-(direct)-(CY) 直接寻址带借位减法 2 1 √√√√SUBB A ,@Ri A←(A)-((Ri))-(CY) 间接寻址带借位减法 1 1 √√√√SUBB A ,Rn A←(A)-(Rn)-(CY) 寄存器寻址带借位减法 1 1 √√√√INC A A←(A)+1 累加器加1 1 1 √√××INC direct direct←(direct)+1 直接寻址单元加1 2 1 ××××INC @Ri (Ri) ←((Ri))+1 间接寻址单元加1 1 1 ××××INC Rn Rn←(Rn)+1 寄存器加1 1 1 ××××INC DPTR DPTR←(DPTR)+1 16位数据指针加1 1 2 ××××DEC A A←(A)-1 累加器减1 1 1 √×××DEC direct direct←(direct)-1 直接寻址单元减1 2 1 ××××DEC @Ri (Ri) ←((Ri))-1 间接寻址单元减1 1 1 ××××DEC Rn Rn←(Rn)-1 寄存器减1 1 1 ××××MUL AB AB←(A)*(B) 乘法 1 4 √√×√乘法:CY总是被清0,OV与乘积有关。

80C51单片机指令系统汇编

80C51单片机指令系统汇编

MOVX A, @Ri
MOVX A, @DPTR
目的操作数为@Ri
MOVX @Ri, A
MOVX @DPTR, A
例6:指令执行前(DPTR)=2000H,(A) =30H,(2000H)=55H,(R0)=20H, (20H)=88H
MOVX A,@DPTR
; (A)=55H
MOVX @R0,A
(7) direct: 表示直接寻址的地址, 即8位内部数据存储器 RAM的单元地址(0~127); 特殊功能寄存器SFR的地址。对于SFR可直接 用其名称来代替其直接地址。
(8) bit: 内部数据存储器RAM中位寻址区中的位地址 特殊功能寄存器SFR中的可直接寻址位地址 或名称。
(9) @: 间接寻址寄存器或基地址寄存器的前缀, 如@Ri, @DPTR, 表示寄存器间接寻址。
目的地址转移指令地址转移指令字节数rel寻址方式利用的变量使用的空间寄存器寻址r0r7abcydptr直接寻址直接地址内部ramsfr寄存器间接寻址r0r1内部ramr0r1dptr外部ram立即寻址立即数程序存储器变址寻址dptrapca程序存储器相对寻址pcrel程序存储器位寻址位地址内部ram位寻址区可位寻址的sfr说明下列指令中源操作数的寻址方式movar7movar1movcaadptrmovap0mova88hmova88hmovcp003380c51单片机指令系统80c51指令分类按功能分数据传送指令29条算术运算指令24条逻辑运算指令及移位类指令24条控制转移类指令17条位操作类指令17条一数据传送指令29条datamovadirectmovrnmovri目的操作数为rnmovrndatamovrndirectmovrnmovdptrdata指令执行前a33hr030h30h55h指令执行后的结果

第4章 80C51的指令系统

第4章 80C51的指令系统
02H
09H
01H
08H
00H
7
位寻址
对位地址中的内容进行操作的寻址方式称为位 寻址。采用位寻址指令的操作数是8位二进制数中 的某一位。指令中给出的是位地址。位寻址方式 实质属于位的直接寻址。 寻址空间为:片内RAM的20H~2FH单元中的 128可寻址位;SFR的可寻址位。 习惯上,特殊功能寄存器的寻址位常用符号位 地址表示。
mxg105bj@
2013-2014第二学期
80C51存储空间配置图
第4章 80C51系列指令系统
熟悉80C51系列单片机的寻址方式及 每一种寻址方式对应的寻址空间;掌 握每一条指令功能。
本章要点
80C51指令的基本格式 80C51指令功能分类 指令系统中的常用符号 80C51指令系统的七种寻址方式 数据传送类指令 算术运算类指令 逻辑运算及移位指令 位操作类指令 控制转移类指令
答案
1:2、0、1 2:11010.11B; 41.8125D 3:1 E 8. 6H ; 1010 1111. 0010 0110 4:与、或、非、逻辑0、逻辑1 5:
由真值表可看出在同输入情况下,二者的值都相 同。
• 6、 0001 1001 0111 0101
将下列各数转换为16进制数 (1)224D=E0(H)

JC 03H ; 若进位C=0,则程序顺序执行,即不跳转, PC= PC+2 ;若进位C= 1,则以PC 中 的当前内容为基地址,加上偏移量03H 后 所得到的结果为该转移指令的目的地址 。
位寻址区的位地址映象表
字节 地址
2FH 2EH

D7 7FH 77H D6 7EH 76H D5 7DH 75H D4 7CH 74H

5、80C51数据传送指令 101101

5、80C51数据传送指令 101101
16位常数装入数据指针DPTR,即数据高8位送入DPH 寄存器,数据低8位送入DPL寄存器。
例:执行指令 MOV DPTR,#1234H 执行结果∶(DPH)=12H,(DPL)=34H
心不可不虚,虚则义理来居;
(3) 内部RAM单元之间的数据传送指令
MOV direct,Rn
;(direct)←(Rn)
心不可不虚,虚则义理来居;
例3:求平方数(远程查表法) MOV DPTR, #TABLE MOVC A,@A+DPTR MOV 20H,A
HERE:SJMP HERE
;指向表首址 ;查表得到平方数 ;存平方数
TABLE∶DB 00H,01H,04H,09H DB 16H,25H,36H DB 49H,64H,81H
M OV A, Rn ; (A) ←(Rn)
MOV A, direct ; (A)←(direct)
MOV A, @Ri M OV Rn, A MOV direct, A MOV @Ri, A
; (A)←((Ri)) ; (Rn) ← (A) ; (direct) ←(A) ; ((Ri)) ← (A)
POP SP ;(SP)-1=2FH→SP ((SP))=(30H)=20H→SP
第三条指令为特殊情况,先执行(SP)-1=2FH,后 装入由栈顶退出的值,所以执行后(SP)=20H。
心不可不虚,虚则义理来居;
例5:检查传送结果 已知内部RAM (10H)=00H, (30H)=40H,(40H)=10H, P1口为11001010B,分析指令执行后各单元内容。
MOV R0,#30H MOV A,@R0 MOV R1,A MOV B,@R1
MOV @R1,P1 MOV P2,P1 MOV 10H,#20H 执行结果: (10H)=20H, (30H)=40H, (40H)=CAH, P1=P2=CAH, A=40H, B=10H, R0=30H, R1=40H

80C51指令集

80C51指令集
80C51 汇编指令集
按功能排列 1.数据传送指令 助 记 符 MOV A,Rn MOV A,data MOV A,@Ri MOV A,#data MOV Rn,A MOV Rn,data MOV Rn,#data MOV data,A MOV data,Rn MOV data,data MOV data,@Ri MOV data,#data MOV @Ri,A MOV @Ri,data MOV @Ri,#data MOV DPTR,#data16 MOV C,bit MOV bit,C MOVC A,@A+DPTR MOVC A,@A+PC MOVX A,@Ri MOVX A,@DPTR MOVX @Ri,A MOVX @DPTR,A PUSH data POP data XCH A,Rn XCH A,data XCH A,@Ri XCHD A,@Ri 说明 寄存器送 A 直接字节送 A 间接 RAM 送 A 立接数送 A A 送寄存器 直接数送寄存器 立即数送寄存器 A 送直接字节 寄存器送直接字节 直接字节送直接字节 间接 Rn 送直接字节 立即数送直接字节 A 送间接 Rn 直接字节送间接 Rn 立即数送间接 Rn 16 位常数送数据指针 直接位送进位位 进位位送直接位 A+DPTR 寻址程序存贮字节送 A A+PC 寻址程序存贮字节送 A 外部数据送 A(8 位地址) 外部数据送 A(16 位地址) A 送外部数据(8 位地址) A 送外部数据(16 位地址) 直接字节进栈道,SP 加 1 直接字节出栈,SP 减 1 寄存器与 A 交换 直接字节与 A 交换 间接 Rn 与 A 交换 间接 Rn 与 A 低半字节交换 字节 1 2 1 2 1 2 2 2 2 3 2 3 1 1 2 3 2 2 3 1 1 1 1 1 2 2 1 2 1 1 周期 1 1 1 1 1 2 1 1 1 2 2 2 2 1 2 1 1 2 2 2 2 2 2 2 2 2 1 1 1 1 代 码 E8--EF E5 E6--E7 74 F8--FF A8--AF 78--7F F5 88—8F 85 86;87 75 F6;F7 A6;A7 76;77 90 A2 92 93 83 E2;E3 E0 F2;F3 F0 C0 D0 C8—CF C5 C6;C7 D6;D7
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
×
×
×
×
2
1
88~8F
MOV direct,Rn
Rn→(direct)
×
×
×
×
2
2
85
MOV direct1,direct2
(direct2)→(direct1)
×
×
×
×
3
2
86,87
MOV direct,@Ri
(Ri)→(direct)
×
×
×
×
2
2
75
MOV direct,#data
#data→(direct)
(Ri)→A

×
×
×
1
1
74
MOV A,#data
#data→A

×
×
×
2
1
F8~FF
MOV Rn,A
A→Rn
×
×
×
×
1
1
A8~AF
MOV Rn,direct
(direct)→Rn
×
×
×
×
2
2
78~7F
MOV Rn,#data
#data→Rn
×
×
×
×
2
1
F5
MOV direct,A
A→(direct)
附录1 80C51指令表
80C51指令系统所用符号和含义
addr11
11位地址
addr16
16位地址
bit
位地址
rel
相对偏移量,为8位有符号数(补码形式)
direct
直接地址单元(RAM、SFR、I/O)
#data
立即数
Rn
工作寄存器R0~R7
A
累加器
Ri
i=0,1,数据指针R0或R1
X
片内RAM中的直接地址或寄存器




2
1
36,37
ADDC A,@Ri
A+(Ri)+CY→A




1
1
34
ADDC A,#data
A+#data+CY→A




2
1
98~9F
SUBB A,Rn
A-Rn-CY→A




1
1
95
SUBB A,direct
A-(direct)-CY→A




2
1
96,97
SUBB A,@Ri
A→(DPTR)
×
×
×
×
1
2
C0
PUSH direct
SP+1→SP,(direct)→(SP)
×
×
×
×
2
2
D0
POP direct
(SP)→(direct),SP-1→SP
×
×
×
×
2
2
C8~CF
XCH A,Rn
A Rn

×
×
×
1
1
C5
XCH A,direct
A (direct)

×
×
×
2
1
C6,C7
×
×

2
2
A2
MOV C,bit
bit→cy
×
×
×

2
1
92
MOV bit,C
cy→bit
×
×
×
×
2
2
十六进制代码
助记符
功能
对标志影响
字节数
周期数
P
OV
AC
CY
控制转移指令
11
ACALL addr11
PC+2→PC,SP+1→SP,
PCL→(SP),SP+1→SP,
PCH→(SP),addr11→PC10~0
ANL A,@Ri
A·(Ri)→A

×
×
×
1
1
54
ANL A,#data
A·#data→A

×
×
×
2
1
52
ANL direct,A
(direct)·A→(direct)
×
×
×
×
2
1
53
ANL direct,#data
(direct)·#data→(direct)
×
×
×
×
3
2
48~4F
ORL A,Rn
A≠0,则PC+2=PC
×
×
×
×
2
2
70
JNZ rel
A≠0,则PC+2+rel=PC
A=0,则PC+2=PC
×
×
×
×
2
2
40
JC rel
C=1,则PC+2+rel=PC
C=0,则PC+2=PC
×
×
×
×
2
2
50
JNC rel
C=0,则PC+2+rel=PC
C=1,则PC+2=PC
×
×
×
×
2
2
20
JB bit,rel
Ri<#data,则PC+3+rel→PC,1→cy
×
×
×

3
2
D8~DF
DJNZ Rn,rel
Rn-1→Rn,Rn=0,则PC+2→PC;
Rn≠0,则PC+2+rel→PC
×
×
×
×
2
2
D5
DJNZ direct,rel
(direct)-1→(direct)
(direct)≠0,则PC+3+rel→PC;
×
×
×
×
1
2
01
AJMP addr11
PC+2→PC,
addr11→PC10~0
×
×
×
×
2
2
02
LJMP addr16
addr16→PC
×
×
×
×
2
2
80
SJMP rel
PC+2+rel→PC
×
×
×
×
2
2
73
JMP @A+DPTR
(A+DPTR)→PC
×
×
×
×
1
2
60
JZ rel
A=0,则PC+2+rel=PC
A循环右移1位
×
×
×
×
1
1
13
RRC A
A带进位循环右移1位

×
×

1
1
C4
SWAP A
A半字节交换
×
×
×
×
1
1
十六进制代码
助记符
功能
对标志影响
字节数
周期数
P
OV
AC
CY
数据传送指令
E8~EF
MOV A,Rn
Rn→A

×
×
×
1
1
E5
MOV A,direct
(direct)→A

×
×
×
2
1
E6,E7
MOV A,@Ri
(direct)=0,则PC+3→PC
×
×
×
×
3
2
00
NOP
空操作
×
×
×
×
1
1
bit=1,则PC+3+rel=PC
bit=0,则PC+3=PC
×
×
×
×
3
2
30
JNB bit,rel
bit=0,则PC+3+rel=PC
bit=1,则PC+3=PC
×
×
×
×
3
2
10
JBC bit,rel
bit=1,则PC+3+rel=PC,
0→bit;bit=0,则PC+3=PC
3
2
B5
CJNE A,direct,rel
A+Rn→A

×
×
×
1
1
45
ORL A,direct
A+(direct)→A

×
×
×
2
1
46,47
ORL A,@Ri
A+(Ri)→A

×
×
×
1
1
44
ORL A,#data
A+#data→A

×
×
×
2
1
42
ORL direct,A
(direct)+A→(direct)
×
×
×
×
2
1
43
ORL direct,#data
×
×
×
×
2
2
12
LCALL addr16
PC+3→PC,SP+1→SP,
相关文档
最新文档