计算机内部电路不同,它是以微处理器为核心,都要与微处理器相连

我们平常老是讲8051,又有什么8031,现在又有89C51,89s51它们之间究竟是什么关系?

  MCS51是指由美国INTEL公司生产的一系列单片机的总称,这一系列单片机包括了好些品种,如8031,8051,8751,8032,8052,8752等,其中8051是最早最典型的产品,该系列其它单片机都是在8051的基础上进行功能的增、减、改变而来的,所以人们习惯于用8051来称呼MCS51系列单片机,而8031是前些年在我国最流行的单片机,所以很多场合会看到8031的名称。

590e19960d7c93ff9299727941aa3215.png

  INTEL公司将MCS51的核心技术授权(卖)给了很多其它公司,所以有很多公司在做以8051为核心的单片机,当然,功能或多或少有些改变,以满足不同的需求,其中89C51就是这几年在我国非常流行的单片机。至于国内用到的很多的AT系列的单片机其实就是ATMEL公司在8031内核之外添加其他功能生产了系列的单片机。

文章相对比较长,字数比较多,大家可以先打开头像关注我,之后慢慢看,///插播一条:我自己在今年年初录制了一套还比较系统的入门单片机教程,想要的同学找我拿就行了,私信我就可以哦~点我头像左下角黑色字体加我也能领取哦///

  这里要补充说明下,最先出现先的单片机其实是Intel公司的8031单片机,他是单片机的鼻祖,但是它本身是没有内部程序存储器的,之后随着flash ROM技术的发展,出现了能够存储程序的8051系列单片机

在单片机中,基本上有三类信息在流动:

1.一类是数据信息,即各种原始数据、中间结果、程序(命令的集合)等。这样要由外部设备通过“口”进入单片机,再存放在存贮器中,在运算处理过程中,数据从存贮器读入运算器进行运算,运算的中间结果要存入存贮器中,或最后由运算器经“出入口”输出。

2.第二类是控制信息,用户要单片机执行的各种命令(程序)也以数据的形式由存贮器送入控制器,由控制器解读(译码)后变为各种控制信号,以便执行诸如移位、运算、转移等功能的各种命令。所以,这一类信息就称为控制命令,即由控制器去控制运算器一步步地进行运算和处理,又控制存贮器的读(取出数据)和写(存入数据)等。

deb8c75d3ed681a0c690885e23c109e3.png

扫描二维码关注公众号,回复: 14232265 查看本文章

3. 第三类信息是地址信息,其作用是告诉运算器和控制器在何处去取命令取数据,将结果存放到什么地方,通过哪个口输入和输出信息等。

单片机各部分是通过内部的总线有机地连接起来的,总线(AB、CB和DB):

一个电路是由元器件通过电线连接而成的。但计算机内部电路却不一样,它是以微处理器为核心,各器件都要与微处理器相连,各器件之间的工作必须相互协调,所以需要的连线会很多很多。如果仍如同模拟电路一样 ,在微处理器和器件间单独连线,则线的数量将多得惊人。为此在微处理机中引入了总线概念,各个器件共同享用连线,所有器件的8根数据线全部接到8根公用的线上,即相当于各个器件并联起来。但是,如果仅这样还不行,比如的话,如果有两个器件同时送出数据,一个为0,一个为1,那么,接收方接收到的究竟是什么呢?这种情况是是不允许的,所以要通过控制线进行控制,使器件分时工作,任何时候只能有一个器件发送数据(可以有多个器件同时接收)。器件的数据线也就被称为数据总线(DB),器件所有的控制线被称控制总线(CB)。

在单片机内部或者外部存储器及其它器件中有存储单元,这些存储单元要被分配地址,才能使用,分配地址也是以电信号的形式给出的,由于存储单元比较多,所以用于地址的线也较多,这些线被称为地址总线(AB)。

5b7179ab8a04437311af5b19fb6df2d2.png

对单片机感兴趣的朋友可以找我我录制了一些关于单片机的入门教程有需要的童鞋找我拿就行私信我“林老师”就可以拿点击打开我的头像就能领取

数据、地址、指令放在一起:

之所以将这三者放在一起,是因为这三者的本质都是一样的─数字,或者说是‘0’和‘1’组成的序列。换言之,地址、指令也都是数据。

指令由单片机芯片的设计者规定的一种数字,它与我们常用的指令助记符有着严格的一一对应关,不可以由单片机的开发者更改。

地址:是寻找单片机内部、外部的存储单元、输入输出口的依据,内单元的地址值已由芯片设计者规定好,不可更改,外部的单元可以由单片机开发者自行决定,但有一些地址单元是一定要有的(详见程序的执行过 程)。

09d4b84d0914118cd1b37011d7df3d4e.png

数据:这是由微处理机处理的对象,在各种不同的应用电路中各不相同,一般而言,被处理的数据可能有这么几种情况:

1地址(如MOV DPTR,#1000H),即地址1000H送入DPTR。

2方式字或控制字(如MOV TMOD,#3),3即是控制字。

3常数(如MOV TH0,#10H)10H即定时常数。

4实际输出值(如P1口接彩灯,要灯全亮,则执行指令:MOV P1,#0FFH,要灯全暗, 则执行:MOV P1,#00H)这里0FFH和00H都是实际输出值。又如用于LED的字形码,也是实际输出的值。理解了地址、指令的本质,就不难理解程序运行过程中为什么会跑飞。

好了,这期分享就到这里啦,觉得对屏幕前的你有帮助的麻烦一键三连,点赞收藏加关注哦,有问题的朋友也可以在评论区评论,或者私信我

猜你喜欢

转载自blog.csdn.net/linlaoshi2009/article/details/124971085