计算机是如何工作的

2年前 (2022) 程序员胖胖胖虎阿
157 0 0

计算机是如何工作的

之后就开始更JavaEE的内容啦~计算机是如何工作的 

~~~

目录

1.计算机发展史

2.冯诺依曼体系

3.CPU的基本流程

3.1逻辑门

3.1.1电子开关

3.1.2门电路

3.2算数逻辑单元

3.2.1进制的理解

3.2.2算数单元

3.2.3逻辑单元

3.2.4ALU符号

4.寄存器(Register) 和内存(RAM)

5.控制单元 CU(Control Unit)

6.指令

7.编程语言


1.计算机发展史

计算的需求在人类的历史中是广泛存在的,发展大体经历了从一般计算工具到机械计算机到目前的电子计算机的发展历程。
下面我们用一张图来看它的发展过程
计算机是如何工作的

2.冯诺依曼体系

③冯诺依曼的基本简介:

·
诺依曼(
John von Neumann

1903

12

28

-1957

2

8
日)
,
美籍
匈牙利
数学家、
计算 机
科学家、
物理学家
,是
20
世纪
最重要的数学家之一。冯
·
诺依曼是
布达佩斯大学
数学博士,在现 代
计算机

博弈论

核武器

生化武器
等领域内的科学全才之一,被后人称为

现代计算机之父

、 “
博弈论
之父
”。

②冯诺依曼体系结构:

现代的计算机, 大多遵守 冯诺依曼体系结构,分为五个部分:控制器,存储器,运算器,输入设备和输出设备

计算机是如何工作的

 ③各部分的一个简介:

a. CPU 中央处理器: 进行算术运算和逻辑判断.

计算机是如何工作的

这里就是一个处理器,1.9GHZ叫做:cpu主频,该数字越大,CPU就运算得越快。表示一秒执行19亿条指令

存储器: 分为外存和内存, 用于存储数据(使用二进制方式存储)

内存和外存的区别与联系:

a.访问速度:内存>外存

b.存储空间:内存小,外存大

c.成本:内存高,外存低

d.持久化存储:内存断电后内容消失,外存中内容依旧存在

输入设备: 用户给计算机发号施令的设备。

a.例子:

键盘,鼠标,扫描仪等

输出设备: 计算机个用户汇报结果的设备。

a.例子:
显示器、打印机、绘图仪等
 

3.CPU的基本流程

①说明:
接下来,我们用一个从无到有的过程,一步步搭建一个
CPU
出来,希望大家可以借助这个过程,理解CPU、内存等计算机主要部件的工作原理(此处在看完下面内容后倒过来看)
②对
指令运行的一个周期进行演示:(通过CU控制单元来实现的)
a.取码阶段
b.解码阶段
c.读码阶段
我们编写的程序,最终都会被编译器给翻译成CPU所能识别的机器语言指令。在我们运行程序的时候,操作系统就可以把这样的可执行程序加载到内存中,CPU就一条一条指令去读取,解析和执行
具体大家可以把以下文章研读以下~
CPU的工作过程 - 百度文库 (baidu.com)计算机是如何工作的https://wenku.baidu.com/view/7c729233f7ec4afe05a1df33.html

3.1逻辑门

3.1.1电子开关

①什么是电子开关?

电子开关,也被称为“机械继电器”,它的工作原理是通过通电/不通电来切换开关状态,从而得到0或者1这样的数据

②图示:

计算机是如何工作的

③作用:

通过电子开关,我们可以实现 1 (bit) 的看似无用的逻辑运算,但至少它工作起来了。这就为我们后续的工作作出了铺垫 

3.1.2门电路

①什么是门电路:

门电路就是可以实现
1

(bit) 的基本逻辑运算。接下来,我们学习如何使用电子开关构建一些有用的部件
——
门电路。
②最基础的三种门电路:
a.与门:
可以针对两个0/1进行与运算。这里的与是按位与,不是逻辑与


计算机是如何工作的
计算机是如何工作的

 b.或门:

可以针对两个0/1进行或运算

计算机是如何工作的

计算机是如何工作的 c.非门:

可以对一个0/1进行取反(0->1;1->0) 

计算机是如何工作的 ③通过借助上述的基本门电路,我们能构造出一个更复杂的门电路: 异或门

计算机是如何工作的

3.2算数逻辑单元

①什么是ALU:

ALU 是计算机中进行算数、逻辑运算的核心部件,是计算机的数学大脑。接下来,我们用上一节构建的逻辑门来完成自己的一个 ALU,去学习理解它的工作模式,以便作为我们进一步理解现代计算机工作原 理的基石。(下面这个图就是一个著名的ALU——Intel 74181

计算机是如何工作的

3.2.1进制的理解

这块进制的理解,以及进制的转换,是很基础的内容,我们这里就不做过多的讲解,大家不懂的话,可以百度百度

3.2.2算数单元

①什么是算数单元:

算数单元,负责计算机里的所有数字操作,比如四则运算,当然它能做的远远不止这些。接下来我们会带着大家实现一个 8 位(bits)的加法器(adder)来,以演示整个过程,其他的运算器就不再详细讲解了。

②过程引入:
基于我们上述提到的基本门电路,我们可以搭建出一些运算器
a.半加器:是针对两个比特位进行相加的运算
计算机是如何工作的

b.全加器:是针对三个比特位做的相关运算

计算机是如何工作的

c.基于上述的半加器和全加器,就可以构造出一个针对多个bit位数据进行加法运算的加法器了

计算机是如何工作的我们需要知道的是:全加器是由半加器组成的,而半加器是由异或门电路组成的,而异或门电路是由基础的门电路组成的,而基础的门电路则是由开关组成的

③当然我们有了加法器不仅可以进行加法的运算,也同时能利用它进行减法,乘法,除法的运算。

乘法=多个相加;

减法=加上一个负数;

除法=多个相减

3.2.3逻辑单元

逻辑单元主要用来进行逻辑操作,最基本的操作就是 与、或、非操作,但不只是一位(bit)数的比较。

计算机是如何工作的

3.2.4ALU符号

经过我们的努力,通过基本的逻辑门电路,我们一步步地做出了一个
8

(bits) ALU
,甚至比
Intel 74181 还要强大,
Intel 74181
只是一个
4

(bits) ALU

😀
)
。当然现代的计算机中的
ALU
部件非常强大,复杂度远远超过了我们的想象,32
位 甚至
64
位基本已经普及全球了。但无论如何,再复杂的
ALU是芯片工程师像我们这样,一层又一层,一步又一步地将其抽象出来的。ALU
是第一次将人类历史上的数学和逻辑学学科有机地结合起来,可以视为人类智慧发展的现代巅峰

4.寄存器(Register) 和内存(RAM)

①什么是寄存器:

寄存器是CPU内部用来存取数据的组件

②寄存器的特点:

访问速度:寄存器是内存的3~4个数量级
存储空间:比内存小很多很多
成本:CPU上面的这个寄存器是非常贵的
持久化:关闭电源后会造成数据的丢失

③内存:

刚刚上面已经讲过了

5.控制单元 CU(Control Unit)

①作用:协调CPU去进行工作,控制单元最主要的工作,是能够去执行指令

计算机是如何工作的

②CU和ALU的关系 

计算机是如何工作的

6.指令

①什么是指令:

首先,我们先介绍下我们需要到的指令
(instruction)
。 所谓指令,即指导 CPU
进行工作的命令,主要有操作码
+
被操作数组成。 其中操作码用来表示要做什么动作,被操作数是本条指令要操作的数据,可能是内存地址,也可能是寄存器编号等。指令本身也是一个数字,用二进制形式保存在内存的某个区域中。
②指令是如何进行执行的 ?
通过自己构建出一个简单的芯片手册
计算机是如何工作的

③解释:

假设现在CPU上有两个寄存器。A 00; B 01;

那么下列操作的含义如下:

0010 1010的含义:

就是把1010内存地址上的数据给读取到A寄存器中
0001 1111的含义:

就是把1111内存地址上的数据读到寄存器B中
0100 1000的含义:

就是把A寄存器的值,存到1000这个地址中

1000  0100的含义:

把00寄存器和01寄存器的数值相加,结果放在00寄存器中

④进一步说明:

假设从0号地址开始执行:
CPU中的CU就会从0号地址读取内存中的指令,并且进行解析。
假设现在CPU上有两个寄存器。A 00; B 01;

计算机是如何工作的

7.编程语言

①了解什么是程序:

所谓程序,就是一组指令以及这组指令要处理的数据。狭义上来说,程序对我们来说,通常表现为一组文件。
程序
=
指令
+
指令要处理的数据。
②变成语言加工的实质图:
计算机是如何工作的

 注意:高级语言的一条语句(Statement)往往对应很多条指令(Instruction)才能完成。

今天的内容就介绍到这里啦,我们下期再见~计算机是如何工作的

版权声明:程序员胖胖胖虎阿 发表于 2022年9月16日 下午3:40。
转载请注明:计算机是如何工作的 | 胖虎的工具箱-编程导航

相关文章

暂无评论

暂无评论...