存储器的总结

  • 格式:doc
  • 大小:36.00 KB
  • 文档页数:3

一,51单片机之所以跳开00~30H程序空间主要原因就是为了避开中断区,
其中00H为上电和系统复位后的程序地址指针,然后一般用一个长跳转指令跳到30以后的程序区,(当然如果你一共就几句或十几句的流水灯啊之类的简单程序直接在0000H处写也无所谓。


03H外部中断0入口,0BH定时器0入口,13H外部中断1入口,1BH定时器1入口
23H串口中断入口,2BH定时器2入口(仅52系列有定时器2)
如果使用的外部程序存储器,一般都是以KB为单位,没有以B为单位的,使用不用考虑这些~而且现在51单片机基本上都是内部带最少1K的程序存储器~有的甚至
达128KB所以,现在外部扩展程序存储器的已经几乎没有了~
二.ORG 0040H
SJMP INIT
ORG 0050H
INIT:SETB EA
程序中的SJMP INIT语句代码是否烧录在存储器中的0040H单元中,SETB EA语句是否烧录在存储器的0050H中,还是这两条语句是按顺序依次烧录在存储器中的?
回答你的,是的!!!
你ORG哪里,它就存哪里。

实际上,你不用中断。

程序可以直接写。

不用写ORG 。

程序可以直接从最前端存入。

实际上,只有当程序执行到SETB EA ,(中断开关ON时,)单片机才会在中断条件OK时跳到那几个中断专用地址:000B 0023等。

没有中断时,程序自然不会从半中间往那儿跳回。

所以没有中断那儿几个专用地址可以当正常地址存入。

程序也是从最前端开始逐步运行。

三,HEX文件是用16进制表示二进制的文件
它用两个字节表示一个字节,还加上许多控制字符
由于它是文本,还要加上车和换行
所以比实际的数据大
你可以用一个工具看把它转成BIN文件,看一下大小
不过你能ISP下去,ISP软件没提示超出程序范围,应该可以放心
四,ROM是装程序的,断电还保留,而且只能读,要改只能通过下载程序的时候才改变。

RAM是在单片机工作计数的时候用的,断电就清0了。

那里的64K是指外部最大扩展。

S51有4Kflash 2051有2Kflash。

51是哈佛结构的,RAM与ROM分开的。

所以,这里的64K全是指ROM。

①片内、片外统一编址0000H~FFFFH 的64KB 程序存储器地址空间。

②64KB 片外数据存储器地址空间,地址也从0000H~FFFFH。

这里就是指那64K装程序的ROM
③256B 片内数据存储器地址空间,地址从00H~FFH。

这里是指RAM
别搞混了,呵呵。

五.访问外部RAM使用的指令是MOVX,控制信号为RD和WR,内部直接用MOV
访问ROM使用指令MOVC,控制信号为PSEN。

片内还是片外由EA/控制。

EA/=0 片外EA/=1片内片外都可以,低地址是片内,内部不够时自动访问外部地址
六,单片机通过地址总线,连接到各个外部芯片。

各个外部芯片的最高地址和最低地址,取决于它们和地址总线的连接线路。

当单片机地址线,输出:
0000 0000 0000 0000~0001 1111 1111 1111 的时候,
使得某块芯片工作了,那么该芯片的最小地址就是0000H,最高地址就是1FFFH。

如果另一块芯片,在单片机地址线,输出:
0010 0000 0000 0000~0010 1111 1111 1111
的时候工作,那么该芯片的最小地址就是200H,最高地址就是2FFFH
七.最佳答案
检举
冯·诺伊曼结构是指数据和程序共用存储器和总线的结构。

但是不包括外存。

硬盘和软盘包括U盘里的程序和数据是不会直接进入内存执行的。

都要通过操作系统把上面的程序调入内存才能执行。

现在除了台式电脑和服务器工作站以外,绝大多数的嵌入式系统都实用哈佛结构,也就是程序和数据各自有独立的总线和存储器。

这样的系统,内置或者挂到程序总线上的外置ROM,Flash都是作为程序存储器的。

而挂到数据总线上的就作为数据存储器。

有些系统需要查表等等,也会在数据总线上挂ROM,也作为数据存储器用。

手机作为典型的嵌入式系统,绝大部分是用哈佛结构的。

它的操作系统是写到程序ROM里的。

而它的RAM是操作系统运行存储临时数据的。

有些手机操作系统支持外存,比如Windows Mobile,就好比计算机操作系统支持硬盘一样,可以解释执行扩展卡上的程序了。

首先单片机和电脑不是一个层次的。

单片机大体两种结构,另一种哈佛结构。

电脑为什么会有硬盘和内存呢,就是为了扩大容量,这就像相当于单片机加外部ROM,RAM,EEPROM。

理论上,电脑的cpu也是有ram和rom,只不过很小,一般都是KB级别,rom用来存储bottload,引导程序的。

首先搞清楚常说的冯诺依曼结构是什么,用在PC机上就是指CPU+存储器+总线的结构;而51中的ROM和RAM都是内存(电脑中的硬盘是外存),我们把ROM和RAM相对CPU统一编址的(共用总线)结构称为哈弗结构,这样高的效率就弥补了内存空间不足;
X86系列使用的是独立编址,也就是说有专门的指令系统用以区分是对ROM还是对RAM 操作,数据总线和地址总线是分时复用的,比如PC机的IN/OUT指令,这种结构称为普林斯顿结构,也叫做冯诺依曼结构;。