您的位置: 网站首页 > 公共课 > 新编计算机文化基础 > 第1章 计算机基础知识 > 【1.3 扩展知识和自学内容】

1.3 扩展知识和自学内容

 

1.3  扩展知识和自学内容

1.阿兰·图灵和冯·诺依曼

1)计算机科学之父阿兰·图灵。

阿兰·麦席森·图灵Alan Mathison Turing1912年—1954年)生于英国伦敦,他是计算机逻辑的奠基者,许多人工智能的重要方法也源自于这位伟大的科学家。他对计算机的重要贡献在于他提出的有限状态自动机,也就是图灵机的概念,对于人工智能,它提出了重要的衡量标准“图灵测试”,如果有机器能够通过图灵测试,那它就是一个完全意义上的智能机,和人没有区别了。他杰出的贡献使他成为计算机界的第一人,现在人们为了纪念这位伟大的科学家将计算机界的最高奖定名为“图灵奖”。

上中学时,他在科学方面的才能就已经显示出来,这种才能仅仅限于非文科的学科上,他的导师希望这位聪明的孩子也能够在历史和文学上有所成就,但是都没有太大的建树。少年图灵感兴趣的是数学等学科。在加拿大他开始了他的职业数学生涯,在大学期间这位学生似乎对前人现成的理论并不感兴趣,什么东西都要自己来一次。大学毕业后,他前往美国普林斯顿大学,也正是在那里,他发明出了图灵机。

图灵机被公认为现代计算机的原型,这台机器可以读入一系列的01,这些数字代表了解决某一问题所需要的步骤,按这个步骤走下去,就可以解决某一特定的问题。这种观念在当时是具有革命性意义的,因为即使在20世纪50年代的时候,大部分的计算机还只能解决某一特定问题,不是通用的,而图灵机从理论上却是通用机。在图灵看来,这台机器只需保留一些最简单的指令,一个复杂的工作只要把它分解为几个最简单的操作就可以实现了,在当时他能够具有这样的思想确实是很了不起的。他相信有一个算法可以解决大部分问题,而困难的部分则是如何确定最简单的指令集,什么样的指令集才是最少的,而且又很实用,还有一个难点是如何将复杂问题分解为这些指令的问题。

图灵对于人工智能的发展有诸多贡献,例如图灵曾写过一篇名为《机器会思考吗?》(《Can Machine Think?的论文,其中提出了一种用于判定机器是否具有智能的试验方法,即图灵试验。图灵相信如果模拟人类大脑的思维就可以做出一台可以思考的机器,他于1950提出了著名的“图灵测试”,测试是让人类考官通过键盘向一个人和一个机器发问,这个考官不知道他现在问的是人还是机器。如果在经过一定时间的提问以后,这位人类考官不能确定谁是人谁是机器,那这个机器就有智力了。这个测试在我们想起来十分简单,可是伟大的思想就源于这种简单的事物之中。

图灵对生物也十分感兴趣,他希望了解生物的各个器官为什么是这个样子而不是那个样子,他不相信达尔文的进化论,他觉得生物的发展与进化没什么关系。对于生物学,他也用他钟爱的数学进行研究,他的研究对他进行计算机的研究也有促进作用。他把生物的变化也看作是一种程序,也就是图灵机的基本概念,按程序进行。最后,这位伟大的计算机先驱于195467日在英国的曼彻斯特去世,终生未娶。

2)数学奇才、计算机之父——冯·诺依曼。

约翰·冯·诺依曼John Von Nevmann1903年—1957年),美藉匈牙利人,19031228日生于匈牙利的布达佩斯,父亲是一个银行家,家境富裕,十分注意对孩子的教育。冯·诺依曼从小聪颖过人,兴趣广泛,读书过目不忘。据说他6岁时就能用古希腊语同父亲闲谈,一生掌握了7种语言。最擅长德语,在他用德语思考种种设想时,又能以阅读的速度译成英语。他对读过的书籍和论文能很快一句不差地将内容复述出来,而且若干年之后,仍可如此。冯·诺依曼在布达佩斯的卢瑟伦中学读书期间,就崭露头角而深受老师的器重。在费克特老师的指导下发表了第一篇数学论文,此时冯·诺依曼还不到18岁。19211923年在苏黎世大学学习,很快又在1926年以优异的成绩获得了布达佩斯大学数学博士学位,此时冯·诺依曼年仅22岁。19271929年冯·诺依曼相继在柏林大学和汉堡大学担任数学讲师。1930年接受了普林斯顿大学客座教授的职位,西渡美国。1931年成为该校终身教授。1933年转到该校的高级研究所,成为最初6位教授之一,并在那里工作了一生。冯·诺依曼是普林斯顿大学、宾夕法尼亚大学、哈佛大学、伊斯坦堡大学、马里兰大学、哥伦比亚大学和慕尼黑高等技术学院等校的荣誉博士。他是美国国家科学院、秘鲁国立自然科学院和意大利国立林且学院等院的院土。1954年他任美国原子能委员会委员,1951年至1953年任美国数学会主席。

冯·诺依曼在数学的诸多领域都进行了开创性工作,并作出了重大贡献。二次世界大战前,他主要从事算子理论、鼻子理论、集合论等方面的研究。他把集合论加以公理化,他的公理化体系奠定了公理集合论的基础。他从公理出发,用代数方法导出了集合论中许多重要概念、基本运算、重要定理等。1933年,冯·诺依曼解决了希尔伯特第5问题,即证明了局部欧几里得紧群是李群。1934年他又把紧群理论与波尔的殆周期函数理论统一起来。他还建立了算子代数这门新的数学分支,这个分支在当代的有关数学文献中均称为冯·诺依曼代数。冯·诺依曼还创立了博弈论这一现代数学的又一重要分支。1944年发表了奠基性的重要论文《博弈论与经济行为》。冯·诺依曼在格论、连续几何、理论物理、动力学、连续介质力学、气象计算、原子能和经济学等领域都做过重要的工作。

冯·诺依曼对人类的最大贡献是对计算机科学、计算机技术和数值分析的开拓性工作。

现在一般认为ENIAC机是世界上第一台电子计算机,它是由美国科学家研制的,于1946214日在费城开始运行。ENIAC机证明电子真空技术可以大大地提高计算技术,不过,ENIAC机本身存在两大缺点:一是它没有存储器;二是它用布线接板进行控制,甚至要搭接跳线,计算速度受到很大限制。ENIAC机研制组的莫克利和埃克特显然是感到了这一点,他们也想尽快着手研制另一台计算机,以便改进。冯·诺依曼由ENIAC机研制组的戈尔德斯廷中尉介绍参加ENIAC机研制小组后,便带领这批富有创新精神的年轻科技人员,向着更高的目标进军。1945年,他们在共同讨论的基础上,发表了一个全新的“存储程序通用电子计算机方案”——EDVACElectronic Discrete Variable Automatic Computer)。在此过程中,冯·诺依曼显示出他雄厚的数理基础知识,充分发挥了他的顾问作用及探索问题和综合分析的能力。

EDVAC方案明确奠定了新机器由5个部分组成,包括:运算器、逻辑控制装置、存储器、输入和输出设备,并描述了这5部分的职能和相互关系。EDVAC机还有两个非常重大的改进,采用了二进制,不但数据采用二进制,指令也采用二进制;建立了存储程序,指令和数据便可一起放在存储器里,并做同样处理。简化了计算机的结构,大大提高了计算机的速度。194678月间,冯·诺依曼和戈尔德斯廷、勃克斯在EDVAC方案的基础上,为普林斯顿大学高级研究所研制IAS计算机时,又提出了一个更加完善的设计报告《电子计算机逻辑设计初探》。它的综合设计思想便是著名的“冯·诺依曼原理”,其中核心就是存储程序和程序控制。

1954年夏,冯·诺依曼被发现患有癌症,195728日,在华盛顿去世,终年54岁。

鉴于冯·诺依曼在发明电子计算机中所起到的关键性作用,他被西方人誉为“计算机之父”。冯·诺依曼原理被誉为“计算机发展史上的一个里程碑”。它标志着电子计算机时代的真正开始,指导着以后的计算机设计。自然界的一切事物总是在发展着的,随着科学技术的进步,今天人们又认识到“冯·诺依曼机”的不足,它妨碍着计算机速度的进一步提高,从而提出了“非冯·诺依曼机”的设想。

2.未来的新型计算机

电子计算机从诞生以来已经走过了五十多年的历程,在这个过程中,计算机的体积不断缩小,而性能和速度却不断提高。然而,人类的追求是永无止境的,一刻也没有停止过研究更好、更快、功能更强的计算机。从目前的研究情况来看,未来的新型计算机可能会在以下几个方面取得进展。

1)光子计算机。

光子计算机利用光子来取代电子进行数据的运算、存储、传输。在光子计算机中,使用光学晶体管作为基本逻辑器件,不同波长的光表示不同的数据,可以快速完成复杂的计算工作。与传统的硅芯片计算机相比,光子计算机具有极高的运算速度、强大的并行处理能力、非常大的存储容量、很强的抗干扰能力、与人脑相似的容错性能。

目前,光子计算机的许多关键技术,如光存储技术、光子集成电路等已经取得了一些研究突破,但光子计算机要想能够真正实现还有很长的路要走。

2)分子计算机。

分子计算机的最大特点是采用生物芯片来进行数据的运算、存储、传输等处理工作。生物芯片由生物工程技术所生产的蛋白质分子构成,信息在芯片中以波的形式传播,通过在分子级别上的物理或化学作用进行数据的检测、处理、传输、存储。生物芯片的特点是具有极高的运算速度和极低的能量消耗。

科学家们设想,利用生物芯片技术可以制造超微型机器人,利用这种机器人可以进入人体修复内脏器官的损伤,或者进行精密仪器仪表的检测和修理。另外,通过蛋白质分子的组合、再生功能,可以使分子计算机具有自我修复故障、自学习、思维思考等能力。

关于分子计算机的研究,在计算机技术、生物技术和控制论理论方面提出了许多新的课题,也带来了巨大的发展前景和广阔的发展空间。

3)量子计算机。

量子计算机利用量子物理学的一些基本原理,按照量子理论,原子具有多种现实状态,这种多现实态是量子力学的标志。多现实态理论指出:原子和亚原子可以同时存在于这里和那里,可以同时具有高速和低速,可以同时向上和向下运动。如果利用这些不同的状态来表示不同的数据,就可以利用一组具有不同潜在状态组合的原子或亚原子在同一时刻对某个问题的若干答案进行求解。

目前,美国的研究人员已经研制成功了4量子位逻辑门,在量子计算机的研究中取得了一些初步的突破。与传统的电子计算机相比,量子计算机的速度更快、存储容量更大,具有强大的搜索能力,在安全方面也具有较大的优势。

3PC机中数值数据的表示

在个人计算机以当前流行的Pentium机为例)中,数值数据有两种表示方法:定点数和浮点数。

1)定点数。

定点数约定小数点隐含在某个固定位置,实际使用中有两种情况;定点整数和定点小数。

定点整数约定小数点位于机器数的最右边,只能表示纯整数,长度通常为16位或32位。定点整数分为带符号和不带符号两类。16位定点整数在计算机内部的表示如下所示:

带符号定点整数

一个符号位

15个数值位

小数点

表示范围:-215+215-1

 

无符号定点整数

16个数值位

小数点

表示范围:0+216-1

定点小数通常都是带符号的,小数点位置约定在符号位与数值位之间,定点小数是纯小数,所有数值都小于116位定点小数在计算机内部的表示如下所示。

带符号定点小数

一个符号位

小数点

15个数值位

2)浮点数。

浮点数(n)2=2r×(±M)中包含阶符、阶码、尾符、尾码各个组成部分,可以采用不同的编码方法。为了保持兼容,IEEE制定了有关浮点数的工业标准IEEE754,它已经被包括Pentium在内的大多数计算机所采用,其中常用的格式如表1-9所示。

1-9  浮点数常用的格式

   

数符位数

阶的位数

尾数位数

单精度浮点数

32

1

823

双精度浮点数

64

1

1152

扩展精度浮点数

80

1

1564

注:其中浮点数的阶是由移码来表示的。

32位的单精度浮点数为例,它在计算机中表示时包含三个部分,其中尾符s1位,0表示正、1表示负;偏移阶码r8位,是带有偏移量127的无符号整数,阶码的实际值=e-127;尾数占23位,用原码表示,其值在12之间,其中1与小数点都是隐含的,并不直接表示出来。采用该方式表示的浮点数的数值范围可达10-3810+3832位浮点数在计算机内部的表示如下所示。

1位尾符s

8位偏移阶码r

23位原码尾数M

浮点数一般都表示成规格化形式,尾数的最高位必定是1,它和小数点一样是隐含的,所以23位原码尾数实际上是24位。通过下面两个例子可以加深理解。

将十进制数213.625表示成单精度浮点数。

首先把十进制数转化为二进制:(213.625)10=(11010101.101)2

再将二进制数规格化:(11010101.101)2=(2+101×1.1010101101)2=(2+7×[1.]1010101101)2

指数转换为偏移阶码:r=7+127=134=(10000110)2

所以其浮点形式为:0  10000110  10101011010000000000000

32位浮点数1  10000010  10111000000000000000000对应的十进制数是多少

先看阶码:r=(10000010)2=(130)10,所以阶码=130-127=3

再算尾数:(0.1011)2规格化前应为(1.10111)2 且数符为1表示负,所以应为(-1.10111)2

即该数值为:(-1.10111×23)2=(-1101.11)2=(-13.75)10

4.汉字字符的其他编码

1BIG5码。

BIG5码是在中国台湾和香港地区使用的繁体汉字的一种常用编码方法,是在1984年由中国台湾财团法人资讯工业策进会和五家有意愿共同推动计算机中文化的资讯公司宏基、神通、佳佳、零壹及大众)所共同创立,故称大五码。该编码标准共包括13060个繁体汉字,其中一级汉字为5401个、二级汉字为7652个、图形符号为440个。BIG5码的编码范围是0x8140-0xFE7E0x81A1-0xFEFE,其中0xA140-0xA17E0xA1A1-0xA1FE 是图形符号区,0xA440-0xF97E0xA4A1-0xF9FE 是汉字区。

2UCS码。

19935月国际标准化组织正式发布了ISO10646信息技术——通用多八位编码字符集 Universal Coded Character SetUCS)。该标准是为统一表示世界各国、各地区的文字而编制的,为多文种信息的交换和处理创造了基本条件。我国等同于该标准的国家标准为GB 13000.1CJK统一汉字编码字符集》。

UCS码的整个字符集包括128个组,每个组包括256个平面,每个平面有256行,每行有256个位置,每个位置可安排一个字符,字符的编码用该字符的十六进制的组号、平面号、行号、字位号来表示,编码的长度为4个字节。

UCS中的第一个平面00组的00平面)为基本多文种平面BMP),在其中包含了字母文字、音节文字和表意文字,共分为AIOR四个区。A区有19968个字符位置,存放字母文字、音节文字和各种符号;I区有20992个字符位置,存放中文、日文、韩文Chinese Japanese KoreanCJK)的统一表意文字;O区有16384个字符位置,预留作为未来标准化之用;R区有8192个字符位置,为基本多文种平面的限制使用区域,存放专用字符和兼容字符。我国等同采用此标准制定了GB 13000.11993。该标准采用了全新的多文种编码体系,收录了中、日、韩20902个汉字,是编码体系未来的发展方向。

通用编码字符集UCS的优点是具有巨大的编码空间,可以容纳足够多的字符编码,并且UCS在制定时也考虑了与现有编码的兼容。但是UCS的缺点是编码码长较长、字符集信息容量较大,在字符信息的处理效率和使用方便性方面存在不足。

3Unicode码。

UnicodeUCS16位格式子集,它采用2字节编码统一表示世界各国的主要文字。字符集的内容与UCS的基本多文种平面BMP)内容一致,其中包括6811个符号、20902个汉字、11172个日文韩文字符、6400个造字区域、20249个保留区域,共计65534个编码。

Unicode编码收录了CJK字符、世界各个主要大小字符集,采用2字节的等长编码,即具有较高的处理效率,又可以处理多种文字,所以得到比较广泛的应用。Unicode编码的缺点是与ASCII码之间不兼容,并且编码空间也略显不足。

4GBK码。

GBK汉字扩充内码规范,GB表示国家标准、K表示扩充)编码是我国制定的,GBK的目的是解决汉字收字不足、简繁同平面共存、简化代码体系间转换等汉字信息交换的瓶颈问题,并在保持已有应用软件兼容性的前提下,向最终的国际统一双字节字符集标准ISO 10646.1 迈进。

GBK编码仍以2字节表示一个汉字,第一字节从81HFEH,第二字节从40HFEH。虽然第二字节的最高位可能不为1,但汉字内码总是两个字节连续出现,所以可以与ASCII码明确区分。GBK内码的第一、第二字节的A1HFEHGB 231280内码完全一致,从而可以较好地与旧的系统保持兼容。GBK收录了GB231280的所有字符,同时又在字汇一级支持CJK汉字,并且还增加了一些其他汉字及符号。

Windows 95/98/2000全面支持GBK内码,可以统一地表示20902个汉字。Windows操作系统中的“全拼输入法”采用的就是GBK码,所以能够输入一些生僻的汉字。

5)新标准GB 180302000

200171日开始正式实施的中华人民共和国国家标准GB 180302000GB 231280的扩展。国家标准GB 180302000《信息交换用汉字编码字符集基本集的扩充》是我国继GB 231280GB 130001993之后最重要的汉字编码标准,是未来我国计算机系统必须遵循的基础性标准之一。该编码规范延续了GB 231280编码的体系结构,提供了150万个码位,收录了27484个汉字,为解决人名、地名用字问题提供了方案,为汉字研究、古籍整理等领域提供了统一的信息平台基础,较好地适应了多文种信息交换的需要。GB 180302000采用单//四字节混合编码的方式,在字位上与GB 13000.1一致,同时收录了藏文、蒙文、维吾尔文等主要少数民族文字,为各种中文信息的传输与处理奠定了坚实的基础。GB 180302000还能与当前大多数操作系统、中文平台在内码一级保持兼容。