C51汇编语言寻址方式,单片机学习:51单片机寻址方式详解
原标题:单片机学习:51单片机寻址方式详解
51单片机是对所有兼容Intel 8031指令系统的单片机的统称。该系列单片机的始祖是Intel 8031单片机,后来随着Flash rom 技术的发展,8031单片机取得了长足的发展,成为了应用最广泛的8位单片机之一。51单片机是基础入门的一个单片机,并且还是应用最广泛的一种。今天我们主要讲讲51单片机的寻址方式。
【指令】
指令是人们向计算机发的一种命令,一条指令对应着一种操作。
【指令系统】
CPU所能执行的全部指令的集合。CPU能够执行多少条指令是由CPU的内部结构所决定的。不同的CPU,其指令系统不同。
【指令的表示方法】
指令在机器中必须以机器码(二进制码)的形式出现。在书写指令时,通常有两种方法:
1. 在计算机发展的初期,人们用机器码书写指令,这一阶段成为机器语言阶段。
优点:用机器码书写的程序,计算机可以直接识别和运行。
缺点:书写时容易出错,不容易记忆。
2. 为了克服机器语言的缺点,人们用符号书写指令:指令由操作码和操作数组成。
优点:容易理解和记忆。
缺点:计算机不能直接识别和运行。
汇编语言程序必须转换成机器语言程序,转换方法有两种:
手工转换:查表 符号指令——机器码指令——MEM
汇编程序:符号指令——机器——机器码指令——MEM
【寻址方式】
寻址方式由操作码和操作数组成。
操作码:决定CPU执行何种操作
操作数:就是操作对象,无论何种指令其操作的对象都是数据。
数据:数据在指令中有2种表示方法:1.数本身;2.数所在的地方
指出操作数所在的方式就是寻址方式。
【51单片机寻址的方式】
每一种计算机都具有多种寻址方式,寻址方式的多少是反映指令系统优劣的主要指标之一。
51单片机有7种寻址方式:
1. 立即寻址
2. 直接寻址
3. 寄存器间址
4. 寄存器寻址
5. 变址寻址(基址寄存器+变址寄存器间接寻址)
6. 相对寻址
7. 位寻址
【立即寻址】
指令的操作数存放在程序存储器中,操作数紧跟在操作码后面。
寻址空间:程序存储器
指令形式:操作码——OP 立即数——#data
注意:#表明其后跟的是立即数,立即数就是数字量本身
【直接寻址】
在指令中直接给出操作数的真实地址,操作码后面紧跟一个实际操作数地址
寻址空间:内RAM的低128字节,特殊功能寄存器SFR区
指令的三种形式:
【寄存器寻址】
当前选定的寄存器内容就是实际操作数
寻址空间:R0~R7,由RS0、RS1确定寄存器区
指令的三种形式:
【寄存器直接寻址】
寄存器中的内容是一个地址,由该地址单元寻址到所需的操作数
寻址空间:内部RAM
指令的三种形式:
注意:“间接”表示某寄存器中的“内容”只是一个“单元地址”,这个地址单元中存放的数据才是要找的“操作数”。
符号“@”表示“在....”,其含义与读音皆同“at”。
规定工作寄存器只有R0和R1采用与间接寻址。
规定用MOV指令访问片内RAM,用MOVX访问外部RAM。
【基址寄存器加变址寄存器间接寻址】
以DPTR或PC作基址寄存器,A作变址寄存器两者相加形成操作数地址。
寻址空间:程序存储器
指令形式:操作码
【相对寻址】
以当前PC值为基准地址,加上指令的偏移量“rel”,结果为目标地址。
Rel为有符号补码数,范围:-128~+127
寻址空间:程序存储器
指令的三种形式:一般为双字节或三字节指令
注意:“当前PC值”值程序中下一条指令所在的首地址,是一个16位数;符号“rel”在实际编程中通常用标号代替。
【位寻址】
以访问触发器的方式,对内部RAM、SFR的位地址空间进行访问,称为位寻址,位寻址用于布尔指令。
寻址空间:片内RAM的20H~2FH字节地址
注意:位地址里的数据只可能是一个0或1
鼎酷IOT部落(dkiot888)是鼎易鸿基精心出品,专注于为大家提供物联网精髓的新媒体平台。我们关注物联网行业最新动态,专注做您的物联网口袋知识库,旨在搭建共同学习的知识平台,让您学得方便,聊得畅快;鼎酷IOT部落用心做大家的“良仆”。各项内容鼎酷IOT 部落微信公众号同步。物联网行业顶尖产品咨询也欢迎留言。返回搜狐,查看更多
责任编辑:
C51汇编语言寻址方式,单片机学习:51单片机寻址方式详解相关推荐
- 单片机遥控器c语言程序,单片机学习型遥控器程序详解(完整版)
STC89C52学习型遥控器,可存八个红外遥控信息,只要再把按键用定时器中断2完成就可以用于商业生产. RXIN BIT P2.0 TXZAI BIT P2.2 TXOUT BIT P2.1 KEY_ ...
- 如何自己学习51单片机
第1章 如何学习单片机 在错误的道路上日夜兼程,最终也无法成功,方法和思路绝对是最重要的.一些学技术的同学,往往看到这类章节会直接跳过去,因为大多数类似章节都是废话连篇.但是,今天在这里作者可以很负责 ...
- 零基础学习51单片机
零基础学习51单片机 前言 51单片机是一款非常经典的8位单片机,广泛应用于各种嵌入式系统和电子产品中.本文将从零开始,以简明易懂的方式介绍51单片机的基本原理.基本语法和应用. 什么是单片机 单片机 ...
- 51单片机c语言学习感想,学习51单片机心得体会
在这里给大家分享一下学习51单片机心得体会: 1.我从不说51是基础,如果我这么说,也请把这句话理解为微机原理是基础. 2.对51单片机的操作本质上就是对寄存器的操作,对其他单片机也是如此.库只是一个 ...
- 用 C学习51单片机——记录 4、中断系统 (1)外部中断
用 C学习51单片机--记录 4.中断系统 用 C 学习51单片机过程与自我拓展--记录(STC89C52芯片) 前言--其实51并不太难,多看 多写代码,多调试,就一定会有所感悟. 所以我在此留下一 ...
- 【51单片机】51单片机学习资料合集
[51单片机]51单片机学习资料合集 资源文件架构 一次全部保存是保存不了的,超过了文件上限,需要分批保存,对于爱好学习和感兴趣学习51单片机的人来说是一波很不错的福利,希望大家多多支持. 51程序 ...
- 【手把手教你学习51单片机】74HC138 三八译码器的应用
注:本文章转载自<手把手教你学习51单片机>!因转载需要原文链接,故无法选择转载! 如若侵权,请联系我进行删除!上传至网络博客目的为了记录自己学习的过程的同时,同时能够帮助其他一同学习的小 ...
- 【STC89C52】学习51单片机的必备电子电路知识基础
电子电路是学习51单片机的基础, 如果能把以下几个模块弄清楚学习51单片机就不成问题啦. 目录 1.电平 2.单片机IO口 3.电阻 4.电容 5.电路原理图 编辑 6.单片机最小系统结构 7.单片 ...
- pic单片机与51单片机,谁更易于学习?
pic 单片机是学单片机人士必须掌握的一款单片机,对于 pic 单片机,小编层带来诸多介绍. 如果你对 pic 单片机很感兴趣,不妨翻阅往期文章.本文对 pic 单片机的介绍内容为:pic 单片机与 ...
- 【深入学习51单片机】二、一个极简RTOS源码分析
目录 一.书接上回 二.初始化过程 三.任务的创建 四.任务的切换 五.任务的等待(系统延时) 一.书接上回 上回写了一个测试程序,可以直观的体会PC指针和堆栈指针的变化和影响.这章写下参考程序的过程 ...
最新文章
- helm部署仓库中没有的包_Kubernetes的Helm软件包管理器简介
- axure rp pro 6.5
- Cisco Catalyst交换机密码恢复策略
- Algorithm:C++语言实现之链表相关算法(链表相加、链表的部分翻转、链表划分、链表去重、重复元素全部删除)
- python编程基础怎么学英语_英语不行而且从没碰过编程,如何0基础学python?
- OpenCV相机位移引起的单应性的实例(附完整代码)
- LeetCode OJ 147. Insertion Sort List
- 学术诚信的重要性_申论作文开头之诚信
- Hadoop+GPU强强联手的性能探索
- Java-数组的使用
- 布丁机器人APP响应超时_常见问题解答
- pg数据库中两个字段相除
- 照相长度测试软件,拍张照片就知道你的长度了,还要什么测量工具!
- gopro7怎么回看视频_gopro7推荐帧数设置 gopro7视频格式设置
- html5一个圆圈旋转,Javascript实现可旋转的圆圈实例代码
- IC 拔取器 rework station
- 实现公网访问树莓派4B(花生壳内网穿透)
- Robot Framework RIDE工具闪退处理
- MATLAB信号处理——信号与系统的分析基础(2)
- 将任意自然数分解为质数的乘积(Java实现)
热门文章
- 概率密度变换公式 雅可比矩阵_雅克比行列式在连续型随机变量函数分布密度中的应用...
- 23种设计模式分析(7):行为型模式
- flag的标志判断应用
- Python敏感词汇判断案例分析
- SpringBoot后端框架整合前端Vue系统框架
- 梯度消失、梯度爆炸及其表现和解决方法
- Caj 转到 Word里的好方法
- 一级计算机电子表格试题,计算机等级一级MS Office考题:第一套电子表格
- 2023最新SSM计算机毕业设计选题大全(附源码+LW)之java超市管理系统ztnrw
- 第50讲-基础练习-作业讲解