51单片机的简要图示

注:
1.ROM:只读存储器,单片机的只读存储区大多用于存储程序固又称程序存储器。

  • 51单片机是EPROM,所谓的EPROM是可擦除的只读存储器。可以把原来的程序擦除了,再写一个新的进去。
  • 断电后是可以保存的,数据存储器(RAM)是不能保存的。
  • RAM只能在程序执行的时候不断地重新存储定义的变量。如int x,int y
  • 可以通过code这个指令来将定义的变量放在ROM,而不是RAM中,节省RAM资源

2.RAM:随机存取存储器,用于存储定义的变量等,速度快

  • 51单片机的RAM存储容量远小于ROM,但是速度非常之快

内部详细图示

内部的结构看似十分复杂,但是大致上可以分为两个部分:运算器(红色框)和控制器(蓝色框)。

  • 运算器:主要作用是进行加减乘除和逻辑运算
    内部的结构可以上网查询
  • 控制器:控制单片机的各种操作

程序执行过程

1.程序地址
程序开始的时候,要先知道第一条程序的地址,这个通过PC(程序计数器)知道。
比如刚开始的时候地址是0000H,这个是16进制的。
当这个地址送给地址寄存器后,即取出第一条指令后,PC自动加1,准备取出下一条指令。

2.程度读取
地址寄存器知道指令的地址后,就从ROM(只读存储器)里面取出地址所指向的一条指令。
并把取出来的指令放到指令寄存器中,经过指令编码器编译

3.数据处理
指令有可能要用到加减乘除和赋值语句的判断。经过指令编码器,就知道要取出那些定义的数据或者哪些赋值语句。
通过总线来调取我们要用到的数据。并通过运算器来运算。

比如说我们定义了int x和int y,这两个数据放在RAM中。
当我们取出了一个a = x + y 的指令后,需要x和y的值来计算。
那么通过上一张图的取数据的过程后取出了x和y的数据
通过运算器来运算。

如图,取出x和y进入黑色框(运算器)中来的到最终结果
最终的结果还会通过a这个变量存储在数据存储器(RAM)中
4.操作器件
当然,除了计算这种步骤外,还有一种情况就是来直接控制IO口的高低电平或者其他的器件了。

说明

本单片机运作过程是笔者查阅了资料后所得,并非一定正确。如若不正,请指正。

相关资料:

嵌入式底层开发 - AIOT时代,嵌入式人才的破局之道! - 创客学院直播室​www.makeru.com.cn

嵌入式开发直播课 - 走进嵌入式 - 创客学院直播室​www.makeru.com.cn

单片机断电后不保存程序_51单片机运行过程相关推荐

  1. 单片机断电后不保存程序_为什么单片机语音芯片既有flash又有EEPROM

    为什么单片机语音芯片既有flash又有EEPROM 单片机语音芯片运行时的数据存在于RAM (随机存储器)中,停电后无法保留RAM的数据时,如何在停电后不丢失数据呢?这需要使用EEPROM和FLASH ...

  2. 单片机断电后不保存程序_法兰购买到货后直接入库保存?不不不,还需要做一件事情...

    法兰在管道工程中是较为常见的零件.在管道工程中,法兰主要用于管道的连接,在需要连接的管道,各安装一片法兰盘,低压管道可以使用丝接法兰,4公斤以上压力的使用焊合法兰:低压小直径有丝接法兰,高压和低压大直 ...

  3. IOS学习笔记05---C语言程序的开发运行过程

    IOS学习笔记05---C语言程序的开发运行过程 0 5.C语言3-C语言程序的开发运行过程 ----------------------------------------------------- ...

  4. 单片机消抖c语言程序,基于单片机定时器软件消抖C51程序研究

    向兵 杨述凯 摘 要:随着电子技术的发展,单片机的应用在教学及科技开发中越来越普遍,而针对单片机的开发环境而言,大多采用C51语法进行设计.按键的使用在大多数硬件设计里相当频繁,而按键的干扰处理可以使 ...

  5. 保存设置_如何设置石材雕刻机原点及断电后怎么保存原点坐标?

    一.设置石材雕刻机原点 不管石材雕刻机的控制系统是维宏的还是手柄控制的,我们在工作的时候都要确定一个点,所有程序里面的数据都是相对这一点来运行的,这就是我们经常提到的工件原点. 石材雕刻机 工件原点就 ...

  6. 单片机控制秒表C语言程序,89C51单片机秒表的设计(全文完整版)

    <89C51单片机秒表的设计.doc>由会员分享,可免费在线阅读全文,更多与<89C51单片机秒表的设计>相关文档资源请在帮帮文库(www.woc88.com)数亿文档库存里搜 ...

  7. 基于51单片机的数字电压表c语言程序,基于单片机的数字电压表(全文完整版)...

    <基于单片机的数字电压表.doc>由会员分享,可免费在线阅读全文,更多与<基于单片机的数字电压表>相关文档资源请在帮帮文库(www.woc88.com)数亿文档库存里搜索. 1 ...

  8. 单片机 中断秒表 c语言程序,51单片机c语言的秒表设计.doc

    51单片机c语言的秒表设计.doc 课程设计报告 基于AT89C51单片机的秒表设计 院 系 电子信息工程学院 专 业 电子信息工程 1 姓 名 摘 要 本设计是设计一个单片机控制的多功能秒表系统. ...

  9. 单片机c语言出租车计时程序,基于单片机的出租车计费(c语言).doc

    基于单片机的出租车计费(c语言) 基于单片机的出租车计费(c语言) 基于proteus仿真 一.设计要求: 1.用实现出租车计费器的设计. 出租车起步开始计程和计费,计程系统按实际公里数计程,计费系统 ...

最新文章

  1. 图神经网络从入门到入门
  2. Morph 3D拥有近千名艺术家,欲打造全球最大的VR虚拟化身服装库
  3. Cesium界面学习以及隐藏界面控件
  4. VS2010 VC++ 编译出错 ---error LNK2005: public: virtual __thiscall CMemDC::~CMemDC(void)
  5. AI理论知识整理(14)-矩阵的秩
  6. Oracle11gR2-聚簇因子浅析
  7. 鸡啄米vc++2010系列2(项目文件分析)
  8. 自定义控件SettingItemView
  9. 解释器模式 Interpreter
  10. linux分区合并不损坏系统,不损坏数据的情况下 linux磁盘如何扩展 LVM格式
  11. mysql三高讲解(二):2.1 索引组织表
  12. 实验2.4 使用系统函数pow(x,y)计算xy的值
  13. 设计模式(9)工厂模式(讲解+应用)
  14. 概率编程语言(Probabilistic Programming Languages)库 —— edward
  15. View-WebView获取url的title
  16. 2016服务器系统驱动,windows sever2016驱动大家是怎么装的啊
  17. FPGA经典设计:再读正点原子SDRAM控制器
  18. c++ mfc加载图片jpg,png,GIF格式
  19. android百度字体大小设置快捷键,(安卓)百度输入法定制版 — 清爽无广告
  20. html凹凸感设置,想让VRAY渲染的图有点凹凸效果怎么做?

热门文章

  1. 开机时进入 grub rescue>的解决方法
  2. Button中command后面函数添加参数解决方法
  3. 解决robotframework安装时提示wxPython not found问题
  4. Python 执行js的2种解决方案-乾颐堂
  5. 如何在Python中声明一个数组?
  6. python批量下载验证码,用来做验证码处理
  7. Kernel tasklet
  8. cesium按路径飞
  9. .NET(C#)有哪些主流的ORM框架,FreeSql,SqlSugar,Dapper,EF还是...
  10. 软件体系结构的第3次实验(软件体系结构风格之应用 )