小白的CTF学习之路4——内存

时间:2023-12-11 20:07:32

明天要进行二模考试了,沉住气,加油,能过

内存是学C路上必不可少的一环,一定要非常认真的去学

内存的物理结构:

  • ROM:只读内存——早期的手机
  • RAM:读写(数据断点既消)
  • DRAM:经常更新
  • SRAM:不常更新

以上内容了解便可

顾名思义,内存就是我们电脑存放数据的地方,那么他是怎么实现能够存放数据的呢?下面我们来一探究竟

内存同样是有许多集成电路(IC)组成的IC具体是怎么运作的呢?可以看下我下面放出的图片

小白的CTF学习之路4——内存

emmmm,这是我画的一张非常简易的集成电路,大致就是我们电脑内存条的这个部分

小白的CTF学习之路4——内存

看不出来?没关系,我们放大看

小白的CTF学习之路4——内存

网图,大致就长这个鸟样,我们日后的C语言之路大部分都伴随着这么个东西,当然真正的内存条IC肯定是比这个的银角多出好几倍,那么现在我们就来解释一下我写的那些文字都是些什么意思吧

银角:就是IC中电流经过的部分,也是我们二进制值存储的部分

小白的CTF学习之路4——内存

5V和0V分别代表1和0,有不了解的去看我前面有关二进制的博客

我们的内存IC上半部分银角一般由地址信号组成,地址信号是用来作为CPU寻址用的,比如你想把数据存储到10110内,那就从左到右依次把带1的过上电,这样就完成了我们的寻址操作

内存IC的下半部分一般是由控制,数据信号组成的,控制信号和数据信号用来作为数据读写而存在的

剩下的电源银角控制着内存IC的开关

好了,这是我们简单理解,接下来我画一个更复杂点的图

小白的CTF学习之路4——内存

不要被我魔性的画风所迷惑,实际上依旧是非常简单的一个物理结构

首先我们来看A0~A9,前面我们说了,这一部分为地址信号,用来CPU做寻址用,我们这里简单画了10个银角,每个银角代表能储存一块空间,也就是说,我们这十个银角可以存储0000000000~1111111111=1024个地址,牛逼吧

D0~D7代表数据银角,8个数据银角代表一次可以输出8bit=1byte的数据

也就是说我们的这个芯片的容量=1024x1byte=1kb

才1kb,现在的内存条动辄1个G,所以说,地址银角代表着内存条的存储能力,地址银角越多,存储的数据就会越多,这些我在逻辑结构会讲到

了解了内存IC各部分之后,我们来还原一下内存IC的一次写入工作:

  • 两边接入电压
  • 通过CPU进行交互
  • 列:00111000
  • 在A0~A9寻找对应位置(从左至右)
  • 再接入DATA信号
  • 之后再WR处通电
  • 下面写完数据存到上面对应位置

这就是内存IC的一次写入操作的基本流程

内存大小计算=寻址X1次写入的大小=总容量

未完待续....