C51汇编语言寻址方式,单片机学习:51单片机寻址方式详解

原标题:单片机学习:51单片机寻址方式详解

397ac68e53e642d6ddc7b19c682e582c.png

51单片机是对所有兼容Intel 8031指令系统的单片机的统称。该系列单片机的始祖是Intel 8031单片机,后来随着Flash rom 技术的发展,8031单片机取得了长足的发展,成为了应用最广泛的8位单片机之一。51单片机是基础入门的一个单片机,并且还是应用最广泛的一种。今天我们主要讲讲51单片机的寻址方式。

【指令】

指令是人们向计算机发的一种命令,一条指令对应着一种操作。

【指令系统】

CPU所能执行的全部指令的集合。CPU能够执行多少条指令是由CPU的内部结构所决定的。不同的CPU,其指令系统不同。

【指令的表示方法】

指令在机器中必须以机器码(二进制码)的形式出现。在书写指令时,通常有两种方法:

1. 在计算机发展的初期,人们用机器码书写指令,这一阶段成为机器语言阶段。

优点:用机器码书写的程序,计算机可以直接识别和运行。

缺点:书写时容易出错,不容易记忆。

2. 为了克服机器语言的缺点,人们用符号书写指令:指令由操作码和操作数组成。

优点:容易理解和记忆。

缺点:计算机不能直接识别和运行。

汇编语言程序必须转换成机器语言程序,转换方法有两种:

手工转换:查表 符号指令——机器码指令——MEM

汇编程序:符号指令——机器——机器码指令——MEM

ef29b432d0e28e071c629b1a5c4bca0d.png

【寻址方式】

寻址方式由操作码和操作数组成。

操作码:决定CPU执行何种操作

操作数:就是操作对象,无论何种指令其操作的对象都是数据。

数据:数据在指令中有2种表示方法:1.数本身;2.数所在的地方

指出操作数所在的方式就是寻址方式。

1810a985e76d10624f45ff709fb65047.png

【51单片机寻址的方式】

每一种计算机都具有多种寻址方式,寻址方式的多少是反映指令系统优劣的主要指标之一。

51单片机有7种寻址方式:

1. 立即寻址

2. 直接寻址

3. 寄存器间址

4. 寄存器寻址

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

6. 相对寻址

7. 位寻址

639eab96da82202991c5a2b9c6cd5c92.png

【立即寻址】

指令的操作数存放在程序存储器中,操作数紧跟在操作码后面。

寻址空间:程序存储器

指令形式:操作码——OP 立即数——#data

注意:#表明其后跟的是立即数,立即数就是数字量本身

【直接寻址】

在指令中直接给出操作数的真实地址,操作码后面紧跟一个实际操作数地址

寻址空间:内RAM的低128字节,特殊功能寄存器SFR区

指令的三种形式:

71da1a49c7c47ba97e034309cdea102a.png

【寄存器寻址】

当前选定的寄存器内容就是实际操作数

寻址空间:R0~R7,由RS0、RS1确定寄存器区

指令的三种形式:

df557dde0073abcfbe67b2849bb33a94.png

【寄存器直接寻址】

寄存器中的内容是一个地址,由该地址单元寻址到所需的操作数

寻址空间:内部RAM

指令的三种形式:

db97e1341bce11b312b216ee9ee1850c.png

注意:“间接”表示某寄存器中的“内容”只是一个“单元地址”,这个地址单元中存放的数据才是要找的“操作数”。

符号“@”表示“在....”,其含义与读音皆同“at”。

规定工作寄存器只有R0和R1采用与间接寻址。

规定用MOV指令访问片内RAM,用MOVX访问外部RAM。

【基址寄存器加变址寄存器间接寻址】

以DPTR或PC作基址寄存器,A作变址寄存器两者相加形成操作数地址。

寻址空间:程序存储器

指令形式:操作码

【相对寻址】

以当前PC值为基准地址,加上指令的偏移量“rel”,结果为目标地址。

Rel为有符号补码数,范围:-128~+127

寻址空间:程序存储器

指令的三种形式:一般为双字节或三字节指令

232dbeb5125422d5fbdc5df5a32e3327.png

注意:“当前PC值”值程序中下一条指令所在的首地址,是一个16位数;符号“rel”在实际编程中通常用标号代替。

【位寻址】

以访问触发器的方式,对内部RAM、SFR的位地址空间进行访问,称为位寻址,位寻址用于布尔指令。

寻址空间:片内RAM的20H~2FH字节地址

960bb08ae9299decb293c5f6354d6eed.png

注意:位地址里的数据只可能是一个0或1

鼎酷IOT部落(dkiot888)是鼎易鸿基精心出品,专注于为大家提供物联网精髓的新媒体平台。我们关注物联网行业最新动态,专注做您的物联网口袋知识库,旨在搭建共同学习的知识平台,让您学得方便,聊得畅快;鼎酷IOT部落用心做大家的“良仆”。各项内容鼎酷IOT 部落微信公众号同步。物联网行业顶尖产品咨询也欢迎留言。返回搜狐,查看更多

责任编辑:

  • 1
    点赞
  • 10
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值