一、什么是计算机
什么是计算机呢?对于这个问题大多数文章和老师都会从计算机的组成、发展以及原理来讲,这对初学者来说有些晦涩难懂。那么本文将从计算机的芯片、摩尔定律和理论方面来讲解什么是计算机。
#### 一、芯片
芯片是计算机的能源。芯片产生数字能量,那么这种能量是如何产生的呢?首先电能给芯片供能,芯片中的晶振发生震荡,产生频率稳定的脉冲信号,并通过谐振效应发出脉冲信号,形成方波。再通过电子元件调整频率转换为需要的频率,这就形成了驱动芯片工作的时钟信号,需要的频率叫做时钟频率。时钟信号就像脉搏一样,每次跳动都会改变芯片的状态,用这种方法存储器中的指令被一一执行,这就是计算的能源。
#### 二、摩尔定律
摩尔定律是计算能力的发展。在计算机发展史上先有的计算机后有的芯片(第一个芯片就是集成电路)。在这里你一定会有一个问题,为什么先有计算机后有芯片呢?这个原因和我们在开发中先实现功能,再去封装是一个道理。其实在第一台计算机中的运算模块和芯片的原理是一样的,都是利用了电路来实现逻辑运算。到了后来集成电路的出现,就大大减小了电路的体积,所有元件都是用一块半导体材料制成,都集中在了一个单一的硅片上。为了提高计算性能,集成电路的设计越来越复杂,目前已经是超大规模集成电路的时代了。随着芯片的发展,带来了计算能力的飞跃,从最初的每秒计算几百几千次,到每秒计算上百万次,再到如今的单核每秒就可以计算上亿次。
说了这么多,还没说什么是摩尔定律。它是英特尔提出的,当价格不变时集成电路中可容纳的晶体管数量每隔 18 到 24 个月就会增加一倍,性能也会增加一倍。但在当今世界,这一定律早已失效,因为芯片越来越小,尺寸和散热已经在挑战人类科技的极限了。现在芯片中已经很难再放入更多的元件,但是聪明的人类已经使用两种方法解决了这个问题:一种方法是集成上百个核心(比如英伟达的显卡),另一种方法是使用分布式。
#### 三、理论
生活中的万事万物因为有了计算机,因此大部分可以被计算。但是在没有计算机和芯片的时代,想要知道计算可以用来做什么,这并不是一件容易的事。当时有很多科学家提出了不同的理论和见解。正是有了这么多的理论和见解,才让大家认识到了计算不能解决所有问题,计算是有边界的。于是就有了这样一个理论:哪些问题可以被计算,哪些问题不可以被计算,这就是可计算性理论。它是计算机科学的理论基础之一。在这个理论的基础上图灵提出了图灵机,它是一种不断执行指令的抽象计算机,并且图灵发现如果一个问题可计算,那它的解决方法可以具化成一条一条的执行,并使用图灵机处理。那么不能用图灵机处理的问题就是不可计算问题。
但是当图灵机在遇到“素数是不是无穷多个”这个问题的时候,事情就很棘手了。虽说我们可以通过有限的步骤计算出下一个素数,但我们还是不能准确的回答这个问题。这是因为如果要回答这个问题,就必须不断的去寻找下一个素数,那么这个问题就是一个不可计算问题。同时这个问题也涉及到了计算边,解决问题需要消耗芯片的计算能力叫做时间开销,消耗的内存叫做空间开销。
世界上有一种问题,不管我们消耗多少时间空间,我们都无法解决。例如停机问题,这被称为不可计算问题。世界上不可计算的问题和可计算的问题都很多,那么是不可计算的问题多还是可计算的问题多呢?这是一个不可计算问题。
在可计算问题中也分为困难问题和简单问题,我们会用复杂度来识别它们。例如请数组中第 M 个元素,这个问题的事件和空间开销都不会随问题规模的增长而增长。
评论