计算机存储知识科普

——计算机,我的理解,就是一种用于数据(信息)处理的机器,它的功能实现过程完全可以概括为:数据(信息)输入,数据(信息)处理,数据(信息)输出。

数据(信息)需要存储。那数据是怎么存储的?对于我们而言,所谓的数据的外在表现形式有文字,图像,声音等等。但计算机其实就是一个机器,它不可能直接去存储这些抽象的东西。所以,它采用了一种粗暴有效的方式来进行存储。

第一部分 数据存储的形式


无论是计算机的内存还是硬盘,数据的存储都是按照[0,1]这种基本单元形式来存储的,其一个单元叫做一位(Bit,比特)。我们将这样的8位叫做1个字节(Byte)。
具体的换算如下:
1Byte = 8 Bit
1KB = 1024Byte
1MB = 1024KB
1GB = 1024MB
1TB = 1024GB
1PB = 1024TB
1EB = 1024PB
想一下,一个基本单元有[0,1]两种表达形式,2个基本单元则有2的2次方=4种表达形式([00,01,10,11]),那n个基本单元则有2的n次方种表达形式(组合排列知识),只要是高中数学学过排列组合的同学,就可以体会到当n比较大时,其组合的种类有多么庞大。当我们把现实生活中那些抽象的数据(文字,图像,声音等等)量化后,这些组合足够表示量化后的数据形式。{e.g:假设中文汉字有20万个,则其需要20万种组合来表示所有汉字,通过计算,2的18次方刚好大于20万,显而易见,以上述的18个位,即以3个字节作为汉字的基本单元,就可以表示20万个汉字种类}

第二部分 计算机内存

计算机都有内存条,家用普通的内存条有2GB,4GB,8GB,16GB等。内存条一般由芯片,电路板,金手指,电阻等构成。其中,内部芯片是核心组成元件,其内包含了上亿个电子元器件,它们很小,达到了纳米级别。这些元器件,有两种状态,通电和断电,通电是高电平(5V),用1来表示,断电是低电平(0V),用0来表示。所以,一个电子元器件正好对应之前所说的一位,即[0,1]。我们可以通过电路来控制这些元器件的通断电,那么就可以得到很多0、1状态的组合,以此来保存数据。

内存条主要用于存放计算机工作过程中的运算数据,包括从外部存储器中读取数据或者接受来自CPU的计算数据等。内存的特点是存取速率快。我们平常使用的程序,一般都是安装在硬盘等外存上的,但真正打开使用的时候,必须将数据调入内存中进行计算运行。(我们平时打字或玩游戏,其实都是在内存中进行的。)内存就是暂时存储程序以及数据的地方,如果想要断电后依然保存数据,需要将数据存入硬(磁)盘。

内存工作原理(以下来自于百度知道)1.内存寻址 首先,内存从CPU获得查找某个数据的指令,然后再找出存取资料的位置时(这个动作称为“寻址”),它先定出横坐标(也就是“列地址”)再定出纵坐标(也就是“行地址”),这就好像在地图上画个十字标记一样,非常准确地定出这个地方。对于电脑系统而言,找出这个地方时还必须确定是否位置正确,因此电脑还必须判读该地址的信号,横坐标有横坐标的信号(也就是RAS信号,Row Address Strobe)纵坐标有纵坐标的信号(也就是CAS信号,Column Address Strobe),最后再进行读或写的动作。 2.内存传输 为了储存资料,或者是从内存内部读取资料,CPU都会为这些读取或写入的资料编上地址(也就是我们所说的十字寻址方式),这个时候,CPU会通过地址总线(Address Bus)将地址送到内存,然后数据总线(Data Bus)就会把对应的正确数据送往微处理器,传回去给CPU使用。 3.存取时间 存取时间,指的是CPU读或写内存内资料的过程时间,也称为总线循环(bus cycle)。以读取为例,从CPU发出指令给内存时,便会要求内存取用特定地址的特定资料,内存响应CPU后便会将CPU所需要的资料送给CPU,一直到CPU收到数据为止,便成为一个读取的流程。因此,这整个过程简单地说便是CPU给出读取指令,内存回复指令,并丢出资料给CPU的过程。我们常说的6ns(纳秒,秒-9)就是指上述的过程所花费的时间,而ns便是计算运算过程的时间单位。我们平时习惯用存取时间的倒数来表示速度,比如6ns的内存实际频率为1/6ns=166MHz(如果是DDR就标DDR333,DDR2就标DDR2 667)。

科普:内存和随机存储器RAM相对应,而ROM(只读内存器,一种只能读出事先所存数据的固态半导体存储器)对应电脑的外存(硬盘)。

第三部分 计算机外存

计算机的外存包括硬盘,光盘,光驱,软盘等等。一般主要是指硬(磁)盘。它们都可以保存数据,断电后不丢失。工作原理这里不赘述。

第四部分 寄存器和缓存器

寄存器是CPU的组成部分(如通用寄存器、专用寄存器和控制寄存器等),是CPU内部用来存放数据的一些小型存储区域,用来暂时存放参与运算的数据和运算结果。它是一个有限存储容量的高速存储部件,可用来暂存指令、数据和位址(其实寄存器就是一种常用的时序逻辑电路,但这种时序逻辑电路只包含存储电路。寄存器的存储电路是由锁存器或触发器构成的,因为一个锁存器或触发器能存储1位二进制数,所以由N个锁存器或触发器可以构成N位寄存器)。其存储容量远远小于内存,但是运行速度远远强于内存。

缓存器其实也是属于CPU的,是用于减少处理器访问内存所需平均时间的部件。因为CPU存取数据的速度非常快,而内存相对就慢很多,这样整体拖慢了CPU运行速度。而缓存器的缓存速度可以接近处理器的频率,其将内存中被CPU访问最频繁的数据和指令复制进来,CPU取数据时,可以直接去缓存中取。其在金字塔式存储体系中位于自顶向下的第二层,仅次于CPU寄存器。

基本工作流程:当处理器发出内存访问请求时,会先查看缓存内是否有请求数据。如果存在(命中),则不经访问内存直接返回该数据;如果不存在(失效),则要先把内存中的相应数据载入缓存,再将其返回处理器。

缓存之所以有效,主要是因为程序运行时对内存的访问呈现局部性(Locality)特征。这种局部性既包括空间局部性(Spatial Locality),也包括时间局部性(Temporal Locality)。有效利用这种局部性,缓存可以达到极高的命中率。

按照数据读取顺序和与CPU结合的紧密程度,CPU缓存可以分为一级缓存,二级缓存,部分高端CPU还具有三级缓存,每一级缓存中所储存的全部数据都是下一级缓存的一部分,这三种缓存的技术难度和制造成本是相对递减的,所以其容量也是相对递增的。当CPU要读取一个数据时,首先从一级缓存中查找,如果没有找到再从二级缓存中查找,如果还是没有就从三级缓存或内存中查找。一般来说,每级缓存的命中率大概都在80%左右,也就是说全部数据量的80%都可以在一级缓存中找到,只剩下20%的总数据量才需要从二级缓存、三级缓存或内存中读取,由此可见一级缓存是整个CPU缓存架构中最为重要的部分。(以上大多数来自百度百科)

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
知识科普系统设计的ER图可以包含以下几个主要实体和它们之间的关系: 1. 用户(User)实体:表示系统的用户,包括管理员和普通用户。用户可以发布科普文章、提问问题、回答问题等操作。 2. 科普文章(Article)实体:表示用户发布的科普文章,包括标题、内容、发布时间等属性。 3. 问题(Question)实体:表示用户提出的问题,包括问题描述、提问时间等属性。 4. 回答(Answer)实体:表示用户对问题的回答,包括回答内容、回答时间等属性。 5. 标签(Tag)实体:表示对科普文章和问题进行分类的标签,一个文章或问题可以有多个标签。 6. 收藏(Favorite)实体:表示用户收藏的科普文章或问题,记录用户与文章或问题之间的关联关系。 7. 关注(Follow)实体:表示用户关注的其他用户,记录用户与用户之间的关联关系。 8. 点赞(Like)实体:表示用户对科普文章或问题的点赞操作,记录用户与文章或问题之间的关联关系。 9. 评论(Comment)实体:表示用户对科普文章或问题的评论,包括评论内容、评论时间等属性。 根据以上实体之间的关系,可以设计出以下关系: 1. 用户与科普文章之间是一对多的关系,一个用户可以发布多篇科普文章,一个科普文章只属于一个用户。 2. 用户与问题之间也是一对多的关系,一个用户可以提出多个问题,一个问题只属于一个用户。 3. 问题与回答之间是一对多的关系,一个问题可以有多个回答,一个回答只属于一个问题。 4. 科普文章和问题与标签之间是多对多的关系,一个文章或问题可以有多个标签,一个标签可以对应多个文章或问题。 5. 用户与收藏之间是多对多的关系,一个用户可以收藏多个文章或问题,一个文章或问题可以被多个用户收藏。 6. 用户与关注之间也是多对多的关系,一个用户可以关注多个其他用户,一个用户也可以被多个用户关注。 7. 用户与点赞之间是多对多的关系,一个用户可以对多个文章或问题点赞,一个文章或问题也可以被多个用户点赞。 8. 用户与评论之间是一对多的关系,一个用户可以对多个文章或问题进行评论,一个评论只属于一个用户和一个文章或问题。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值