图灵机
图灵的贡献主要有两个:
建立了图灵机模型
提出了图灵测试、阐述了机器智能的概念。
图灵机是一种抽象计算模型,即将人们使用纸笔进行数学运算的过程进行抽象,由一个虚拟的机器替代人们进行数学运算。所谓图灵机就是指一个抽象的机器,它有一条无限长的纸带,纸带分成了一个一个的小方格,每个方格有不同的颜色。有一个机器头在纸带上移来移去。机器头有一组内部状态,还有一些固定的程序。在每个时刻,机器头都要从当前纸带上读入一个方格信息,然后结合自己的内部状态查找程序表,根据程序输出信息到纸带方格上,并转换自己的内部状态,然后进行移动。(提出时间1936年)
图灵机计算机的理论
机器的程序是五元组{Si,X,Y,L(R或N),Sj}形式的指令集,定义了机器在一个特定状态下读入一个特定字符时所采取的动作。
五个元素的含义如下:
Si表示机器当前的状态。
X表示机器从方格中读入的内容,也即当前内容。
Y表示机器用来代替X写入方格中的内容
L/R/N分别表示左移一格、右移一格和不移动。
Sj表示机器下一步的状态。
图灵机计算思想:
图灵机的功能根据输入编码的不同而变化
程序和数据同等看待
图灵机可以将程序先保存到存储带上,按照程序一步一步运行直到给出结果,结果也保存到存储带上。
冯·诺伊曼计算机
从人是如何处理事务引入计算机如何工作的:
计算机也是模仿人来处理事务的,也要有控制的装置、记忆的装置、接收的装置、计算的装置以及输出的装置。
冯·诺依曼计算机
冯·诺依曼根据图灵机的设想提出设计计算机的体系结构。这一结构也称为冯·诺依曼体系结构。
冯·诺依曼与莫尔小组合作,研制出了EDVAC计算机。该计算机根据冯·诺依曼提出的原理制造,改进了第一台计算机的不足。由此,奠定了现代计算机的体系结构。
冯·诺依曼计算机主要有三个特点:
计算机由五大部分组成:运算器、控制器、存储器、输入设备和输出设备。
指令和数据以同等地位存储在主存储器中,并按地址访问,以顺序的方式执行。
程序和数据以二进制表示。
计算机的工作原理
五部分如何协调工作:
计算机以存储器为中心,当通过输入设备输入用户的数据和程序之后,计算机接收这个指令,由控制器进行指挥,将数据从输入设备传送到存储器,再由控制器将需要参加运算的数据传送到运算器。在运算器中进行计算,计算的结果最终通过输出设备输出出来或者保存在存储器中。
计算机在工作的过程当中采用存储程序的方式,程序和数据在同一个存储器当中,程序和指令都可以送到运算器中进行运算,由指令组成的程序可以进行修改,一条条指令结合起来可以完成很多复杂的任务,在计算机中运算器、存储器和控制器是主要组成部分。其中运算器和控制器合在一起,称为中央处理器(CPU)。
计算机的组成
硬件系统
计算机的主要部件
计算机硬件系统主要由运算器、存储器、控制器、输入设备和输出设备5大部分组成.
####运算器
运算器主要是完成各种算术运算和逻辑运算,是对信息加工和处理的部件,由运算器、寄存器、累加器等组成。
####控制器
控制器用来协调和指挥整个计划和指挥整个计算机系统的操作,它读取指令并进行翻译和分析,再对各部件进行相应的控制。
在微型计算机中,运算器和控制器集成在一起构成了中央处理器(CPU),它是计算机系统的核心。
####存储器
存储器是计算机的存储部件,用来存放信息。存储器的工作速率相对于CPU的运算速率来讲要低很多。
存储器由内存储器和外存储器两种。
内存储器能直接和CPU交换数据,虽然容量小,但存取速度快,一般用于存放那些正在处理的数据或正在运行的程序;
外存储器是间接和CPU交换数据的,虽然存取速度慢,但存储容量大,价格低廉,一般用来存放暂时不用的数据。
内存储器按其工作方式的不同,可分为随机存储器(RAM)、只读存储器(ROM)和高速缓冲存储器(Cache)。
RAM:允许对存储单元进行存取数据操作。在计算机断电后,RAM中的信息会丢失。
ROM:由于ROM中的信息是厂家在制造时用特殊方法写入的,所以ROM中的信息可以读出,但不能向其中写入数据,而且断电后其中数据也不会丢失。ROM中一般存放重要的、经常使用的程序或数据,从而可以避免这些程序和数据收到破坏。
ROM 主要用于存放计算机的启动程序,如果要更改,就需要紫外线来擦除。ROM包含一个称为BIOS的程序,这些程序指示计算机如何访问硬盘、加载操作系同并显示启动信息。
####输入设备
####输出设备
计算机中的数据存储单位
1.位(bit)
2.字节(byte)
3.字(word):是计算机进行数据处理和运算的单位,即CPU在单位时间内能一次处理的二进制数据的位数,组成字的二进制位数称为字长。
计算机系统的主要技术指标
####主频、外频
主频是指CPU的时钟频率,也可以说是CPU的工作频率,单位是Hz。主频越高,运算速度也就越快。实际上CPU的运算速度受许多因素的影响,例如cache,所以主频高的运算速度并不一定比主频低的快。
外频是指系统的时钟频率,也可以说系统总线的工作频率,CPU与外围设备传输数据的频率,具体是指CPU到芯片组之间的总线速度。
字长和位数
CPU位数就是CPU的字长,也就是CPU中通用寄存器的位数。
高速缓冲存储器
cache是位于CPU和内存之间的高速存储器,运行频率极高,一般是和CPU同频运作。cache容量也是CPU的重要指标之一,在同等条件下增加cache容量能提高CPU的执行速度。
核心数量
主频之路已经走到了拐点,因为CPU的频率越高,所需要的电能就越多,所产生的热量也就越多,从而导致各种问题。因此开发了多核芯片,核心数量也是CPU的一个重要性能指标。
软件系统
系统软件
机器语言:用二进制代码编写,机器能直接执行。
为了应用存储程序概念,CPU被设计成可以识别二进制模式编码的指令。这组指令以及编码系统称为机器语言。
汇编语言:用符号表示指令代码,需要汇编程序将其翻译成机器指令后才能运行。
用ADD表示加、SUB表示减、HLT表示停机等。
高级语言:采用接近自然语言的字符或表达式、按照一定的语法规则编写程序,需要高级语言编译程序将源程序编译生成目标程序后才能运行。
程序设计语言分为面向过程和面向对象两类。
面向过程语言
特点:强调用计算机能够理解的逻辑来描述解决问题的方法和步骤,不仅要说明做什么,还要说明如何做。过分强调求解过程的描述,程序难以重复使用。
2.面向对象语言
特点:能够直接描述客观世界的事物,将一切事物都看成具有属性和行为的对象。通过抽象找出同一类对象的共同属性和行为,并抽象成类。通过类的继承实现代码重用,编程效率高。
任何一种高级语言或汇编语言编写的程序(称为源程序),都不能由计算机直接执行,必须通过相应的编译程序翻译成机器语言程序(称为目标程序)后才能执行,或者通过解释程序边解释边执行。不同的语言所对应的语言处理程序也是不同的。
程序、进程和线程