预览加载中,请您耐心等待几秒...
1/4
2/4
3/4
4/4

在线预览结束,喜欢就下载吧,查找使用更方便

如果您无法下载资料,请参考说明:

1、部分资料下载需要金币,请确保您的账户上有足够的金币

2、已购买过的文档,再次下载不重复扣费

3、资料包下载后请先用软件解压,在使用对应软件打开

单片机存储器的结构单片机内部存储结构分析我们来思考一个问题当我们在编程器中把一条指令写进单片要内部然后取下单片机单片机就可以执行这条指令那么这条指令一定保存在单片机的某个地方并且这个地方在单片机掉电后依然可以保持这条指令不会丢失这是个什么地方呢?这个地方就是单片机内部的只读存储器即ROM(READONLYMEMORY)。为什么称它为只读存储器呢?刚才我们不是明明把两个数字写进去了吗?原来在89C51中的ROM是一种电可擦除的ROM称为FLASHROM刚才我们是用的编程器在特殊的条件下由外部设备对ROM进行写的操作在单片机正常工作条件下只能从那面读不能把数据写进去所以我们还是把它称为ROM。数的本质和物理现象:我们知道计算机能进行数学运算这可令我们非常的难以理解计算机吗我们虽不了解它的组成但它总只是一些电子元器件怎么能进行数学运算呢?我们做数学题如37+45是这样做的先在纸上写37然后在下面写45然后大脑运算最后写出结果运算的原材料:37、45和结果:82都是写在纸上的计算机中又是放在什么地方呢?为了解决这个问题先让我们做一个实验:这里有一盏灯我们知道灯要么亮要么不亮就有两种状态我们能用’0’和’1’来代替这两种状态规定亮为’1’不亮为’0’。现在放上两盏灯一共有几种状态呢?我们列表来看一下:状态表达00011011请大家自已写上3盏灯的情况000001010011100101110111我们来看这个000001101不就是我们学过的的二进制数吗?本来灯的亮和灭只是一种物理现象可当我们把它们按一按的次序排更好后灯的亮和灭就代表了数字了。让我们再抽象一步灯为什么会亮呢?看电路1是因为输出电路输出高电平给灯通了电。因此灯亮和灭就能用电路的输出是高电平还是低电平来替代了。这样数字就和电平的高、低联系上了。(请想一下我们还看到过什么样的类似的例程呢?(海军之)灯语、旗语电报甚至红、绿灯)什么是位:通过上面的实验我们已经知道:一盏灯亮或者说一根线的电平的高低能代表两种状态:0和1。实际上这就是一个二进制位因此我们就把一根线称之为一“位”用BIT表示。什么是字节:一根线能表于0和1两根线能表达00011011四种状态也就是能表于0到3而三根能表达0-7计算机中常常用8根线放在一起同时计数就能表过到0-255一共256种状态。这8根线或者8位就称之为一个字节(BYTE)。不要问我为什么是8根而不是其它数因为我也不知道。(计算机世界是一本人造的世界不是自然界很多事情你无法问为什么只能说:它是一种规定大家在以后的学习过程中也要注意这个问题)存储器的工作原理:1、存储器构造存储器就是用来存放数据的地方。它是利用电平的高低来存放数据的也就是说它存放的实际上是电平的高、低而不是我们所习惯认为的1234这样的数字这样我们的一个谜团就解开了计算机也没什么神秘的吗。图2〈存储器构造〉图3〈存储器构造〉让我们看图2。单片机里面都有这样的存储器这是一个存储器的示意图:一个存储器就象一个个的小抽屉一个小抽屉里有八个小格子每个小格子就是用来存放“电荷”的电荷通过与它相连的电线传进来或释放掉至于电荷在小格子里是怎样存的就不用我们操心了你能把电线想象成水管小格子里的电荷就象是水那就好理解了。存储器中的每个小抽屉就是一个放数据的地方我们称之为一个“单元”。有了这么一个构造我们就能开始存放数据了想要放进一个数据12也就是00001100我们只要把第二号和第三号小格子里存满电荷而其它小格子里的电荷给放掉就行了(看图3)。可是问题出来了看图2一个存储器有好多单元线是并联的在放入电荷的时候会将电荷放入所有的单元中而释放电荷的时候会把每个单元中的电荷都放掉这样的话不管存储器有多少个单元都只能放同一个数这当然不是我们所希望的因此要在结构上稍作变化看图2在每个单元上有个控制线我想要把数据放进哪个单元就给一个信号这个单元的控制线这个控制线就把开关打开