第3章 AT89C51指令系统
合集下载
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
调用与返回指令在程序设计中有些如延时显示等具有一定功能的程序在一个系统中常常被多次使用为了避免重复编写相同功能的程序使程序编写和调试更加容易通常把这些具有一定功能的经常被反复使用的程序段作为子程序
第6章
关系数据库理论
第3章 AT89C51指令系统
3.1 指令系统简介 3.2 寻址方式 3.3 AT89C51指令系统 3.4 实验 习题与思考题
DPTR等寄存器。
第6章
关系数据库理论
4.寄存器间接寻址 在寄存器间接寻址中,指令中的一个操作数是加了 前缀“@”的寄存器,“@”表示该寄存器中的内容是操 作数的地址。执行指令时,计算机根据这个地址取出 操作数完成相应的操作,这种寻址方式称作寄存器间
接寻址。在AT89C51中,可用于间接寻址的寄存器是
第6章
关系数据库理论
1.不带进位加法指令 ADD是不带进位的加法运算指令,其功能是将累加 器A的内容与源操作数的内容相加,结果送入累加器A 中,源操作数指定单元的内容不变。该指令执行结果 影响标志位CY、OV、AC、P。
第6章
关系数据库理论
两个数相加时,可通过对CY的检测判断运算结果是 否有进位,如果最高位有进位时,CY为1,否则为0。 若是两个有符号数相加,因为符号位要参加运算, 就有可能产生溢出现象,即超出单字节数所能表示的 有符号数的最大范围(-128~+127)。从例3-16可知两个
关系数据库理论
3.查表指令 MOVC查表指令是指程序存储器内的查表指令,用
来获取程序存储器数据表格中的数据,并将获取的数
据送入累加器A中。 “MOVC A,@A+DPTR”指令执行时,是将累加
器A的值与DPTR的值相加得到一个16位的地址,并将
该地址指向的程序存储器单元的内容送入累加器A中。
第6章
关系数据库理论
[例3.13]
的值。
下面的程序从程序存储器1000H单元开始存放,
写出执行下列程序后,累加器A、寄存器R0和程序指针PC
1000H: MOV A,#01H ;01→A,数据项数送入累加器
1002H: ADD A,#0BH
;项数+偏移量0BH→A,A为0CH 1004H: MOVC A,@A+PC ;PC为1005H,与0CH相加后,程序到1011H单元取 ;数04H送入A中
第6章
关系数据库理论
6.乘法指令 乘法指令功能是将累加器A的内容和寄存器B的内容
相乘,结果是16位二进制数。其中高8位保存在寄存器
B中,低8位保存在累加器A中。若乘积大于0FFH,溢 出标志OV=1,否则为0。例如,设(A)=C5H,(B)=08H,
第6章
关系数据库理论
3.1 指令系统简介
AT89C51单片机共有111条指令。其中,单字节指令 49条,双字节指令45条,三字节指令17条。在111条指 令中,有64条是单机器周期指令,45条双机器周期指 令,两条四机器周期指令。计算机执行指令时间的长 短并不取决于指令所占存储器的字节数,而是取决于 所占用的机器周期数。
寄存器中的一个,程序状态寄存器PSW的RS1、RS0决
定了当前寄存器。表中指令操作除影响PSW中P的标志 位外,其他任何标志位不受影响。
第6章
关系数据库理论
2.外部RAM传送指令
外部RAM传送指令功能也是将源操作数的内容传 送到目的操作数,而源操作数内容不改变。只是在访 问外部RAM时,目的操作数和源操作数总有一个在累 加器A中,另一个在片外存储器中。DPTR用于片外16 位地址寻址,Ri用于16位地址的低8位地址寻址。执行 MOVX指令能够产生读和写信号,执行其他任何指令 都不会产生读写信号。
第6章
关系数据库理论
(4) #DATA 16:表示16位立即数,即包含在指令中 的16位常数,如#2010H。 (5) direct:表示片内RAM(含特殊功能寄存器)的直接 地址。 (6) addr11:表示11位目的地址。
(7) addr16:表示16位目的地址。
(8) rel:表示带符号的8位地址偏移量。
第6章
关系数据库理论
[例3.15] 设(A)=47H,(R0)=58H,(58H)=36H,分别执行
下列指令,写出累加器A和各寄存器的值。 执行结果 ① XCH A,R0 ② XCH A,@R0 ;(A)=58H,(R0)=47HH ;(A)=36H,(58H)=47H
③ XCHD A, @R0
④ SWAP A
PUSH指令用于把直接寻址的一个字节数压入栈顶。 执行这条指令时,先将栈顶指针SP的值加1,然后把直 接寻址单元里的数存入到SP指向的单元中。 POP指令用于把栈顶的内容送入直接寻址的一个单 元中。
第6章
关系数据库理论
[例3.14] 执行下列指令,注意累加器A的变化。
MOV SP,#63H MOV A,#17H PUSH ACC RL A ;设置堆栈初值 ;17H送入A ;将17H压入堆栈保存 ;将累加器A的内容左循环一次
动的存储空间,活动端称为栈顶,固定端称为栈底,
所有数据的存入和取出都从栈顶进行。堆栈主要用于 进行数据保护。
在AT89C51中,堆栈是自底向上生成的,寄存器SP
始终指向栈顶地址。复位时,SP的初值为07H,但这 个初值可以通过“MOV SP,#DATA”语句来修改,以 确定堆栈的使用空间。
第6章
关系数据库理论
第6章
关系数据库理论
1005H: MOV R0,A ;(A)→R0,PC为1006H 1010H: 02H 1011H: 04H 1012H: 06H 1014H: 08H 执行结果为(A)=04H,(R0)=04H,(PC)=1006H。
第6章
关系数据库理论
4.堆栈指令 堆栈是在内部RAM中开辟的一端相对固定,一端活
第6章
关系数据库理论
[例3.10] 20H单元中。
将片外RAM 2000H单元内容送入片内RAM
MOV DPTR,#2000H
MOVX A,@DPTR MOV 20H,A ;片外2000H单元内容→累加器A ;(A)→片内20H单元
第6章
关系数据库理论
[例3.11] 将片外RAM 1000H单元内容送入片外RAM 3000H 单元。 MOV DPTR,#1000H MOVX A,@DPTR MOV DPTR,#3000H ;地址指针指向1000H ;将1000H单元内容送入A ;地址指针指向3000H
R0、R1、DPTR。其中,R0和R1用于8位地址寻址, DPTR用于16位地址寻址。
第6章
关系数据库理论
内部RAM R0 20H 20H 58H A 58H
图3-2 间接寻址示意图
第6章
关系数据库理论
5.变址寻址(基址寄存器+变址寄存器) 变址寻址是指以寄存器的内容作为基地址,然后
在这个基地址的基础上加上地址偏移量形成操作数的
负数相加,结果为正数22H,显然不对,这就是溢出。
第6章
关系数据库理论
2.带进位的加法指令 ADDC指令功能是同时把源操作数所指出的内容、
进位标志CY和累加器A的内容相加,结果存入累加器
A中。ADDC指令一般用于多字节加法运算,在多字节 加法运算中,低字节加法结果可能产生进位,用
ADDC指令可使高字节相加的同时加上低字节的进位。
机 的 各 种 运 算 提 供 数 据 。 用 到 的 助 记 符 有 MOV 、
MOVC 、 MOVX 、 XCH 、 XCHD 、 SWAP 、 PUSH 、 POP共八种,数据传送类指令如表3-1(略)所示。
第6章
关系数据库理论
1.片内RAM传送指令 片内RAM传送指令功能是将源操作数的内容传送到 目的操作数,而源操作数内容不改变(源操作数、目的 操 作 数 概 念 参 阅 4.2.1 节 ) 。 表 中 机 器 码 格 式 中 的 rrr=000~111,分别表示某个工作寄存器组的R0~R7
MOV R1,A
POP ACC
;(A)→R1
;将17H弹出并送入累加器中
第6章
关系数据库理论
5.交换指令
(1) XCH 指令是将源操作数的值与目的操作数累加 器A的值全字节交换; (2) XCHD 指令是将源操作数与目的操作数累加器A 低4位内容交换,而高4位不变;
(3)
换。
SWAP指令是将累加器A的内容高4位和低4位互
该指令执行结果影响标志位CY、OV、AC、P。
第6章
关系数据库理论
3.加1指令 该指令用于将操作数的内容加1。该指令除影响奇偶
标志位P外,不会对其他任何标志位产生影响。
4.带借位减法指令 SUBB指令功能是将累加器A中内容减去源操作数的 内容及进位CY的值,结果送入累加器A中。该指令影 响标志位CY、OV、AC、P。 5.减1指令 该指令用于将操作数的内容减1。与INC指令相同, 仅影响奇偶标志位P。
7.位寻址
位寻址是指指令的操作数为8位二进制数的某一位, 指令中给出的是操作数的位地址。可用于位寻址的区 域是片内RAM 20H~2FH单元和部分特殊功能寄存器 (见表2-4)。
第6章
关系数据库理论
3.3 AT89C51指令系统
3.3.1 数据传送类指令 计算机在进行各种操作和运算时,CPU需要操作数, 这些操作数有的在累加器中,有的在寄存器中,有的在 存储器中,有的由单片机的外部设备提供。AT89C51提 供了丰富的指令,使这些操作数能够进行传送,为计算
MOVX @DPTR,A ;将累加器A的内容送入3000H单元
第6章
关系数据库理论
[例3.12] 用间接寻址将片内RAM 10H单元内容送入片外 RAM 20H单元。
MOV R0,#10H
MOV A,@R0 MOV R0,#20H MOVX @R0,A ;送入片外地址单元 ;取片内单元数据
第6章
第6章
关系数据库理论
(9) bit:表示位地址。 (10) @:作为寄存器的前缀,表示间接寻址。
(11) (×):表示×中内容。
(12) ((×)):表示×所指地址单元的内容。 (13) →:表示将箭头左边内容送入箭头右边。
第6章
关系数据库理论
3.2.2 寻址方式 1. 立即数寻址
立即数寻址是指操作数作为指令的一部分存放在程
序存储器中,在取指令运行的同时,直接获得该操作 数。这类操作数可以是一字节或两字节操作数,应用
时应在操作数前面加“#”号,以区别直接地址。
第6章
关系数据库理论
2.直接寻址 直接寻址是指在指令中直接给出操作数所在存储单元
的地址。执行指令时,从该地址中直接获取操作数。
在AT89C51中,可直接寻址的单元为内部RAM低128 个字节和所有的特殊功能寄存器。对于特殊功能寄存器,
既可以使用名字,也可以使用地址。但一般程序设计中
都建议使用名字,以便于程序的阅读和理解。
第6章
关系数据库理论
内部RAM A 40H 3AH 3AH
图3-1 直接寻址示意图
第6章
关系数据库理论
3.寄存器寻址 寄存器寻址是指把寄存器的内容作为操作数。寄存
器可以是通用寄存器R0~R7,也可以是ACC、B、
;(A)=46H,(58H)=37H
;(A)=74H
第6章
关系数据库理论
3.3.2 算术运算类指令 在AT89C51指令系统中,提供了加、减、乘、除及
加法BCD码调整指令,虽然这类指令(特别是加减指令)
操作比较灵活,但它们全是单字节操作。若要进行多 字节算术运算,还需要单独编程。算术运算类指令见
表3-2(略)所示。
地址,并在这个地址中取出操作数。在变址寻址中只 能用DPTR和PC作为基址寄存器,累加器A作为偏移量
寄存器。变址寻址用于读取程序存储器的数据,常用
于查表操作。
第6章
关系数据库理论
例如执行“MOVC A,@A+DPTR”指令时,用累 加器A的内容加上DPTR的内容作为一个地址,然后从
这个地址中取出操作数送入累加器中。设累加器A的内
第6章
关系数据库理论
3.2 寻 址 方 式
3.2.1 符号注释 在以后章节的学习过程中,经常用到一些符号, 下面逐一介绍。 (1) Rn(n=0~7):表示八个通用寄存器R0~R7。 (2) Ri(i=0,1):表示两个寄存器R0、R1,它们常在 间接寻址中作为8位地址指针。 (3) #DATA:表示8位立即数,即包含在指令中的8 位常数,如#30或#00110001B。
容为20H,DPTR的值为2000H,程序存储器2020H单元 内容为47H,则执行该指令后累加器A的值为47H。其
示意图如图3-3所示。
第6章
关系数据库理论
DPTR 2000H A 20来自百度文库 指令执行前 2020H
ROM A 47H 47H
指令执行后
图3-3 变址寻址示意图
第6章
关系数据库理论
6.相对寻址 相对寻址是将程序计数器PC中的当前值与指令第二 字节给出的偏移量相加,其结果作为跳转指令的转移 地址。相对寻址主要用于转移类指令,寻址范围是程 序存储器。
第6章
关系数据库理论
第3章 AT89C51指令系统
3.1 指令系统简介 3.2 寻址方式 3.3 AT89C51指令系统 3.4 实验 习题与思考题
DPTR等寄存器。
第6章
关系数据库理论
4.寄存器间接寻址 在寄存器间接寻址中,指令中的一个操作数是加了 前缀“@”的寄存器,“@”表示该寄存器中的内容是操 作数的地址。执行指令时,计算机根据这个地址取出 操作数完成相应的操作,这种寻址方式称作寄存器间
接寻址。在AT89C51中,可用于间接寻址的寄存器是
第6章
关系数据库理论
1.不带进位加法指令 ADD是不带进位的加法运算指令,其功能是将累加 器A的内容与源操作数的内容相加,结果送入累加器A 中,源操作数指定单元的内容不变。该指令执行结果 影响标志位CY、OV、AC、P。
第6章
关系数据库理论
两个数相加时,可通过对CY的检测判断运算结果是 否有进位,如果最高位有进位时,CY为1,否则为0。 若是两个有符号数相加,因为符号位要参加运算, 就有可能产生溢出现象,即超出单字节数所能表示的 有符号数的最大范围(-128~+127)。从例3-16可知两个
关系数据库理论
3.查表指令 MOVC查表指令是指程序存储器内的查表指令,用
来获取程序存储器数据表格中的数据,并将获取的数
据送入累加器A中。 “MOVC A,@A+DPTR”指令执行时,是将累加
器A的值与DPTR的值相加得到一个16位的地址,并将
该地址指向的程序存储器单元的内容送入累加器A中。
第6章
关系数据库理论
[例3.13]
的值。
下面的程序从程序存储器1000H单元开始存放,
写出执行下列程序后,累加器A、寄存器R0和程序指针PC
1000H: MOV A,#01H ;01→A,数据项数送入累加器
1002H: ADD A,#0BH
;项数+偏移量0BH→A,A为0CH 1004H: MOVC A,@A+PC ;PC为1005H,与0CH相加后,程序到1011H单元取 ;数04H送入A中
第6章
关系数据库理论
6.乘法指令 乘法指令功能是将累加器A的内容和寄存器B的内容
相乘,结果是16位二进制数。其中高8位保存在寄存器
B中,低8位保存在累加器A中。若乘积大于0FFH,溢 出标志OV=1,否则为0。例如,设(A)=C5H,(B)=08H,
第6章
关系数据库理论
3.1 指令系统简介
AT89C51单片机共有111条指令。其中,单字节指令 49条,双字节指令45条,三字节指令17条。在111条指 令中,有64条是单机器周期指令,45条双机器周期指 令,两条四机器周期指令。计算机执行指令时间的长 短并不取决于指令所占存储器的字节数,而是取决于 所占用的机器周期数。
寄存器中的一个,程序状态寄存器PSW的RS1、RS0决
定了当前寄存器。表中指令操作除影响PSW中P的标志 位外,其他任何标志位不受影响。
第6章
关系数据库理论
2.外部RAM传送指令
外部RAM传送指令功能也是将源操作数的内容传 送到目的操作数,而源操作数内容不改变。只是在访 问外部RAM时,目的操作数和源操作数总有一个在累 加器A中,另一个在片外存储器中。DPTR用于片外16 位地址寻址,Ri用于16位地址的低8位地址寻址。执行 MOVX指令能够产生读和写信号,执行其他任何指令 都不会产生读写信号。
第6章
关系数据库理论
(4) #DATA 16:表示16位立即数,即包含在指令中 的16位常数,如#2010H。 (5) direct:表示片内RAM(含特殊功能寄存器)的直接 地址。 (6) addr11:表示11位目的地址。
(7) addr16:表示16位目的地址。
(8) rel:表示带符号的8位地址偏移量。
第6章
关系数据库理论
[例3.15] 设(A)=47H,(R0)=58H,(58H)=36H,分别执行
下列指令,写出累加器A和各寄存器的值。 执行结果 ① XCH A,R0 ② XCH A,@R0 ;(A)=58H,(R0)=47HH ;(A)=36H,(58H)=47H
③ XCHD A, @R0
④ SWAP A
PUSH指令用于把直接寻址的一个字节数压入栈顶。 执行这条指令时,先将栈顶指针SP的值加1,然后把直 接寻址单元里的数存入到SP指向的单元中。 POP指令用于把栈顶的内容送入直接寻址的一个单 元中。
第6章
关系数据库理论
[例3.14] 执行下列指令,注意累加器A的变化。
MOV SP,#63H MOV A,#17H PUSH ACC RL A ;设置堆栈初值 ;17H送入A ;将17H压入堆栈保存 ;将累加器A的内容左循环一次
动的存储空间,活动端称为栈顶,固定端称为栈底,
所有数据的存入和取出都从栈顶进行。堆栈主要用于 进行数据保护。
在AT89C51中,堆栈是自底向上生成的,寄存器SP
始终指向栈顶地址。复位时,SP的初值为07H,但这 个初值可以通过“MOV SP,#DATA”语句来修改,以 确定堆栈的使用空间。
第6章
关系数据库理论
第6章
关系数据库理论
1005H: MOV R0,A ;(A)→R0,PC为1006H 1010H: 02H 1011H: 04H 1012H: 06H 1014H: 08H 执行结果为(A)=04H,(R0)=04H,(PC)=1006H。
第6章
关系数据库理论
4.堆栈指令 堆栈是在内部RAM中开辟的一端相对固定,一端活
第6章
关系数据库理论
[例3.10] 20H单元中。
将片外RAM 2000H单元内容送入片内RAM
MOV DPTR,#2000H
MOVX A,@DPTR MOV 20H,A ;片外2000H单元内容→累加器A ;(A)→片内20H单元
第6章
关系数据库理论
[例3.11] 将片外RAM 1000H单元内容送入片外RAM 3000H 单元。 MOV DPTR,#1000H MOVX A,@DPTR MOV DPTR,#3000H ;地址指针指向1000H ;将1000H单元内容送入A ;地址指针指向3000H
R0、R1、DPTR。其中,R0和R1用于8位地址寻址, DPTR用于16位地址寻址。
第6章
关系数据库理论
内部RAM R0 20H 20H 58H A 58H
图3-2 间接寻址示意图
第6章
关系数据库理论
5.变址寻址(基址寄存器+变址寄存器) 变址寻址是指以寄存器的内容作为基地址,然后
在这个基地址的基础上加上地址偏移量形成操作数的
负数相加,结果为正数22H,显然不对,这就是溢出。
第6章
关系数据库理论
2.带进位的加法指令 ADDC指令功能是同时把源操作数所指出的内容、
进位标志CY和累加器A的内容相加,结果存入累加器
A中。ADDC指令一般用于多字节加法运算,在多字节 加法运算中,低字节加法结果可能产生进位,用
ADDC指令可使高字节相加的同时加上低字节的进位。
机 的 各 种 运 算 提 供 数 据 。 用 到 的 助 记 符 有 MOV 、
MOVC 、 MOVX 、 XCH 、 XCHD 、 SWAP 、 PUSH 、 POP共八种,数据传送类指令如表3-1(略)所示。
第6章
关系数据库理论
1.片内RAM传送指令 片内RAM传送指令功能是将源操作数的内容传送到 目的操作数,而源操作数内容不改变(源操作数、目的 操 作 数 概 念 参 阅 4.2.1 节 ) 。 表 中 机 器 码 格 式 中 的 rrr=000~111,分别表示某个工作寄存器组的R0~R7
MOV R1,A
POP ACC
;(A)→R1
;将17H弹出并送入累加器中
第6章
关系数据库理论
5.交换指令
(1) XCH 指令是将源操作数的值与目的操作数累加 器A的值全字节交换; (2) XCHD 指令是将源操作数与目的操作数累加器A 低4位内容交换,而高4位不变;
(3)
换。
SWAP指令是将累加器A的内容高4位和低4位互
该指令执行结果影响标志位CY、OV、AC、P。
第6章
关系数据库理论
3.加1指令 该指令用于将操作数的内容加1。该指令除影响奇偶
标志位P外,不会对其他任何标志位产生影响。
4.带借位减法指令 SUBB指令功能是将累加器A中内容减去源操作数的 内容及进位CY的值,结果送入累加器A中。该指令影 响标志位CY、OV、AC、P。 5.减1指令 该指令用于将操作数的内容减1。与INC指令相同, 仅影响奇偶标志位P。
7.位寻址
位寻址是指指令的操作数为8位二进制数的某一位, 指令中给出的是操作数的位地址。可用于位寻址的区 域是片内RAM 20H~2FH单元和部分特殊功能寄存器 (见表2-4)。
第6章
关系数据库理论
3.3 AT89C51指令系统
3.3.1 数据传送类指令 计算机在进行各种操作和运算时,CPU需要操作数, 这些操作数有的在累加器中,有的在寄存器中,有的在 存储器中,有的由单片机的外部设备提供。AT89C51提 供了丰富的指令,使这些操作数能够进行传送,为计算
MOVX @DPTR,A ;将累加器A的内容送入3000H单元
第6章
关系数据库理论
[例3.12] 用间接寻址将片内RAM 10H单元内容送入片外 RAM 20H单元。
MOV R0,#10H
MOV A,@R0 MOV R0,#20H MOVX @R0,A ;送入片外地址单元 ;取片内单元数据
第6章
第6章
关系数据库理论
(9) bit:表示位地址。 (10) @:作为寄存器的前缀,表示间接寻址。
(11) (×):表示×中内容。
(12) ((×)):表示×所指地址单元的内容。 (13) →:表示将箭头左边内容送入箭头右边。
第6章
关系数据库理论
3.2.2 寻址方式 1. 立即数寻址
立即数寻址是指操作数作为指令的一部分存放在程
序存储器中,在取指令运行的同时,直接获得该操作 数。这类操作数可以是一字节或两字节操作数,应用
时应在操作数前面加“#”号,以区别直接地址。
第6章
关系数据库理论
2.直接寻址 直接寻址是指在指令中直接给出操作数所在存储单元
的地址。执行指令时,从该地址中直接获取操作数。
在AT89C51中,可直接寻址的单元为内部RAM低128 个字节和所有的特殊功能寄存器。对于特殊功能寄存器,
既可以使用名字,也可以使用地址。但一般程序设计中
都建议使用名字,以便于程序的阅读和理解。
第6章
关系数据库理论
内部RAM A 40H 3AH 3AH
图3-1 直接寻址示意图
第6章
关系数据库理论
3.寄存器寻址 寄存器寻址是指把寄存器的内容作为操作数。寄存
器可以是通用寄存器R0~R7,也可以是ACC、B、
;(A)=46H,(58H)=37H
;(A)=74H
第6章
关系数据库理论
3.3.2 算术运算类指令 在AT89C51指令系统中,提供了加、减、乘、除及
加法BCD码调整指令,虽然这类指令(特别是加减指令)
操作比较灵活,但它们全是单字节操作。若要进行多 字节算术运算,还需要单独编程。算术运算类指令见
表3-2(略)所示。
地址,并在这个地址中取出操作数。在变址寻址中只 能用DPTR和PC作为基址寄存器,累加器A作为偏移量
寄存器。变址寻址用于读取程序存储器的数据,常用
于查表操作。
第6章
关系数据库理论
例如执行“MOVC A,@A+DPTR”指令时,用累 加器A的内容加上DPTR的内容作为一个地址,然后从
这个地址中取出操作数送入累加器中。设累加器A的内
第6章
关系数据库理论
3.2 寻 址 方 式
3.2.1 符号注释 在以后章节的学习过程中,经常用到一些符号, 下面逐一介绍。 (1) Rn(n=0~7):表示八个通用寄存器R0~R7。 (2) Ri(i=0,1):表示两个寄存器R0、R1,它们常在 间接寻址中作为8位地址指针。 (3) #DATA:表示8位立即数,即包含在指令中的8 位常数,如#30或#00110001B。
容为20H,DPTR的值为2000H,程序存储器2020H单元 内容为47H,则执行该指令后累加器A的值为47H。其
示意图如图3-3所示。
第6章
关系数据库理论
DPTR 2000H A 20来自百度文库 指令执行前 2020H
ROM A 47H 47H
指令执行后
图3-3 变址寻址示意图
第6章
关系数据库理论
6.相对寻址 相对寻址是将程序计数器PC中的当前值与指令第二 字节给出的偏移量相加,其结果作为跳转指令的转移 地址。相对寻址主要用于转移类指令,寻址范围是程 序存储器。