电工技术基础_电工基础知识_电工之家-电工学习网

欢迎来到电工学习网!

啥是寄存器直接寻址?寄存器直接寻址办法

2017-09-29 13:07分类:电子技术 阅读:

 

在单片机的一种指令寻址办法,寄存器直接寻址办法中,寄存器内寄存的是操作数的地址,而不是操作数自身,即操作数是经过寄存器直接得到的,因而称为寄存器直接寻址。
功用

操作数放在RAM某个单元中,该单元的地址又放在寄存器R0或R1中。 假定RAM的地址大于256,则该地址寄存在16位寄存器DPTR(数据指针)中,此刻在寄存器名前加@符号来标明这种直接寻址。如MOV A,@ R0。其它还有变址寻址、相对寻址、位寻址等。如用单片机操控温度时,不时需求将给定的操控温度(如20℃)减去环境温度,而环境温度不时有改动,显着无法在程序指令中给出,只需经过必定办法,将其送入某个输入/输出口,再寄存在某个寄存器中,这就有必要用到寄存器寻址。又如要进行算术运算,要核算每班学员各科作用的均匀值,假定把每个学员的各科都编一个程序,在程序中直接给出该学员各科作用,再求均匀值,显着太费事。这儿能够编一个求均匀作用的通用程序,把每位学员的作用送入存贮器的各个单元中,这时可选用直接寻址,所以,寻址办法越多,编制程序就越便当、活络,适用计划就越广。
言语描绘办法

寄存器的直接寻址需求以寄存器符号的办法来标明,且在寄存器称谓前面加上直接寻址符号“@”。例如指令MOV A,@R0就运用了寄存器直接寻址办法,这条指令的含义为将地址指针R0指向的内部数据存储器单元中的数据送入累加器A中.
假定R0中内容为30H,则此指令的功用是以R0寄存器的内容30H为地址,把内部RAM 30H单元中的内容传送给累加器A。

8051规矩,选用R0、R1 DPTR作为直接寻址寄存器,可寻址片内数据存储器RAM的低128B单元和片外数据存储器的低256单元。
选用DPTR作间址寄存器,可寻址片外数据存储器的悉数64KB地址空间。仓库指针SP用于指示仓库操作的地址,因而,PUSH和POP指令也是寄存器直接寻址。

寄存器直接寻址办法
寄存器直接寻址是将指定的寄存器内容为地址,由该地址所指定的单元内容作为操作数。MCS-51规矩R2或R1为直接寻址寄存器,它可寻址内部RAM低位地址的128个字节单元内容。还可选用数据指针(DPTR)作为直接寻址寄存器,寻址外部数据存储器的64K字节空间,但不能用本寻址办法寻址分外功用寄存器。

例如,设将内部RAM的65H单元内容(47H)送A,可施行指令:MOV A,@R0,其间R0内容为65H。该指令施行暗示如图2所示。

指令的施跋涉程为:当程序施行到本指令时,就以指令中所指定的工作寄存器R0的内容(65H)为指针,将内部数据存储器65H单元的内容(47H)送累加器A。

上一篇:真空电容参数特征

下一篇:光耦阻隔的效果及作业原理

相关推荐

电工推荐

    电工技术基础_电工基础知识_电工之家-电工学习网
返回顶部