【单片机原理及接口技术】【理解】七种寻址方式 您所在的位置:网站首页 总结七种寻址方式 【单片机原理及接口技术】【理解】七种寻址方式

【单片机原理及接口技术】【理解】七种寻址方式

2024-06-27 11:58| 来源: 网络整理| 查看: 265

文章目录 七种寻址方式1、寄存器寻址2、直接寻址(操作数是片内RAM)3、立即数寻址4、寄存器间接寻址(两把抽屉两把钥匙,出门只带1把就行)5、变址寻址(基址寄存器 + 变址寄存器间接寻址)6、相对寻址7、位寻址(片内RAM(20H~2FH)某一单元中的一位) 每天进步一点点 笔记仅供自学,用来回看复习,不一定适合你,如有错误请指出。

七种寻址方式 1、寄存器寻址

由指令指出寄存器组R0~R7或者其它寄存器(仅 A,B,DPTR,Rn 4个)的内容 作为操作数。

MOV A, R0; (A)=(R0) -----将 R0地址上的内容赋给 A MOV P1, A ; (A)=(P1) ADD A,R0; (A)=(A)+(R0) ----- 将R0地址上的内容 与 A地址上的内容相加 再赋给 A INC Rn ; INC是自加一的作用 (Rn) = (Rn)+1 Rn = R0…R7 ,三位二进制来表示

2、直接寻址(操作数是片内RAM)

指令中所给出的操作数是片内RAM单元的地址。在此地址单元中存放着一个被操作的数。

MOV A,40H ; A = (40H) MOV A, 3AH ;(A) = (3AH) MOV A,P1 ;(A) = (P1口) 或者写成 MOC A, 90H ;90H是P1口的地址

注意: 1.给的是地址,但是取的是其中的内容。 2.直接寻址的地址占一字节,故一条直接寻址方式的指令至少占内存2个单元。

3、立即数寻址

指令操作码后面紧跟的是一字节或两字节操作数,用#表示,以区别直接地址。

MOV A, 3AH ;(A) = (3AH) ----此处的3AH 指的是3AH单元里的内容 MOV A, #3AH ;(A) = 3AH ----把3AH这个数本身送累加器A。

89c51/s51 有1条指令要求操作码后面紧跟的是 2字节立即数

MOV DPTR, #DATA16 MOV DPTR, #2000H ; (DPTR)= 2000H 操作码是8位,20 00 是16位

4、寄存器间接寻址(两把抽屉两把钥匙,出门只带1把就行)

操作数的地址事先存放于某个寄存器中,寄存器间接寻址是把指定寄存器的内容作为地址,由该地址所指定的单元内容作为操作数。

MOV A,@R0 ;-----将片内RAM 65H单元的内容 47H 送 A ,R0中的内容为 65H

注意: 1.访问片内RAM 低128字节和片外RAM低地址的256个单元时,用R0或R1作地址指针; 2.在访问全部64KB外部RAM时,使用DPTR作地址指针进行间接寻址。

5、变址寻址(基址寄存器 + 变址寄存器间接寻址)

变址寻址是以某个寄存器的内容为基地址,然后再这个基地址的基础上加上地址偏移量形成真正的操作数地址。 A为变址寄存器, 数据指针 DPTR 或 PC 为基址寄存器,地址偏移量是累加器A的内容。 以DPTR 或 PC 的内容与累加器A 的内容之和作为操作数的16位程序存储器地址。

MOVC A, @A+DPTR ; (A) = ((A)+(DPTR))

注意: 1.特征是带有 @; 2.变址寻址方式只能访问程序存储器; 3.多用于查表操作。

6、相对寻址

只出现在相对转移指令中。指令执行时,是以当前的 PC值加上指令中规定的偏移量 rel 而形成实际的转移地址。 一般把相对转移指令操作码所在的地址称为源地址,转移后的地址称为目的地址 所以有: 目的地在 = 源地址 + 2(相对转移指令字节数) + rel

设rel=75H,CY =1 JC rel 源地址为1000H,转移的目标地址是1077H。

7、位寻址(片内RAM(20H~2FH)某一单元中的一位)

采用位寻址方式的指令的操作数将是8位二进制数中的1位。 注意:内RAM有2个区域可以位寻址: 1.20F~2FH 的16个单元中的128位; 2.字节地址能被8整除的特殊功能寄存器(SFR)。

每天进步一点点 笔记仅供自学,用来回看复习,不一定适合你,如有错误请指出。


【本文地址】

公司简介

联系我们

今日新闻

    推荐新闻

    专题文章
      CopyRight 2018-2019 实验室设备网 版权所有