美文网首页自然科普
为什么计算机能“算数”

为什么计算机能“算数”

作者: 藕丝空间 | 来源:发表于2019-04-03 15:48 被阅读13次

为什么计算机能“算数”?为了更容易理解我们需要把问题再精分一下:
1、在计算机中,“数”是如何表示的?
2、在计算机中,“数”是如何计算的?
3、在物理上,“数”的计算是如何实现的?

1、在计算机中,“数”是如何表示的?

在计算机中存储和要处理的数据都是使用二进制的表示的,也就是只有 0 和 1 两个基本数,如果遇到相当于十进制的 2 的时候就要进位。


image

2、在计算机中,“数”是如何计算的?
也是无外乎数学的运算规则的,只不过是二进制的形式。举个例子:

image

我们来分析一下这个二进制加法的过程,对于 1 位的运算,可以得出下面的规律:

0 和 0 相加得到 00,高位是进位 0,低位是本位和值 0。
0 和 1 相加得到 01,高位是进位 0,低位是本位和值 1。
1 和 0 相加得到 01,高位是进位 0,低位是本位和值 1。
1 和 1 相加得到 10,高位是进位 1,低位是本位和值 0。

是不是很有规律呢?!!

到此该乔治·布尔(George Boole,1815.11.2~1864)出场了。

image

他的伟大发明就是布尔代数。 最简单的布尔代数只有两个元素 0 和 1,基本的逻辑操作是与、或、非,在此基础上可以做一些复合的逻辑操作。

image
image

根据我们总结的规律和两个图中的逻辑运算真值表,我们可以发现,其实,本位的和的计算过程就是异或运算,而进位的运算则复合与运算的规则。

3、在物理上,“数”的计算是如何实现的?
其实,上面的两个图已经给出了物理电路的实现方法,为了让大家能够更明白,我再单独发图来画画重点。

image image image

通过上面的三张图和电路运算的结果真值表,可以得出一个明显的结论:逻辑运算是可以通过物理上的电子电路来实现的。

综上,①电子电路可以设计出来逻辑运算器件,②逻辑运算器件又可以作为二进制运算的工具,③二进制又可以无差错的转换为我们人类常用的十进制数,所以,用逻辑元器件做出来计算机当然能够进行“算数”了。

相关文章

  • 为什么计算机能“算数”

    为什么计算机能“算数”?为了更容易理解我们需要把问题再精分一下:1、在计算机中,“数”是如何表示的?2、在计算机中...

  • 为什么计算机能算数?

    模块化和等价性是计算机中关键思想。正是因为在数学上二进制和十进制是等价的,所以可以将十进制的计算问题转化为二进制的...

  • 编程语言基础python之进制知识

    今天记录下数字:1,2,3,4,5,6,7,8,9,0 计算机为什么可以计算数据?计算机为什么可以存储数据?计算机...

  • 计算数组中第n大的数

    简单实现方法 计算数组中最大的数 计算数组中第二大数 计算数组中第n大数 算法实现 快速排序

  • CPU 是怎么认识代码的?

    就是为什么计算机能运行我们编写的代码(比如c语言,计算机为什么会运行这个东西,原理是什么)? 就目前我的理解,我们...

  • 2020-03-30

    第五节 计算机进行计算的重要部分 算数逻辑单元 ALUALU 包含两个单元(unit) 算数单元 和 逻辑单元算数...

  • 1.2进制以及进制之间的转换

    思考1 为什么要使用计算机? 计算机可以存储数据,并计算数据 思考2 数据存在哪里? 存储器 在计算机中,指令主要...

  • 斐波那契数列

    方法一:不导入任何帮助模块计算数列 方法二:导入functools模块下的lru_cache方法计算数列

  • 为自己的身体编程,让身体适应好习惯

    编程是计算机语言, 指的是人类将需要解决问题的思路, 方法, 手段通过计算机能够理解的形式告诉计算机, 使计算机能...

  • 为自己身体编程,坚信坚持的力量

    编程是计算机语言, 指的是人类将需要解决问题的思路, 方法, 手段通过计算机能够理解的形式告诉计算机, 使计算机能...

网友评论

    本文标题:为什么计算机能“算数”

    本文链接:https://www.haomeiwen.com/subject/unjzbqtx.html