计算机如何存储0和1

都知道计算机用二进制来存储数据,但是计算机是怎么存储0和1的呢?这样一个基础问题,我身为一个计算机专业的大三学生也是在今天才搞懂原理。下面,我来总结一下。

主存储器中分为存储体,MAR(地址寄存器),MDR(数据寄存器)。

其中存储体就是用来存储0和1的。存储体由多个存储单元构成,存储单元又由多个存储元构成。

存储元

下图显示就是存储元:

一个存储元就可以存储一个0或1,由一个电容和MOS管组成。

MOS管就是一个半导体元件,相当于一个可以用电控制的开关,当加电压到阈值,就可以连通导电,否则就不导电。

电容就是两块金属板和中间的绝缘材料组成。

可以看到,一端金属板接地,一端金属板接MOS管。接地那边就是低电压。当有电压高于MOS管的阈值,连接MOS管那边的金属板就会有电压,而接地的那边没有,从而电容两金属板之间形成了电压差,就会导致电容中电荷移动,就会给电容充电,而电信号过去后,由于电压低于阈值,MOS管绝缘,电容中的电就会被保存,从而记录下了1。

就通过电容中是否保存了电荷两种状态来区分0,1。

存储单元

再将多个存储元连接(一般是8个或者16个)形成存储单元,就可以一次读取多个0||1

图中红色线将一排8个存储元的MOS管连通,所以给一次电信号,就会通过红色的线将一排的MOS管连通,每个存储元就会将电容中存储电荷流出到对应的绿色线中。只用判断绿色的线是否有电流就能分辨出0,1信息。

存储体

多个存储单元就构成了存储体。

能够一次读出的存储单元信息,就是一个存储字,字长就是存储单元所含的存储元的个数,一个存储元就是一个bit,所以上图中的存储字长就是8bit。

一个字节=8bit,一个存储字长不一定是8bit,得看由几个存储元构成。

说完了存储体,你还记得文章开头说的主存储器组成部分么?是的还有MAR和MDR

MAR和MDR

MAR地址寄存器,通过地址总线和cpu相连,当cpu传来一个地址,想要读取其地址上的数据时,就会将地址信息传给MAR,MAR再通过译码器,将地址信息译码为存储体总对应地址的自选线序号,也就是某一个存储单元的连通线(之前图中的红线)。给其高电压,输出得到一个存储字,将此存储字的数据存入MDR数据寄存器中,再通过数据总线将读取的存储字传回cpu。

  • 6
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值