目录
  1. 1. cpu
    1. 1.1. 物理结构
    2. 1.2. 逻辑部件
    3. 1.3. 寄存器
    4. 1.4. 工作过程
  2. 2. 存储器
    1. 2.1. 存储单元
    2. 2.2. CPU对存储器的读写
    3. 2.3. 地址总线
    4. 2.4. 数据总线
    5. 2.5. 控制总线
    6. 2.6. 检测点1.1
    7. 2.7. 存储器芯片
    8. 2.8. 内存地址空间
cpu与存储器

cpu

中央处理器(CPU,Central Processing Unit)是一块超大规模的集成电路,是一台计算机的运算核心(Core)和控制核心( Control Unit)。它的功能主要是解释计算机指令以及处理计算机软件中的数据。
中央处理器主要包括运算器(算术逻辑运算单元,ALU,Arithmetic Logic Unit)和高速缓冲存储器(Cache)及实现它们之间联系的数据(Data)、控制及状态的总线(Bus)。它与内部存储器(Memory)和输入/输出(I/O)设备合称为电子计算机三大核心部件。

物理结构

CPU包括运算逻辑部件、寄存器部件和控制部件等。

逻辑部件

运算逻辑部件。可以执行定点或浮点算术运算操作、移位操作以及逻辑操作,也可执行地址运算和转换。

寄存器

寄存器部件,包括寄存器、专用寄存器和控制寄存器。 通用寄存器又可分定点数和浮点数两类,它们用来保存指令执行过程中临时存放的寄存器操作数和中间(或最终)的操作结果。 通用寄存器是中央处理器的重要部件之一。

工作过程

CPU从存储器或高速缓冲存储器中取出指令,放入指令寄存器,并对指令译码。它把指令分解成一系列的微操作,然后发出各种控制命令,执行微操作系列,从而完成一条指令的执行。指令是计算机规定执行操作的类型和操作数的基本命令。指令是由一个字节或者多个字节组成,其中包括操作码字段、一个或多个有关操作数地址的字段以及一些表征机器状态的状态字以及特征码。有的指令中也直接包含操作数本身。

存储器

CPU是计算机的核心部件,要想让一个CPU工作,就必须向它提供指令和数据。而指令和数据在存储器中存放,也就是我们平时说的内存。

存储单元

  • 存储器被划分若干个存储单元,每个存储单元从0开始循序编号
  • 这些编号可以看作存储单元在存储器中的地址
  • 一个存储单元可以存储一个Byte,即8个二进制位(bit)

CPU对存储器的读写

  • CPU通过地址线将地址信息3发出
  • CPU通过控制线发出内存读命令,选中存储器芯片,并通知它,将要从中读取数据
  • 存储器将三号单元中的数据8通过数据线送入CPU。写操作与读操作的步骤相似。如向3号单元写入数据26

地址总线

  • 若一个CPU有N根地址总线,也就是说这个CPU的地址总线的宽度为N,这样的CPU最多可以寻找2的N次方个内存单位

数据总线

  • 数据总线的宽度决定了CPU和外界的数据传送速度。8根数据总线 一次可传送一个8位二进制数据(即一个字节)。16根数据总线一次可传送两个字节
  • 8088CPU的数据总线宽度为8,8086CPU的为16

控制总线

  • CPU对外部器件的控制是通过控制总线来进行的
  • 控制总线的跨度决定了CPU对外部器件的控制能力

检测点1.1

  1. 一个CPU的寻址能力为8KB,那么他的地址总线宽度为13。
    2^n=1024*8
    n为总线宽度。
    已知2^10 = 1024
    因此n=13

  2. 1KB的存储器有1024个存储单元。存储单元的编号从0到1023 。
    2^10=1KB=1024

  3. 1KB的存储器可以存储 8192个bit, 1024 个Byte。
    1Byte=8bit

  4. 1GB、1MB、1KB分别是2^30 Byte,2^20 Byte,2^10 Byte。
    102410241024=2^30
    1024*1024=2^20
    1024=2^10

  5. 8080、8088、80286、80386的地址总线宽度分别为16根、20根、24根、32根,则他们的寻址能力分别为: 64 (KB)、 1 (MB)、 16 (MB)、 4 (GB)。
    2^10=1K 2^6=64
    2^20=1M
    2^4=16
    2^30=1G 2^2=4

  6. 8080、8088、8086、80286、80386的数据总线宽度分别为8根、8根、16根、16根、32根。则它们一次可以传送的数据为: 1 (B)、 1 (B)、 2 (B)、 2 (B) 4 (B)。
    1Byte=8bit
    每8根总线一次最多可传递一字节数据。

  7. 从内存中读取1024字节的数据,8086至少要读 512 次,80386至少要读 256 次。
    8086每次读2字节数据
    80386每次读4字节数据

  8. 在存储器中,数据和程序以 二进制 形式存放。
    数据与程序在存储器中以无差别的二进制数据形式存放

存储器芯片

  • 一台PC机上,装有多个存储器芯片,从读写属性上看分为两类:随机存储器(RAM)和只读存储器(ROM)
  • 随机存储器用于放供CPU使用的绝大部分程序和数据

内存地址空间

  • 所有的物理存储器被看作一个由若干存储单元组成的的逻辑存储器
  • 每个物理存储器在这个逻辑存储器中占有一个地址段,即一段地址空间
  • CPU在这段地址空间中读写数据,实际上就是在相对于的物理存储器中读写数据
文章作者: nocbtm
文章链接: https://nocbtm.github.io/2018/09/07/cpu/
版权声明: 本博客所有文章除特别声明外,均采用 CC BY-NC-SA 4.0 许可协议。转载请注明来自 nocbtm's Blog
打赏
  • 微信
  • 支付宝