导航:首页 > 操作系统 > 51单片机中的dptr

51单片机中的dptr

发布时间:2022-09-14 14:53:03

‘壹’ 51单片机中MOV A,DPTR能这么使用吗DPTR是属于直接寻址还是间接寻址

它是一个只对A累加器有用的十六位地址指针,也就是可用它可只对A累加器进行间接寻址。这DPTR是一个十六位的寄存器,而A累加器是八位的,可它可分成二个八位的分别为DPH和DPL,如你想传送或何存它时就可分别用传DPH和DPL用二次分别传送或用二个八位RAM分别保存。

‘贰’ 单片机里的 DPTR 和 PC 分别代表什么

  1. DPTR数据指针

数据指针(DPTR)是某些单片机中一个功能比较特殊的寄存器,是一个16位的特殊功能寄存器, 其高位字节寄存器用DPH表示,低位字节寄存器用DPL表示,DPTR既可以作为一个16位的寄存器来处理,也可以作为两个独立的8位寄存器来使用。主要功能是存放16位地址,作为片外RAM寻址用的地址寄存器(间接寻址),故称数据指针,也可以将外部RAM中地址的内容传送到内部RAM的地址所指向的内容中。

2. PC程序指针:

PC——程序计数器,功能:用来指示下一条指令的地址(逻辑地址即偏移量),一般情况下,系统指示对其进行加1操作,担当遇到转移指令,如JMP,CALL,LOOP等时系统就会将跳转到的指令地址保存在PC中

‘叁’ mcs-51单片机的数据指针DPTR是一个16位的专用地址指针寄存器,主要用来做什么

如果是用c语言编程,可以不必注意这些问题,因为编程软件会自动帮你分配,也不容易出错!!
数据指针DPTR是80C51中一个功能比较特殊的寄存器。从结构DPTR是一个16位的特殊功能寄存器, 其高位字节寄存器用DPH表示,低位字节寄存器用DPL表示,DPTR既可以作为一个16位的寄存器来处理,也可以作为两个独立的8位寄存器来使用。主要功能是存放16位地址,作为片外RAM寻址用的地址寄存器(间接寻址),故称数据指针。

访问片外数据存储器的指令为:
MOVX A,@DPTR 读
MOVX @DPTR,A 写
DPTR的另一个作用是变址寻址,访问程序存储器,做查表指令:如:
以dptr为基址寄存器,将dptr的内容与累加器a的内容相加得到变址地址
movc a, @a+dptr ; (a)<-----((a)+(dptr))

‘肆’ 51单片机的指令PC和DPTR有什么区别和联系

PC寄存器是单片机的指令指针寄存器,它里面的内容是下一条指令的地址,直接使用极易造成程序混乱而且极有可能达不到你预先的效果;
DPTR是一个16位的特殊功能寄存器, 其高位字节寄存器用DPH表示,低位字节寄存器用DPL表示,DPTR既可以作为一个16位的寄存器来处理,也可以作为两个独立的8位寄存器来使用

‘伍’ 单片机MCS51的DPTR

这个指令是把外部存储单元的地址——》DPTR
movc a,@a+DPTR 才是把地址为a+DPTR 的外部程序存储器内容给a
movx a,@dptr才是把地址为DPTR 的外部数据存储器内容给a
movx @dptr,a才是把a内容给地址为DPTR 的外部数据存储器

‘陆’ 单片机中数据指针DPTR用法的概括

在Intel MCS-51 单片机结构中 16位DPTR 寄存器能对存贮区内的各个部分进行寻址使用 DPTR 寻址存贮器的指令如下所示:
MOVX @DPTR,A ; 将累加器 A 的内容送到由 DPTR 寻址的数据存贮区内
MOVX A @DPTR ;将由 DPTR 寻址的数据存贮区内的内容送到累加器 A
805 1结构用脚 PSEN和RD 分别选通程序存贮器 只读 和数据存贮器 MOVX 指令访问数据存贮器(例如RD脚 数据存贮器一般是指 RAM 或存储映像 I/O
MOVC A @DPTR ;将由 DPTR 寻址的程序存贮区内的内容送到累加器 A
MOVC 指令通过访问程序存贮器 例如PSEN 脚,以存取只读常数(例如:数据表字符串) 程序存贮器一般是指 ROM 或EPROM
JMP @A+DPTR 转移到由 DPTR和A 的内容相加形成的地址处
相加形成的地址送 PC寄存器 DPTR 和A 都没有改变 这条指令常用于执行 查表功能在表内 DPTR指向表的基址 变址由A 表示,操作DPTR的指令如下所示:
INC DPTR DPTR加1
MOV DPTR #16 将16 位立即数送到 DPTR
然而DPTR 也与其他 CPU 寄存器如 A B PSW 一样被操纵为特殊功能寄存器 SFR
所有特殊功能寄存器通过各种指令 例如 PUSH 和MOV 存取字节 并采用 直接寻址方

16 位DPTR可被映像成两个特殊功能寄存器 用于字节寻址 这两个特殊功能寄存
器即为DPH 高位字节 地址为 83H 和DPL 低位字节 地址为 82H 指令如下
MOV DPTR #1234H 用立即数1234H装载DPTR
其功能等同于执行下面两条程序 但执行程序的时间和程序大小不相等
MOV DPH #12H 将立即数12H送到 DPTR 高字节 83H
MOV DPL #34H 将立即数 34H 送到 DPTR 低字节 82H

‘柒’ 51单片机执行以下语句后DPTR的内容为什么是39H

DPTR加载的其实是TAB的起始地址。
MAIN从0030H开始,后面5行指令,依次是2字节、3字节、1字节、1字节、2字节,所以TAB的起始地址是 0030H+2H+3H+1H+1H+2H = 0039H。

‘捌’ 51单片机中程序指针PC和数据指针DPTR各自有什么用途电路复位后,二者的值各是多 少

程序计数器PC(program Counter)
程序计数器在物理上是独立的,它不属于特殊内部数据存储器块中。PC是一个16位的计数器,

用于存放一条要执行的指令地址,寻址范围为64kB,PC有自动加1功能,即完成了一条指令的执行后,其内容自动加1。PC本身并没有地址,因而不可寻址,用户无法对它进行读写,但是可以通过转移、调用、返回等指令改变其内容,以控制程序按我们的要求去执行。

复位后为0000H(16位)

数据指针(DPTR)
数据指针为16位寄存器,编程时,既可以按16位寄存器来使用,也可以按两个8位寄存器来使用,即高位字节寄存器DPH和低位字节DPL。
DPTR主要是用来保存16位地址,当对64kB外部数据存储器寻址时,可作为间址寄存器使用,此时,使用如下两条指令:

MOVX A, @DPTR
MOVX @DPTR, A

在访问程序存储器时,DPTR可用来作基址寄存器,采用基址+变址寻址方式访问程序存储器,这条指令常用于读取程序存储器内的表格数据。

MOVC A, @A+@DPTR

复位后为0000H(16位)

‘玖’ 51单片机里面的地址指针DPTR和工作寄存器组有什么作用都有一些什么样的功能都用在什么地方

DPTR一般用于查表或访问外部RAM或ROM.

工作寄存器组用于中断时保存现场。

‘拾’ mcs51单片机中,dptr和sp分别是()的寄存器。a、dptr和sp均为8位 b、dptr为8

选择A
sp是8位的寄存器
汇编语言中SP是堆栈寄存器。堆栈——是一段按照后进先出(LIFO)原则组织起来的连续存储区域。用于程序保存或恢复数据,或用于子程序调用及中断响应时保护与恢复现场。SP是堆栈指针寄存器,存放着当前堆栈栈顶地址。
一般情况下,对SP有影响的指令,对SP的操作都是隐式的,就是说SP并不出现在指令操作数当中。

例如:
PUSH AX;累加器AX的内容压栈保存,(SP)=(SP)-2
POP BX;堆栈内保存的累加器AX的内容弹出到BX寄存器中,(SP)=(SP)+2

使用PUSH、POP指令使用堆栈,要注意进出栈的匹配,否则将引起不可预期的后果。

阅读全文

与51单片机中的dptr相关的资料

热点内容
各大网站的服务器地址 浏览:368
服务器连接不到因特网什么意思 浏览:739
如何在文件夹中显示页码 浏览:354
云服务器登不上qq 浏览:417
程序员四级工程师 浏览:715
薄荷app怎么把体重清零 浏览:644
草料二维码加密怎么制作 浏览:851
04s519隔油池图集pdf 浏览:242
程序员搞测试 浏览:552
苹果app应用隐藏了怎么办 浏览:660
PDF调取 浏览:199
独立柱加密需要什么条件 浏览:814
php培训出来找不到工作 浏览:106
小程序克隆源码 浏览:448
python整数整除负数 浏览:880
遮天用什么小说app看 浏览:645
什么可以发类似朋友圈的app 浏览:495
cmd查找命令行 浏览:661
如何申请域名需要虚拟服务器 浏览:497
气体流量的算法 浏览:634