访问手机版页面
51单片机的内部结构和程序执行过程解析
内容导读:

注:

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

51单片机是EPROM,所谓的EPROM是可擦除的只读存储器。可以把原来的程序擦除了,再写一个新的进去。

断电后是可以保存的,数据存储器(RAM)是不能保存的。

51单片机的内部结构和程序执行过程解析

RAM只能在程序执行的时候不断地重新存储定义的变量。如int x,int y

可以通过code这个指令来将定义的变量放在ROM,而不是RAM中,节省RAM资源

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

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

内部详细图示

51单片机的内部结构和程序执行过程解析

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

运算器:主要作用是进行加减乘除和逻辑运算

内部的结构可以上网查询

控制器:控制单片机的各种操作

程序执行过程

1.程序地址

程序开始的时候,要先知道第一条程序的地址,这个通过PC(程序计数器)知道。

比如刚开始的时候地址是0000H,这个是16进制的。

当这个地址送给地址寄存器后,即取出第一条指令后,PC自动加1,准备取出下一条指令。

51单片机的内部结构和程序执行过程解析

2.程度读取

地址寄存器知道指令的地址后,就从ROM(只读存储器)里面取出地址所指向的一条指令。

并把取出来的指令放到指令寄存器中,经过指令编码器编译

51单片机的内部结构和程序执行过程解析

3.数据处理

指令有可能要用到加减乘除和赋值语句的判断。经过指令编码器,就知道要取出那些定义的数据或者哪些赋值语句。

通过总线来调取我们要用到的数据。并通过运算器来运算。

51单片机的内部结构和程序执行过程解析

比如说我们定义了int x和int y,这两个数据放在RAM中。

当我们取出了一个a = x + y 的指令后,需要x和y的值来计算。

那么通过上一张图的取数据的过程后取出了x和y的数据

通过运算器来运算。

51单片机的内部结构和程序执行过程解析

如图,取出x和y进入黑色框(运算器)中来的到最终结果

最终的结果还会通过a这个变量存储在数据存储器(RAM)中

4.操作器件

当然,除了计算这种步骤外,还有一种情况就是来直接控制IO口的高低电平或者其他的器件了。

51单片机的内部结构和程序执行过程解析

来源;21ic

标签:SRAM存储器,51单片机,
来源:工程师周亮 作者:21ic 时间:2019/10/4 17:07:00
相关阅读
推荐阅读
阅读排行
最近更新
商品推荐