计算学科中的基本概念

上传人:j****9 文档编号:54852357 上传时间:2018-09-20 格式:PPT 页数:234 大小:790KB
返回 下载 相关 举报
计算学科中的基本概念_第1页
第1页 / 共234页
计算学科中的基本概念_第2页
第2页 / 共234页
计算学科中的基本概念_第3页
第3页 / 共234页
计算学科中的基本概念_第4页
第4页 / 共234页
计算学科中的基本概念_第5页
第5页 / 共234页
点击查看更多>>
资源描述

《计算学科中的基本概念》由会员分享,可在线阅读,更多相关《计算学科中的基本概念(234页珍藏版)》请在金锄头文库上搜索。

1、第4章 计算学科中的基本概念,李陶深,4.1 计算模型与二进制,4.1.1 计算模型与图灵机,计算模型与图灵机,计算模型: 刻画计算这一概念的一种抽象的形式系统或数学系统。 在计算科学中,是指具有状态转换特征,能够对所处理的对象的数据或信息进行表示、加工、变化、接收、输出的数学机器。 计算模型的层次: 计算某个(类)具体问题的计算方法; 按照计算方法对应的程序完成某类问题特定计算所需要的平台。在计算能力上具有某种等价性的形式系统。计算模型的模型(一切计算模型所内含的机理),计算模型与图灵机,图灵的观点及结论: 凡是能用算法方法解决的问题,也一定能用图灵机解决;凡是图灵机解决不了的问题,任何算法

2、也解决不了。 与图灵机等价的计算模型: 递归函数 -演算 POST规范系统 图灵机是从过程这一角度来刻画计算的本质,其结构简单、操作运算规则也较少,从而为更多的人所理解。,图灵机,图灵机由一条两端可无限延长的带子、一个读写头以及一组控制读写头工作的命令组成,,图灵机,写在带子上的符号为一个有穷字母表:S0,S1,S2,Sp。 可以认为这个有穷字母表仅有S0、S1两个字符, 其中S0可以看作是“0”,S1可以看作是“1”, 由 “0”和“1”组成的字母表可以表示任何一个数。,由于“0”和“1”只有形式的意义,因此,也可以将S0改称为“白”,S1改称为“黑”,甚至,还可以改称为“桌子”和“老虎”,

3、这样改称的目的在于割断与直觉的联系,并加深对布尔域中的值真,假,以及二进制机器本质的理解。机器的控制状态表为:q1,q2,qm。 将一个图灵机的初始状态设为q1,在每一个具体的图灵机中还要确定一个结束状态qw。,一个给定机器的“程序”,机器内的五元组(qiSjSkR(或L或N)ql)形式的指令集,五元组定义了机器在一个特定状态下读入一个特定字符时所采取的动作。5个元素的含义如下:qi表示机器目前所处的状态;Sj表示机器从方格中读入的符号;Sk表示机器用来代替Sj写入方格中的符号;R、L、N分别表示向右移一格、向左移一格、不移动; ql表示下一步机器的状态。,一个机器计算的结果是从机器停止时带子

4、上的信息得到的。容易看出,q1S2S2Rq3指令和q3S3S3Lq1指令如果同时出现在机器中,当机器处于状态q1,第一条指令读入的是S2,第二条指令读入的是S3,那么机器会在两个方块之间无休止地工作。 另外,如果q3S2S2Rq4和q3S2S4Lq6指令同时出现在机器中,当机器处于状态q3并在带子上扫描到符号S2时,就产生了二义性的问题,机器就无法判定。,例子:,b表示空格,q1表示机器的初始状态, q4表示机器的结束状态,设带子上的输入信息是10100010,读入头位对准最右边第一个为0的方格,状态为初始状态q1。规则如下: q1 0 1 L q2 q1 1 0 L q3 q1 b b N

5、q4 q2 0 0 L q2 q2 1 1 L q2 q2 b b N q4 q3 0 1 L q2 q3 1 0 L q3 q3 b b N q4,计算结果是10100011,即对给定的数加1。,以上命令计算的是这样一个函数:S(x)x1。当没有输入时,即初始状态所指的方格为空格(b)时,不改变空格符,读写头不动并停机。,图灵机的计算能力,第一,把图灵机看作识别器,即判断带子上最初的内容能否被图灵机所接受。假定图灵机从左向右扫描完带子上的内容后停机则为接受,否则为不接受。例2 一台图灵机可以设计成识别下面的序列:1000110, 10011101, 010101011。,图灵机的计算能力,第

6、二,把图灵机看作生成器,对给定的输入集合,考察输出集合,并研究输入输出集合性质之间的关系,这就研究了图灵机的生成能力。例3 设一台图灵机的输入集合为In1n0nnN,可设计一台图灵机,对给定的输入集合In,得到输出集合Out0n1nnN。其中,N是全体自然数的集合。,图灵机的计算能力,第三,把图灵机看作计算器,相当于一个函数。图灵机的输入是函数的自变量的值,图灵机的输出是函数的值。例4 图灵机可以计算下列函数:(1) s(x)x1;(2) o(x)0;(3) A(0,y)y1,A(x1,0)A(x,1),A(x1,y1)A(x,A(x1,y)。,图灵机的计算能力,第一和第二个函数读者不难从图灵

7、机的定义出发感悟到它们是图灵机可以计算的函数,而第三个函数就比较复杂,一时难于判断。顺便提一下,第三个函数叫做阿克曼函数,它是阿克曼(W.Ackermann)在研究原始递归函数和递归函数的关系时给出的。这个函数在计算理论中具有重要价值。 事实上,图灵机还可以计算形式上比第三个函数更复杂的函数。,图灵机的计算能力,图灵机可以计算 S(x)x1(后继函数), N(x)0(零函数), Ui(n)(x1,x2,xn)xi,1in(投影函数) 上述3个函数的任意组合。 从递归论中,我们知道这3个函数属于初始递归函数, 任何原始递归函数都是从这3个初始递归函数经有限次的复合、递归和极小化操作得到的。 从可

8、计算理论可知每一个原始递归函数都是图灵机可计算的。,4.1 计算模型与二进制,4.1.2 二进制,计算机的数字系统,计算机采用的是二进制数字系统。 基本符号:0、1 进位原则:逢二进一 优点: 易于物理实现 二进制数运算简单 机器可靠性高 通用性强 缺点:对人来说可读性差,十进制数的表示,各位数字与它的权相乘,其积相加。 例如: 27997.63=21*104+ 7*103 + 9* 102 +9* 101 + 7* 100 + 6* 10-1 +3* 10-2 对于任意的十进制数: S=kn*10n +kn-1*10n-1 +k1*101 + k0*100 +k-1*10-1 + k-m+1

9、*10-m+1 + k-m*10-m (n1, m1) 其中,10称为十进制的基数,ki0,1,2,3,4,5,6,7,8 9,m,n为正整数。小数点的位置不言自明。,计算机的数字系统,计算机采用的是二进制数字系统。二进制和十进制一样,是一种数制,它用于表示数的符号(数字)由于在书写中的位置不同而具有不同的值。 基本符号:0、1 进位原则:逢二进一 优点: 易于物理实现 二进制数运算简单 机器可靠性高 通用性强 缺点:对人来说可读性差,二进制数,Sknkn-1 k0. k-mkn2nkn-12n-1k020k-m2-m-m ki2iin 其中,2称为二进制的基数,ki0,1,m,n为正整数。进

10、一步,读者可从十进制数和二进制数的一般表示公式得到启发,将这种表示推广到更一般的任意进制,不同之处只是基数不一样。,二进制数,二进制的运算规则比十进制的运算规则简单得多。只要建立两种进制的数据之间的转换方法,那么,二进制将具有更多的优势。计算机的理论基础是逻辑和代数。当二进制与同样只使用“真”和“假”两个值的逻辑代数建立了联系后,这就为计算机的逻辑设计提供了便利的工具。,不同进位计数制间的转换 R 进制十进制,各位数字与它的权相乘,其积相加。 例如: (11111111.11)2=1*27 + 1*26 + 1* 25 +1* 24 + 1* 23 + 1* 22 +1* 21+ 1* 20+

11、1*2-1+1*2-2 =(255.75)10 (3506.2)8=3*83 + 5*82 + 0*81 + 6*80 +2*8-1 =(1862.25)10 (0.2A)16=2*16-1 +10*16-2=(0.1640625)10,二进制与十进制间的转换 十进制 二进制,十进制整数转换成二进制的整数 “除R取余”法,例如: 2 68 余 数2 34 0 低位2 17 02 8 12 4 02 2 02 1 00 1 高位 所以 681010001002,二进制与十进制间的转换十进制 二进制,十进制小数转换成二进制小数 “乘 R 取整”法,例如:高位0.31252 = 0 .6250.62

12、5 2 = 1 .250.25 2 = 0 .50.5 2 = 1 .0 所以 0.312510 = 0.01012,不同进位计数制间的转换二、八、十六进制的相互转换,每位八进制数相当于三位二进制数 每位十六进制数相当于四位二进制数 (1011010.10)2=(001 011 010 .100)2 =(132.4)8 (1011010.10)2=(0101 1010 .1000)2 =(5A.8)16 (F7)16(1111 0111)2(11110111)2,信息的存储单位,位(bit):度量数据的最小单位,表示一位二进制信息。 字节(byte):由八位二进制数字组成(1 byte = 8

13、 bit)。 K 字节 1 K = 1024 byte M 字节 1 M = 1024 K G 字节 1 G = 1024 M T字节 1T=1024G,非数值信息的表示,西文字符: ASCII码:用7位二进制数表示一个字符,最多可以表示27=128个字符 EBCDIC码:用8位二进制数表示一个字符,最多可以表示28=256个字符 汉字: 应用较为广泛的是“国家标准信息交换用汉字编码“(GB2312-80标准),简称国标码。是二字节码,用二个七位二进制数编码表示一个汉字。,4.2 存储程序式计算机的基本结构与工作原理,4.2.1 冯诺依曼型计算机,冯诺依曼型计算机,图灵机的出现为现代计算机的发

14、明提供了重要的思想。图灵机的带子可以看成是计算机的存储设备,数据可以存储在上面,也可以根据需要擦去。图灵机的命令相当于一组事先设计、存储好了的程序,它们在控制器安排下,决定读写头的每一步操作。这样一种数学机器,如果不考虑它的实用性,就思想和原理而言,确实包含了存储程序的重要思想。,冯诺依曼型计算机,计算机程序是指能够在计算机系统中运行的程序。 现在的计算机全称为存储程序式通用电子数字计算机。其含义是: 在计算机中各种信息用数字代码表示,如指令、数值型数据、字符、图像等。 在物理机制上,数字代码以数字型信号出现。 信息表示数字化-理解计算机工作原理的基本出发点。,冯诺依曼型计算机,目前有两种电信

15、号: 模拟信号:一种在时间上连续的信号,用信号的某些参数(如幅值)去模拟信息。 数字信号:一种在时间上或空间上不连续(离散)的信号。,冯诺依曼型计算机,采用数字化方法表示信息的优点: 抗干扰能力强,可靠性高。 位数增多则数的表示范围扩大,可以表示更精确的数字。 物理上容易实现,并可存储。表示信息的类型和范围极其广泛。能用逻辑代数等数字逻辑技术进行处理。,冯诺依曼型计算机,ENIAC的结构在很大程度上是依照机电系统设计的,还存在重大的线路结构等问题。 在图灵等人工作的影响下,1946年6月,美国杰出的数学家冯诺依曼(Von Neumann)及其同事完成了关于“电子计算装置逻辑结构设计”的研究报告, 具体介绍了制造电子计算机和程序设计的新思想:存储程序、顺序控制 至今为止,大多数计算机采用的仍然是冯诺依曼型计算机的组织结构,只是作了一些改进而已。因此,冯诺依曼被人们誉为“计算机器之父”。,冯诺依曼型计算机的组织结构,输入设备和输出设备,输入设备和输出设备,

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 生活休闲 > 科普知识

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号