MCS51指令系统

合集下载

MCS-51指令系统

MCS-51指令系统

❖ 目的操作数寻址方式(3种):
直接寻址、寄存器寻址、寄存器间接寻址
除了目的操作数为ACC的指令影响奇偶标志P外,一般不影响
标志位。2022/2/15
16
3.3.1 十六位数的传递指令(1条)
MOV DPTR,#data16
8051是一种8位机,这是唯一的一条16位立即数传递指 令。功能:将一个16位的立即数送入DPTR中去。其中 高8位送入DPH,低8位送入DPL。
2022/2/15
2
常用符号 Rn:工作寄存器中的寄存器R0、R1…R7之一,
Ri:工作寄存器中的寄存器R0或R1
#data:8位立即数
#data16:16位立即数 direct:片内RAM或SFR的地址(8位)
@间接寻址寄存器
Bit:片内RAM或SFR的位地址 addr11:11位目的地址
addr16:16位目的地址
者内容相加,结果作为操作数的地址。
常用于查表操作。 ❖ MCS-51
操作数在程 序存储器中
MOVC A, @A+DPTR ;(A+DPTR) →A
MOVC A, @A+PC ; PC+1 →PC,(A+PC)→A
2022/2/15
10
如:MOVC A,@A+DPTR 设DPTR=2000H,A=E0H
常用于跳转指令。 如: JC 23H 若C=0,不跳转; C=1,跳转.
2022/2/15
12
如:JC 23
程序存储区
1000H 40 1001H 23 1002H 30
当前PC …

1024H 47 1025H 45
指令代码
23H

MCS-51指令系统

MCS-51指令系统
18
4、控制转移类指令(二)
无条件转移:(LJMP,AJMP,SJMP,JMP—4条) LJMP addr16 长跳转指令
——可在64K范围内跳转 AJMP addr11 绝对跳转指令
——可在指令所在的2K范围内跳转 SJMP rel 相对跳转指令
——可在当前PC-128与+127范围内跳转 JMP @A+DPTR 间接长跳转指令
1
累加器清零/取反操作 (CLR,CPL—2条)
CLR A —对累加器清零
1 Byte 1 Tm
CPL A ——对累加器按位取非 1 Byte 1 Tm 15
3、逻辑运算及移位类指令(三)
逻辑运算指令在程序中的应用(下面的例子认为Acc 的内容为9AH)
逻辑与ANL运算用于对某些位进行清0或者保留: 例: ANL A, #0FH; 则(A) = 0AH
位清零/置位指令(4条): CLR bit(或C) —— (bit或 C)“0” SETB bit(或C) —— (bit或 C)“1”
位逻辑与/或/非指令(6条): ANL C,bit(或/bit) ORL C,bit(或/bit) CPL bit (或 C) 注: “/bit”表示对bit位先取反然后再参加运算
带借位减法(SUBB):(A) ← (A)- (Cy)- (第二操作数)
10
2、算术运算类指令(三)
加1/减1操作: (INC,DEC—9条) INC, DEC与用加/减法指令做加1/减1 操作不 同之处在于INC、DEC不影响标志位。
单字节乘/除运算: (MUL,DIV—2条) 两个单字节数的乘/除法运算只在A与B之间 进行。 MUL AB: (A)与(B)相乘, 积为16位数,

MCS-51单片机的指令系统

MCS-51单片机的指令系统

整理ppt
12
4.2 寻址方式
51汇编语言有42种操作码助记符,用来描述33种操作功 能。一种操作码可以使用一种以上的数据类型,又由于 助记符规定了其访问的存储器空间,所以一种功能可能 有几个助记符(如MOV、MOVX、MOVC)。功能助记 符与寻址方式组合,得到111条指令。
整理ppt
13
4.2 寻址方式
1)无操作数单字节指令
这类指令只有操作码字段,操作数隐含在操作码中。
例如:INC DPTR
指令码为 :
数据指针隐含其中
整理ppt
6
指令的组成及字节数
2)含有操作数寄存器号的单字节指令 单字节的指令码由操作码字段和指示操作数所 在寄 存器号的字段组成。 例如;MOV A,Rn 指令码为:
其中,rrr为寄存器Rn的编号
整理ppt
2
4.1 指令和指令程序
“指令”: CPU能直接识别和执行的命令。 指令系统:CPU所能执行的全部指令的集合。
与CPU的能力、使用的方便灵活性密切相关。 指令的记忆问题?指令本身是二进制代码。
例如以下的51单片机指令:
把10放到累 740AH 加器A中 为பைடு நூலகம்便于记忆 指令助
A加20,结 果仍在A中
整理ppt
8
指令的组成及字节数
3.三字节指令(17条)
这条指令的指令码的第1字节为操作码;第2和第3字节为 操作数或操作数地址,有如下3类。 1)16位数据 例如:MOV DPTR,#26ABH 指令码为:
整理ppt
9
指令的组成及字节数
2)8位地址和8位数据 例如:MOV 74H,#0FFH 指令码为:
在MCS-51指令中,若操作数是以R0~R7来表示操作数时, 就属于寄存器寻址方式。

MCS51单片机指令系统

MCS51单片机指令系统

第一条指令为远查表指令,可以在64K的程序存储器空间寻 址。基地址寄存器为DPTR,其意思为,DPTR里面存放的是 程序存储器中数据表格的首地址,A为数据地址的偏移量。
这条指令执行以后,以 (A)+(DPTR)的数值为地址数 据就送进A里面来了,也就是从表格首地址开始以后的第(A) 个数据被送进A了。(举例子说明)
编写好的程序都放在程序存储器中,由于一个存储地址所 指示的存储单元只能存放一字节的数据。所以,在存放指令时, 必须将指令拆分成一个一个字节进行连续存放。
比如: 实现“累加器加10H”这条指令,其机器语言为 0111010000010000, 占用了两个字节,就必须拆成两个字节 进行连续存储。
但是,用二进制来表示比较麻烦,因此,也常用十六进制来 表示如:74H 10H来表示以上这条机器语言。可见,用十六进 制表示指令比较简单,但是,指令系统有上百条指令,不易记 住。所以,一般采用容易记住的一些缩写符号来表示机器语言,
2. 在指令中直接给出操作数的地址, 这种寻址方式就属
于直接寻址方式。在这种方式中, 指令的操作数部分直接 是操作数的地址。
比如:MOV A,30H;将30H里面的数送到A里面 MOV 21H,30H;将30H里面的数存放到21H里面 在MCS -51 单片机指令系统中, 直接寻址方式中可
以访问 3 种存储器空间: (1) 内部数据存储器的低 128 个字节单元(00H~
7. 位寻址 指按照位进行的寻址操作,(前面讲的都是按字节进
行的寻址操作)。该种寻址方式中, 操作数是内部RAM单元 中20H到2FH的128个位地址以及SFR中的11个可进行 位寻址的寄存器中的位地址寻址。
比如:MOV C,20H;就是将RAM中位寻址区中20H位地 址中的内容送给C。区别与MOV A,20H;这个是将内部 RAM中20H单元的内容送给A。

大学课件MCS51单片机指令系统与汇编语言程序设计

大学课件MCS51单片机指令系统与汇编语言程序设计

ANL C, P ; (C)← (C)∧(P)
其中:P是PSW的第0位,C是PSW的第7位。
(4)字节符号地址(字节名称)加位序号的形式。对于部分特 殊功能寄存器(如状态标志寄存器PSW),还可以用其字节名 称加位序号形式来访问某一位。AC 如:
定义:操作数存放在MCS-51内部的某个工作寄存器Rn (R0~R7)或部分专用寄存器中,这种寻址方式称为 寄存器寻址。
特点:由指令指出某一个寄存器的内容作为操作数。 存放操作数的寄存器在指令代码中不占据单独的一个 字节,而是嵌入(隐含)到操作码字节中。
寻址范围:四组通用寄存器Rn(R0~R7)、部分专用 寄存器( A, B, DPTR, Cy )。
伪指令只出现在汇编前的源程序中,仅提供汇编用的某些控制 信息,不产生可执行的目标代码,是CPU不能执行的指令。
(1)定位伪指令ORG
格式:ORG n
其中:n通常为绝对地址,可以是十六进制数、标号或表达式。
功能:规定编译后的机器代码存放的起始位置。在一个汇编 语言源程序中允许存在多条定位伪指令,但每一个n值都应和前
2.2.2 直接寻址
定义:将操作数的地址直接存放在指令中,这种寻址方式称为 直接寻址。 特点:指令中含有操作数的地址。该地址指出了参与操作的数 据所在的字节单元地址或位地址。计算机执行它们时便可根据 直接地址找到所需要的操作数。
寻址范围:ROM、片内RAM区、SFR和位地址空间。P42
2.2.3 寄存器寻址
定义:指令中给出的操作数是一个可单独寻址的位地址,这种寻址 方式称为位寻址方式。
特点:位寻址是直接寻址方式的一种,其特点是对8位二进制数中 的某一位的地址进行操作。
寻址范围:片内RAM低128B中位寻址区、部分SFR(其中有83位 可以位寻址)。

MCS-51单片机指令系统

MCS-51单片机指令系统

MOV DPTR,#2000H
6、栈操作指令
PUSH direct; (SP)<-SP+1, ((SP))<(direct)
进栈指令的功能是先将SP的指针加1,然 后把直接地址指出的内容传送到栈指针SP寻 址的内部RAM单元中。
POP direct; (direct)<-((SP)), (SP)<-SP-1
@DPTR, A; ((DPTR))<-(A)
A, @R1
@DPTR,A
8、查表指令
MOVC A,@A+DPTR; (A)<-((A))+((DPTR)) MOVC A,@A+PC ; (A)<-((A))+((PC))
9、字节交换指令
XCH A, Rn; XCH A,direct; XCH A,@Ri;
XRL A, direct ; A与direct中的值 ;按位'异或',结果送入A中
XRL A, @Ri; A与间址寻址单元@Ri中 ;的值按位'异或',结果送入A中
4、逻辑异或指令
XRL A, #data ;A与立即数data按位 ;‘异或’,结果送入A中
XRL direct, A ; direct中值与A中的值 ;按位‘异或’, ;结果送入direct中
(A)<->(Rn) (A)<->(direct) (A)<->((Ri))
10、半字节交换指令
XCHD A,@Ri; (A)0-3<->((Ri))0-3
2、算术指令
1、不带进位位的加法
ADD
A, #data;
(A)<-(A)+#data

MCS-51单片机指令系统


6、堆栈操作指令
进栈 【PUSH direct;(SP)+1→SP,(dirsct)→(SP)】 出栈 【POP direct;(SP)→(dirsct),(SP)-1→SP】
MCS-51指令系统中有两条读程序存储器中表格数据的指令。 因为对程序存储器只能读不能写,所以查表指令数据传送都是单向的, 即从程序存储器到累加器中。
SETB C;1→C置一
3、位逻辑运算指令
ANL C,bit;C)∧(bit)→C
ORL C,/bit;(C)∨(~bit)→C
“ / “表示取反
JB bit,re1;若(bit)=1,则(PC)+rel→PC;否则,(PC)+3→PC
4、位条件转移指令
JNB bit,re1;若(bit)=0,则(PC)+rel→PC;否则,(PC)+3→PC
1、逻辑与指令【ANL A,#data;(A)∧data→A 】
2、逻辑或指令【ORL A,#data;(A)∨data→A】
3、逻辑异或指令【XRL A,#data;(A)⊕data→A】
4、累加器A清零指令【CLA A;0→A 】
5、累加器A取反指令【CPL A; ̅A→A】
RL A;左循环移位指令
2、以Rn为目的操作数的指令 【MOV Rn, #data;data→Rn】 (源操作数:累加器A、片内RAM单元、SFR内容,立即数) 传送到当前工作寄存器组R0~R7的某个寄存器
3、以直接地址为目的操作数的指令 【MOV direct, #data;data→direct】 (源操作数:累加器、片内RAM单元、工作寄存器,立即数) 传送到由direct所指的片内存储单元
返回指令

MCS-51单片机指令系统教程(2)


片外数据 存储器 64KB
1,访问片内RAM20H存储单元; MOV A,20H
2,访问片外RAM存储单元; MOV R0,#20H MOVX A,@R0
0000H
3,尽管片内与片外的RAM单元 的00H-FFH地址相重叠但由 于指令的不同不会发生地址
混乱。
片外数据存储器 64KB个字节
返回
2.2.5 变址寻址
由操作码和操作数(或操作数地址)构成指令的结构。
举例:MOV A,#0FFH
ADD A,R0
返回
2.1.2 指令的三种表示形式:
指令的表示形式是识别指令的标志。
1,二进制的表示形式:(以“累加器的内容+08H”为例) 00100100B 操作码 OP (加法) 00001000B 操作数DATA(08H)
乘法指令 16位寄存器DPTR加一
从表中可见,指令的字节数与指令周期不是对等的关系 返回
2.1.4 指令的分类
MCS-51单片机的指令如果按功能划分可以分为五类: 1,数据传送类指令:完成数据在单片机内部之间的传送。
分为8位数和16位两种。除了奇偶位外,指令的执行对 PSW无影响。
2,算术运算指令:用于操作数之间的加、减、乘除运算。 【特点】:多数情况下:操作数之一在累加器A中,结果 也保留在A中,运算结果要影响PSW(进位标志、奇偶和 溢出标志等)。
“机器码”后才能为CPU所识别和执行。 3,三种不同的表示方法适用于不同的场合。
返回
本章内容都以汇编的形式介绍指令系统。
2.1.3 指令的字节数
在MCS-51单片机的指令系统中,因指令操作码和操作数 的不同,指令(在存储器中)长度也各不相同。
分为单字节、双字节和三字节。

第3章 MCS-51指令系统


16
MCS-51单片机指令系统
MCS-51单片机指令系统包括111条指令 按功能可以划分为以下5类:
1. 数据传送和交换指令(29条)
2. 算术运算指令(24条) 3. 逻辑运算指令(24条) 4. 控制转移指令(17条) 5. 位操作指令(17条)
17

数据传送和交换类指令主要有以下几种:
1. 2. 3.

30H
Eg:MOV 30H,#33H 33H
30H
XX 30H
33H
30H
31H
Eg:MOV 30H,31H
55H
XX
55H
25
A

30H XX
地址
30H 33H
Eg:MOV 30H, A
33H
R0
Eg:MOV 30H,@R0
55H
取出
30H 78H 30H
55H
R3
78H
30H XX

55H
MOV A , 30H
XX 55H
30H
A
6
3、寄存器寻址
寄存器寻址是指将操作数存放于寄存器中,寄存器包括工作寄 存器R0~R7、累加器A、通用寄存器B、地址寄存器DPTR等。 数据存放在R0~R7中的某个通用寄存器内,或者放在某个专用 寄存器中。 e.g.: MOV A,R7 ADD A,R0
DPTR
2000H
DPTR 2000H
XXXX
Eg:将数据指针DPTR指向存于ROM中的表格首地址。
MOV DPTR,#TABLE
27
三、片外数据传递指令
使用DPTR和Ri进行间接寻址 MOVX A, @DPTR ;A ←((DPTR))片外 MOVX A,@Ri ;A ←((Ri))片外 MOVX @DPTR,A ;(DPTR)片外←(A) MOVX @Ri,A ;(Ri)片外←(A) 注意: 该指令用于在单片机和外部RAM、扩展I/O的数据传送; 使用Ri时,只能访问低8位地址为00H~FFH地址段; 使用DPTR时,能访问0000H ~ FFFFH地址段。

MCS-51系列单片机的指令系统

一套控制计算机操作的编码,称之为机器语言,计算 机只能识别和执行机器语言的指令。为了便于人们理 解记忆和使用,通常用符号来描述计算机的指令系统, 而符号指令称之为汇编语言。各类机型计算机都有自 己的汇编语言指令系统,并且能够将汇编语言进行编 译成为机器语言指令。
51系列单片机指令系统包含5种功能类型的指令,7 种寻址方式,共有111条指令。
addr16 16位目标地址,片外数据存储器或程序存储器以及外 部芯片的地址,用于LCALL和LJMP指令中;
addr11 11位目标地址,片内数据存储器或程序存储器的地址, 用于ACALL和AJMP指令中;
rel 相关地址,8位带符号偏移量,一般是程序存储器字节地址, 通常在跳转类指令中使用,其对应的十进制范围为-128~+127;
立即寻址就是直接给出操作数。
取指令时,即可由程序存储器中直接取得操作数据。51单 片机中除了一条指令(MOV DPTR,#data16)是16位长 的立即数外,其余都是8位的立即数。
例如:MOV A,#30H;无论执行之前A中的内容是多少, 则执行后A=30H。
值得注意的一点是:在立即数寻址中立即数前面必须要加 上一个“#”号,“#”表示其后面内容为立即数而不是一个 字节单元地址。
bit 位地址,针对片内数据存储器中的可位寻址的位使用; DPTR 数据指针,可用做16位的地址寄存器; (X) X指寄存器或十六进制数,则(X)为指向以X寄存器中的内
容为目标地址的单元或以十六进制数据为目标地址的单元; ← 数据传送的方向,将左边的内容送入右边; A 累加器; ACC 直接寻址方式的累加器; B 寄存器B; C 进位标志位,是布尔处理机的累加器,也称为位累加器。
任何一种处理器都必须经过设计人员对
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
程序存储区 A 0 2H ① Σ 0 30 2H DPTR 0 3H 0 0H ② ③
5 5H
0 30 2H
第3章 MCS-51指令系统
七.相对寻址
1、作用:用于程序转移。
2、指令举例: SJMP rel 3、目的地址:
目的地址=转移指令所在地址+转移指令的字节数+rel
第3章 数据传送类指令 3.3 MCS-51指令系统
② 片外RAM低256B @Ri
③ 片外RAM64KB @DPTR
④ 堆栈区
SP
ቤተ መጻሕፍቲ ባይዱ
第3章 MCS-51指令系统
四. 立即寻址 1、定义:操作数在指令中直接给出。 2、指令举例: MOV A, #40H 五.位寻址 1、定义:在指令中直接使用位地址。 2、指令: MOV C,40H 3、范围: 内部RAM的位寻址区
双字节指令:例:
三字节指令:例: 按指令执行时间分类:
MOV
MOV
A,#55H
P1,#55H A ; P1,#55H MOV A,#55H
单机器周期指令:例:CLR 双机器周期指令:例: MOV
四机器周期指令:例: MUL AB
;DIV AB
第3章 MCS-51指令系统
指令格式:
标号: 操作码
第3章 MCS-51指令系统
七. 外部数据传送指令(4条)
MOVX A, @ DPTR MOVX A, @Ri MOVX @ DPTR ,A MOVX @Ri, A 注意: ① 外部RAM只能通过累加器A进行数据传送。 ② 累加器A与外部RAM之间传送数据时只能间接寻址方式,间接 寻址寄存器为DPTR,R0,R1。 ③ 以上传送指令结果通常影响程序状态字寄存器PSW的P标志。
P1.7 P1.6 P1.5 P1.4 P1.3 P1.2 P1.1 P1.0
P1.0
1 1 8051
P1.7 +5V
1 1
1 1
1 1
1 1
1 1
1 0
0 1
1
1 1 1 1 0
1
1 1 1 0 1
1
1 1 0 1 1
1
1 0 1 1 1
1
0 1 1 1 1
0
1 1 1 1 1
1
1 1 1 1 1
高4位
高4位 低4位
XCH
8位数据
8位数据
XCHD
高4位
低4位
SWAP
低4位
注意:以上指令结果影响程序状态字寄存器PSW的P标志。
第3章 MCS-51指令系统
例:已知(R0)=30H,(A)=65H,(30H)=8FH,执行指令: XCH A,@R0 XCHD A,@R0 SWAP A 指出每条指令执行后R0, A, 30H中的内容。 (R0)=30H,(A)=8FH,(30H)=65H (R0)=30H,(A)=6FH,(30H)=85H (A)=56H
3.4 算术运算类指令 第3章 MCS-51指令系统
1.加法指令 (1)普通加法指令 ADD A, Rn
ADD A, @Ri ADD A, direct ADD A, #data (3)增一指令 INC A INC Rn INC @Ri INC direct INC DPTR (2)带进位加法指令 ADDC A, Rn ADDC A, @Ri ADDC A, direct ADDC A, #data (4)十进制调整指令 DA A 注意:以上指令结果均影响
④ MOVC A,@A+PC表格只能存放在该条查表指令后256个单元中。
第3章 MCS-51指令系统
九. 交换类指令 (1)整字节交换指令 XCH A, Rn XCH A, @Ri XCH A, direct (2)半字节交换指令 XCHD A,@Ri (3)累加器高低半字节交换指令 SWAP A
程序状态字寄存器PSW的
CY、OV、AC和P标志。
第3章 MCS-51指令系统
例1:(A)=85H,(R0)=20H,(20H)=0AFH,执行指令: ADD A,@R0 后A、Cy、Ac、OV中的内容。 例2:(A)=0C3H,(20H)=0AAH,Cy=1 执行指令: ADDC A,20H 后A、Cy、Ac、OV中的内容
1
1 1 1 1 1
第3章 MCS-51指令系统
2、逻辑与指令 ANL A ,Rn ANL A,direct ANL A,@Ri ANL A,#data ANL direct,A
3、逻辑或指令 ORL A ,Rn ORL A,direct ORL A,@Ri ORL A,#data
寄存器R1 寄存器R6 内部RAM:50H 内部RAM:66H 内部RAM:70H
第3章 MCS-51指令系统
五、16位数据传送类指令 MOV DPTR,#data16 六、堆栈操作类指令 PUSH direct POP direct 注意: ① 堆栈是用户自己设定的内部RAM中的一块专用存储区,后进先 出,使用时一定先设堆栈指针,堆栈指针缺省为SP=07H。 ②堆栈操作必须是字节操作,且只能直接寻址。
2、减法指令 (1)带进位减法指令 SUBB A, Rn SUBB A, @Ri SUBB A, direct SUBB A, #data 3、8位无符号乘法指令 MUL AB 4、 8位无符号除法指令 DIV AB (2)减一指令 DEC A DEC Rn DEC @Ri DEC direct
P1.0
P1.1 P1.2 P1.3 P1.4 P1.5 P1.6 P1.7
MOV direct1, direct2
MOV direct, #data MOV direct, A
第3章 MCS-51指令系统
P1.0 a P1.1 b P1.2 c 5v
P1.3 d P1.4 e
P1.5 f
P1.6 g
③ 将累加器A入栈、出栈指令可以写成: PUSH/POP ACC 或 PUSH/POP 0E0H 而不能写成:PUSH/POP A
第3章 MCS-51指令系统
例(1)把程序状态寄存器(PSW)=10H、(A)=20H、(DPTR) =3040H进栈保护。设当前SP为60H,(60H)=50H。则程序 PUSH PSW PUSH ACC PUSH DPL PUSH DPH 执行后,指出SP,60H,61H、62H、63H、64H,PSW、A、DPL、 DPH的内容。 (2)如下程序段(SP保持64H不变) POP DPH POP DPL POP ACC POP PSW 指令执行之后,指出SP,60H,61H、62H、63H、64H,PSW、A、 DPL、DPH的内容。
P1.7dp
第3章 MCS-51指令系统
四、以寄存器间接地址为目的操作数的指令 MOV @Ri, A MOV @Ri, direct MOV @Ri, #data 例: 已知各单元内容如下,指出下列指令执行后各单元内容。
寄存器R0 50H 66H 30H 60H 45H 40H
(1) MOV A, R6 (2) MOV R6,70H (3) MOV 70H,50H (4) MOV 40H,@R0 (5) MOV @R1,#88H
一、以累加器A为目的操作数的指令
MOV A, Rn
MOV A, @Ri MOV A, direct MOV A, #data 例:各单元内容如下,指出每条指令执行后相应单元内容。
累加器A
(1) MOV A,#20H (2) MOV A,40H (3) MOV A,R0 (4) MOV A,@R0
40H 50H
30H 10H
寄存器R0
内部RAM:40H 内部RAM:50H
第3章 MCS-51指令系统
二、以寄存器Rn为目的操作数的指令 MOV Rn, A MOV Rn, direct MOV Rn, #data 三、以直接地址direct为目的操作数的指令 MOV direct, Rn MOV direct, @Ri 5v
4、逻辑异或指令 XRL A ,Rn XRL A,direct XRL A,@Ri XRL A,#data XRL direct,A
ORL direct,A
ORL direct,#data
ANL direct,#data
XRL direct,#data
实现逻辑与,主要用于操作数的某些位不变(这些位与“1”), 某些位置0(这些位与“0”)。 实现逻辑或,主要用于操作数的某些位不变(这些位或“0”), 某些位置1(这些位或“1”) 实现逻辑异或,主要用于操作数的某些位不变(这些位“0”), 某些位取反(这些位异或“1”)。
例 把外部数据存储器2040H单元中的数据传送到外部数据存储 器2560H单元中去。
第3章 MCS-51指令系统
八 查表指令(2条)
MOVC A,@A+PC MOVC A,@A+DPTR 注意: ① 只能使用这两条指令寻访ROM中数据表格。 ② 累加器A与ROM之间传送数据时只能变址寻址方式。 ③ 以上传送指令结果通常影响程序状态字寄存器PSW的P标志。 ⑤ MOVC A,@A+DPTR表格可存放在ROM中任意位置。 例 ROM 2000H单元中的数据传送到片内数据存储器20H单元中。
SFR中的可寻址位
第3章 MCS-51指令系统
六.基址寄存器加变址寄存器寻址(变址寻址)
1、作用:用于读出程序存储器中的数据到累加器中。
2、指令: MOVC A, @A+DPTR MOVC A, @A+PC
JMP @A+DPTR
注意:只能对程序存储器寻址
第3章 MCS-51指令系统
例: MOVC A,@A+DPTR 设累加器A=02H,DPTR=0300H,外部ROM中,0302H单元 的内容是55H
相关文档
最新文档