计算机底层知识:CPU基本概念及运行原理

1.介绍:

CPU中央处理器(central processing unit)是计算机系统的运算和控制核心,是信息处理、程序运行的最终执行单元,是由无数个晶体管组成的电子元器件。


2.CPU核心模块
2.1.寄存器:

暂存指令,共45个,一个CPU内部有20-100寄存器左右。
通用寄存器有8个:
eax: 通常用来执行加法,函数调用的返回值一般也放在这里面
ebx: 数据存取
ecx: 通常用来作为计数器,比如for循环
edx: 读写I/O端口时,edx用来存放端口号
esp: 栈顶指针,指向栈的顶部
ebp: 栈底指针,指向栈的底部,通常用ebp+偏移量的形式来定位函数存放在栈中的局部变量
esi: 字符串操作时,用于存放数据源的地址
edi: 字符串操作时,用于存放目的地址的,和esi两个经常搭配一起使用,执行字符串的复制等操作

2.2.控制器:

负责把内存的指令,数据读入寄存器,并根据指令的执行结果来控制整个计算机。

2.3.运算器:

负责运算从内存读入寄存器的数据。

2.4.时钟:

负责发出CPU开始计时的信号,控制cpu完成一个任务的时间,也就是我们看到的频率,通常为2.2GHz


3.CPU计算执行步骤
3.1.逻辑可划分三个模块:控制单元、运算单元、存储单元

计算机底层知识:CPU基本概念及运行原理_第1张图片

3.2.运行步骤:取指令 > 译码 > 执行 > 修改指令计数器 > 访主存 > 数据写回

计算机底层知识:CPU基本概念及运行原理_第2张图片

3.3.核心步骤为前四步(一定存在)

指令放入寄存器:
在这里插入图片描述
执行:
计算机底层知识:CPU基本概念及运行原理_第3张图片


4.CPU 字长
4.1.CPU 字长概念

CPU在单位时间内(同一时间)能一次处理的二进制数的位数叫字长。

4.2. 计算机32位 CPU 和 64位 CPU的差异:
(1)处理能力不同

32 位 CPU 的一个指令,最大能处理 32 位二进制数据,即一次能处理 4 个字节数据。
64 位 CPU 的一个指令,最大能处理 64 位二进制数据,即一次能处理 8 个字节数据。

(2)寻址空间不同

32 位 CPU 的寻址范围是 32 位的二进制,32位二进制能表示的地址长度为2的32次方,即寻址空间最大为 4GB。
64 位CPU的寻址范围是 64 位的二进制,也就是2的64次方,能表示的地址长度更大,其寻址空间也会更大。

4.3字节和字长的区别:

由于常用的英文字符用8位二进制就可以表示,所以通常就将8位称为一个字节。
计算机在同郸时间内处理的一组二进制数的位数就是“字长”,字长的长度是不固定的,对于不同的CPU、字长的长度也不一样


5.地址总线、数据总线、控制总线
5.1.数据总线
(1) 是CPU与内存或其他器件之间的数据传送的通道。
(2)数据总线的宽度决定了CPU和外界的数据传送速度。
(3)每条传输线一次只能传输1位二进制数据。8根数据线一次可传送一个8位二进制数据(即一个字节)。
(4)数据总线是数据线数量之和。
5.2.地址总线
(1)CPU是通过地址总线来指定存储单元的。
(2)地址总线决定了cpu所能访问的最大内存空间的大小。10根地址线能访问的最大的内存为1024位二进制数据(1B)
(3)地址总线是地址线数量之和。
5.3.控制总线
(1)CPU通过控制总线对外部器件进行控制。
(2)控制总线的宽度决定了CPU对外部器件的控制能力。
(3)控制总线是控制线数量之和。
5.4.补充说明

若内存容量为4GB,字长为32,则地址总线和数据总线的宽度都为32。

内存容量为4GB,即内存单元的地址宽度为32位。字长为32位即要求数据总线的宽度为32位,因此地址总线和数据总线的宽度都为32。

你可能感兴趣的:(计算机基础知识,cpu)