《第1章 计算机基础知识.ppt》由会员分享,可在线阅读,更多相关《第1章 计算机基础知识.ppt(240页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、第1章 计算机基础知识,1.1 计算机概述 1.2 计算机的类型与用途 1.3 信息的表示与存储 1.4 计算机系统的组成与应用 1.5 PC机的硬件配置 1.6 计算机应用与信息化社会 1.7 计算机文化与社会道德 上机实训课题1,1.1 计算机概述,1.1.1 第一台电子计算机的诞生 世界上第一台数字式电子计算机是由美国宾夕法尼亚大学的物理学家约翰莫克利(John Mauchly)和工程师普雷斯伯埃克特(Presper Eckert)领导研制的取名为ENIAC (Electronic Numerical Integrator and Calculator)的计算机。,1942年,在宾夕法尼
2、亚大学任教的约翰莫克利提出了用电子管组成计算机的设想,这一方案得到了美国陆军弹道研究所的高尔斯特丹(Goldstine)的关注。当时正值第二次世界大战之际,新武器研制中的弹道问题涉及许多复杂的计算,单靠手工计算已远远满足不了要求,急需能自动计算的机器。于是,在美国陆军部的资助下,1943年开始了ENIAC的研制,并于1946年完成。当时它的功能确实出类拔萃,例如它可以在一秒钟内进行5000次加法运算,3毫秒便可进行一次乘法运算,与手工计算相比运算速度大大加快了,60秒钟射程的弹道计算时间由原来的20分钟缩短到30秒。,ENIAC也存在着明显的缺点,它的体积庞大,机器中约有18 800只电子管,
3、1500个继电器,70 000只电阻及其他各类电气元件,运行时耗电量很大;它的存储容量很小,只能存20个字长为10位的十进制数;另外,它采用线路连接的方法来编排程序,每次解题都要靠人工改接连线,准备时间大大超过实际计算时间。,尽管如此,ENIAC的研制成功还是为以后计算机科学的发展奠定了基础,而每克服它的一个缺点,都会对计算机的发展带来很大的影响,其中影响最大的就是程序存储方式的采用。将程序存储方式的设想确立为体系的是美国数学家冯诺依曼(Von Neumann),其主要思想是:在计算机中设置存储器,将符号化的计算步骤存放在存储器中,然后依次取出存储的内容进行译码,并按照译码的结果进行计算,从而
4、实现计算机工作的自动化。 1945年,冯诺依曼参与新机器EDVAC(Electronic Discrete Variable Automatic Computer)的研制,参与该工作的还有研制ENIAC的原班人马埃克特和莫克利等。EDVAC不但采用了汞延迟存储器,而且采用了二进制编码。,遗憾的是,在研制过程中,以冯诺依曼为首的理论界人士和以埃克特、莫克利为首的技术界人士之间发生了严重的意见分歧,致使EDVAC的研制搁浅,直至1950年才勉强完成。 1946年,英国剑桥大学的莫利斯威尔克思参加了EDVAC讲习班,回国后开始研制EDSAC(Electronic Delay Storage Auto
5、matic Calculator),并于1949年完成。EDSAC直接受EDVAC方案的影响,采用了二进制和程序存储方式,运算速度为670次加减法每秒,170次乘法每秒,程序和数据的输入采用纸带,输出采用电传打字机。这样,世界上第一台程序存储式计算机的殊荣由EDSAC夺得。以后的计算机采用的都是程序存储方式,而采用这种方式的计算机统称为冯诺依曼式计算机。,1.1.2 计算机发展的几个阶段 从第一台计算机的诞生到现在,计算机已走过50多年的发展历程。在这期间,计算机的系统结构不断变化,应用领域也在不断拓宽。人们根据计算机所用逻辑元件的种类对计算机的发展阶段进行了划分,习惯上分为四个阶段,如表1.
6、1所示。,表1.1 计算机发展的四个阶段,从第一台计算机的出现直至20世纪50年代后期,这一时期的计算机属于第一代计算机,其主要特点是采用电子管作为基本物理器件。它的体积大,能耗高,速度慢,容量小,价格昂贵,应用也仅限于科学计算和军事目的。 20世纪50年代后期到60年代中期出现的第二代计算机采用晶体管作为基本物理器件,并采用了监控程序,这是操作系统(OS)的雏形。在这一期间,适用于事务处理的COBOL语言也得到了广泛应用,这意味着计算机的应用范围已从科学计算扩展到了事务处理领域。与第一代计算机相比,晶体管计算机体积小,成本低,功能强,可靠性高。这时期计算机不仅应用于军事与尖端技术上,而且也被
7、用于工程设计、数据处理、事务管理等方面。,1964年4月,IBM公司推出了采用新概念设计的IBM 360计算机,宣布了第三代计算机的诞生。正像它名字中的数字所表示的那样,IBM 360有360全方位的应用范围。它分为大、中、小型等6个型号,具有通用化、系列化、标准化的特点。通用化即兼顾了科学计算、数据处理、实时控制等多方面的应用,机器指令丰富。系列化即在指令系统、数据格式、字符编码、中断系统、输入/输出方式、控制方式等方面保持统一,使用户在低档机上编写的程序可以不加修改地运行在以后性能更好的高档机上,实现了程序的兼容。标准化即采用标准的输入/输出接口,这样各机型的外部设备都是通用的。,第四代计
8、算机始于20世纪60年代末70年代初,其特征是以大规模集成电路VLSI为计算机的主要功能部件,用16 KB、64 KB或集成度更高的半导体存储器作为主存储器,计算速度可达每秒几百万次甚至上亿次。这一时期在系统结构方面发展了并行处理技术、分布式计算机系统和计算机网络等;在软件方面发展了数据库系统、分布式操作系统、高效而可靠的高级语言以及软件工程标准化等,并逐渐形成软件产业部门。,1.1.3 未来计算机的发展方向 从第一台计算机的诞生到今天,计算机的体积不断变小,但性能、速度却在不断提高。 然而,人类的追求是无止境的,科学家们一刻也没有停止研究更好、更快、功能更强的计算机。从目前的研究方向看,未来
9、计算机将朝着以下几个方向发展。 1. 超越冯诺依曼结构 到目前为止,各种类型的计算机都属于冯诺依曼型计算机,即采用存储程序原理和二进制编码。随着计算机应用领域的扩大,冯诺依曼型的工作方式逐渐显露出其局限性,因此科学家们又提出了制造非冯诺依曼型计算机的设想。,自20世纪60年代起,人们从两个方向开始努力:一是创建新的程序设计语言,即所谓的“非冯诺依曼语言”;二是从计算机元件方面提出了与人脑神经网络相类似的新型超大规模集成电路的设想,即“分子芯片”。 “非冯诺依曼语言”主要有三种:LISP、PROLOG和F.P.。LISP语言使用最简单的词汇来表达非数值计算问题,具有自编译能力,广泛应用于数学中的
10、符号微积分计算、定理证明、谓词演算和博弈论等,还扩展到在计算机中进行符号处理、硬件描述和超大规模集成电路设计等。PROLOG语言是一种逻辑程序设计语言,其核心思想是把程序设计变为逻辑设计,即程序等于逻辑,大大突破了传统程序设计的概念。,PROLOG语言在20世纪70年代很受冷落,但在1982年日本提出“第五代计算机”时,它成为核心语言,并成为与LISP语言并驾齐驱的人工智能语言。F.P.语言是由IBM公司的软件大师约翰巴库斯(FORTRAN语言的创建者)创建的,它是一种供理论研究用的理想语言,直到20世纪90年代还未广泛应用。,20世纪40年代初,匹茨等人把逻辑中的真假值与人类神经元的兴奋和抑
11、制加以类比,从而建立了神经网络模型。维纳则进一步把这种神经网络模型与计算机的开关电路作了类比,创建了一门新学科生物控制论,设想用计算机电子元器件的0和1的运算来逐次接近人脑神经元的兴奋和抑制。然而人们发现,即便是超大规模集成电路芯片上的晶体管也无法与人脑的神经元相比。人脑的神经元有1000亿个,而每一个芯片上放置2000万个晶体管就几乎达到极限,两者相距5000倍。这样,在20世纪80年代初,人们根据有机化合物分子结构存在着“键合”和“离解”两种状态,提出了生物芯片构想,并着手研究由蛋白质分子作为计算机元件而组成的生物计算机。,2. 高速计算机浮出水面 研究表明,计算机运行速度的快慢与芯片之间
12、信号传输的速度紧密相关。然而,目前广泛使用的硅二氧化物在传输信号的过程中会吸收掉一部分信号,从而延长了信息传输的时间。而一种新近研制的“空气胶滞体”导线几乎不吸收任何信号,并可以降低电耗。在不需要对计算机芯片进行任何改造的前提下,只需换上“空气胶滞体”导线,就可以成倍提高计算机的运行速度。目前这种技术需要解决的主要问题是散热问题。 不久前,美国IBM公司制造的两台IBM Linux集群计算机,每秒钟可执行2万亿次浮点运算,是迄今为止运算速度最快的Linux超级计算机。,3. 生物计算机生机勃勃 生物计算机在20世纪80年代中期开始研制。其最大特点是采用了生物芯片,生物芯片由生物工程技术产生的蛋
13、白质分子构成。在这种芯片中,信息以波的形式传播,运算速度比当今最新一代的计算机快10万倍,而能量消耗仅为普通计算机的1/10,并拥有巨大的存储能力。由于蛋白质分子能够自我组合,再生新的微型电路,这使得生物计算机具有生物体的一些特点,如能发挥生物本身的调节机能自动修复芯片故障,还能模仿人脑的思考机制。,美国首次公布的生物计算机被用来模拟电子计算机的逻辑运算,解决虚构的七城市间最佳路径问题。不久前,200多名各国计算机学者聚集在美国普林斯顿大学,联名呼吁向生物计算机领域进军。预计不久的将来,科学家们就能制造出分子元件,即通过在分子水平上的物理化学作用对信息进行检测、处理、传输和存储。 4. 光学计
14、算机前景光明 所谓光学计算机,就是利用光作为信息的传输媒体。与电子相比,光子具有许多独特的优点:它的速度永远等于光速,具有电子所不具备的频率及偏振特征,从而可大大提高传输信息的能力。此外,光信号传播不需要导线,抗干扰能力强。一块直径仅2 cm的光棱镜可以通过的信息比特率超过世界全部电缆总和的300倍。,20世纪90年代中期,光子计算机的研究成果不断涌现。其中最显著的研究成果是由法国、德国等国60多名科学家联合研制开发成功的世界上第一台光计算机,其运算速度比目前世界上最快的超级计算机快1000多倍,并且准确性极高。此外,光计算机的并行能力强,具有超高速的运算潜力。在工作环境要求方面,超高速的计算
15、机只能在低温条件下工作,而光计算机在室温下就可以正常工作。 目前光计算机的许多关键技术,如光存储技术与光存储器、光电子集成电路等都已取得了重大突破。,5. 量子计算机呼之欲出 所谓量子计算机,是指利用处于多现实态下的原子进行运算的计算机。这种多现实态是量子力学的标志。在某种条件下,原子世界存在着多现实态,即原子和亚原子粒子可以同时存在于此处或彼处,可以同时表现出高速和低速,可以同时向上或向下运动。如果用这些不同的原子状态分别代表不同的数字或数据,就可以利用一组具有不同潜在状态组合的原子,在同一时间对某个问题的所有答案进行探询,并最终使代表正确答案的组合脱颖而出。,与传统的电子计算机相比,量子计
16、算机具有以下优点: (1) 解题速度快。传统的电子计算机用“0”和“1”表示信息,而量子粒子可以有多种状态,使量子计算机能够采用更为丰富的信息单位,从而大大加快了处理速度。 (2) 存储量大。电子计算机用二进制存储数据,而量子计算机用量子位存储,具有叠加效应。例如,n个量子位就可以存储2n个数据。 (3) 搜索功能强。美国朗讯公司贝尔实验室的教授们发现,量子计算机能够组成一种量子超级网络引擎,可轻而易举地从海量数据中快速搜寻出特定的信息。其方法就是采用不同的量子位状态组合,分别检索数据库里的不同部分,其中必然有一种状态组合会找到所需的信息。,在进入21世纪之际,科学家根据量子力学理论,在研制量
17、子计算机的道路上取得了新的突破。美国科学家宣布,他们已成功实现了4量子位逻辑门,取得了4个锂离子的量子缠结状态。 科学家们预言,21世纪将是量子计算机、生物计算机、光学计算机和情感计算机的时代,就像电子计算机对20世纪产生了重大影响一样,各种新颖的计算机也必将对21世纪产生重大影响。,1.2 计算机的类型与用途,计算机由于其运算的高速度、高可靠性和高精确度,以及其所具有的海量存储信息的能力,在各领域得到了广泛应用。根据其用途不同,计算机可分为通用机和专用机两类。通用机能解决多种类型的问题,通用性强;而专用机则配有解决特定问题的软、硬件,功能单一,但能高速、可靠地解决特定问题。 通常,人们又按照
18、计算机的运算速度、字长、存储容量、软件配置及用途等多方面的综合性能指标,将计算机分为微型机、工作站、小型机、大型机和巨型机等几类。这种分类的标准只是相对的,只能就某一时期而言。下面分别对其加以介绍。,1. 微型计算机 以微处理器为中央处理单元而组成的个人计算机(PC)简称微型机或微机。 1971年,美国Intel公司成功地在一块芯片上实现了中央处理器的功能,制成了世界上第一片4位微处理器MPU(Micro-Processing Unit),也称Intel 4004,并由它组装成第一台微型计算机MCS-4,由此揭开了微型计算机大普及的序幕。随后,许多公司(如Motorola、Zilog等)也争相
19、研制微处理器,相继推出了8位、16位、32位微处理器。芯片内的主频和集成度也在不断提高,芯片的集成度几乎每18个月提高一倍,而由它们构成的微型机在功能上也不断完善。如今的微型计算机在某些方面已可以和以往的大型机相媲美。,美国IBM公司采用Intel微处理器芯片,自1981年推出IBM PC(Personal Computer)微型计算机后,又推出IBM PC/XT、PC 286、PC386、PC486、Pentium和PentiumPro等一系列微型计算机。由于其功能齐全,软件丰富,价格便宜,很快便占据了微型计算机市场的主导地位。 美国Apple公司生产的苹果机由于其先进的技术、友好的用户界面
20、以及软硬件的完美结合而在个人计算机领域也备受人们的青睐。,目前,世界上几家著名微处理机芯片和制造厂商已开发和制造出64位结构的微处理机芯片,如DEC公司推出的Alpha 21164微处理机芯片,IBM、Motorola、Apple三家公司联合推出的Power-PC体系结构的64位微处理机芯片,以及Intel公司正在开发的新一代64位微处理机芯片等。随着技术的不断发展,64位计算机体系结构将逐渐取代32位体系结构。 随着社会信息化进程的加快,强大的计算能力对每一个用户来说固然必不可少,然而移动办公又将成为一种重要的办公方式。因此,一种比台式机体积更小,重量更轻,功耗更低,并可随身携带的“便携机”
21、便应运而生,笔记本型电脑就是其中的典型产品之一。虽然同样价格的笔记本电脑在功能上要逊色于台式机,但它具有适于移动和外出使用的优点,因此深受用户欢迎。,根据微型机是否由最终用户使用,微机又可分为独立式微机(即我们日常使用的微机)和嵌入式微机。嵌入式微机作为一个信息处理部件安装在一个应用设备里,最终用户不直接使用该计算机,使用的是该应用设备,例如,包含有微机的医疗设备、高级录像设备等。嵌入式微机一般是单片机。将中央处理器、存储器和输入/输出接口集成在一个芯片上的计算机称为单片机。单片机已广泛用于家电、生活用具和仪器仪表中,并正向智能化发展。,微型机从出现到现在不过20几年,因其小巧、轻便且价格便宜
22、而应用范围急剧扩展,从太空中的航天器到家庭生活,从工厂的自动控制到办公自动化以及商业、服务业、农业等,遍及社会各个领域。在学校中,微机已成为学生学习计算机操作的主要机种。PC机联网之后,用户又可以通过PC机使用网络上的各种软、硬件资源。PC机已成为网络上客户机的主力军。使用多台微机并行工作,还可以实现性能价格比非常好的高性能计算机系统。,当前,个人计算机已渗透到各行各业和千家万户。它既可以用于日常信息处理,又可以用于科学研究。PC机的出现使得计算机真正面向全人类,真正成为大众化的信息处理工具。不久的将来,人们手持一部“便携机”便可通过网络随时随地与世界上任何一个地方的任何一个人或计算机实现信息
23、交流与通信。原来保存在桌面和书柜里的部分信息将存入随身携带的电脑中。到那时,人走到哪里,以个人机(特别是“便携机”)为核心的移动信息系统就跟到哪里,人类向着信息化的自由王国又迈进了一大步。,2. 工作站 工作站是一种高档微机系统。它具有较高的运算速度,既具有大、中、小型机的多任务、多用户能力,又具微型机的操作便利和良好的人机界面。工作站可连接多种输入/输出设备,而其最突出的特点是图形功能强,具有很强的图形交互与处理能力,因此在工程领域,特别是在计算机辅助设计(CAD)领域得到广泛应用。人们通常认为工作站是专为工程师设计的机型。工作站一般都带有网络接口,采用开放式系统结构,即将机器的软、硬件接口
24、公开,并尽量遵守国际工业界的流行标准,以鼓励其他厂商、用户围绕工作站开发软、硬件产品。目前,多媒体等各种新技术已普遍集成到工作站中,使其更具特色。而它的应用领域也已从最初的计算机辅助设计扩展到商业、金融、办公领域,并频频充当网络服务器的角色。,3. 小型机 小型机可以为多个用户执行任务,通常是一个多用户系统。小型机结构简单,设计试制周期短,便于及时采用先进工艺。这类机器由于具有可靠性高,价格便宜,对运行环境要求低,易于操作且便于维护等优点,因此对广大用户具有较强的吸引力,特别在一些中、小企业中很有市场。小型机的出现加速了计算机的推广和普及。,DEC公司的PDP-11系列是16位小型机的早期代表
25、。近年来,随着基础技术的进步,小型机的发展引人注目,特别是在体系结构上采用了RISC技术,即计算机硬件只实现最常用的指令集,复杂指令用软件实现,从而使其具有更高的性能价格比。在系统结构上,小型机也经常像大型计算机一样采用多处理机系统。目前,一些具有高速硬盘接口的高档微机也在扮演着小型机的角色。 小型机应用范围广泛,它既可作为集中式的部门级管理计算机,也可在大型应用中作为前端处理机,还可在客户/服务器结构中作为服务器(如文件服务器、WWW服务器及应用服务器等)使用。小型机的应用例子有工业自动控制、大型分析仪器、测量仪器、医疗设备中的数据采集和分析计算等。小型机还广泛用于企业管理以及大学和研究所的
26、科学计算等。,4. 大型通用机 大型通用机是对一类计算机的习惯称呼,本身并无十分准确的技术定义,其特点表现为通用性强,具有很强的综合处理能力,性能覆盖面广等。大型通用机主要应用于公司、银行、政府部门、社会管理机构和制造厂家等,通常人们称其为“企业级”计算机。 大型机系统可以是单处理机、多处理机或多个子系统的复合体。 在信息化社会里,随着信息资源的剧增,带来了信息通信、控制和管理等一系列问题,而这正是大型机的特长。未来将赋予大型机更多的使命,它将覆盖“企业”所有的应用领域,如大型事务处理、企业内部的信息管理与安全保护、大型科学与工程计算等。,大型机研制周期长,设计技术与制造技术非常复杂,耗资巨大
27、,需要相当数量的设计师协同工作。大型机在体系结构、软件、外设等方面又有极强的继承性。因此,国外只有少数公司能够从事大型机的研制、生产和销售工作。美国的IBM、DEC,日本的富士通、日立等都是大型机的主要厂商。 5. 巨型机 巨型机是计算机中档次最高的机型,它的运算速度最快,性能最高,技术最复杂。巨型机主要用于解决大型机也难以解决的复杂问题,它是解决科技领域中某些带有挑战性问题的关键工具。,研制巨型机是现代科学技术,尤其是国防尖端技术发展的需要。核武器、反导弹武器、空间技术、大范围天气预报、石油勘探和地震预测等都要求计算机有很高的运算速度和很大的存储容量,因此一些国家竞相投入巨资开发速度更快、性
28、能更强的超级计算机。巨型机的研制水平、生产能力及其应用程度已成为衡量一个国家经济实力和科技水平的重要标志。,目前,巨型机的运算速度可达万亿次每秒。这种计算机使研究人员可以研究以前无法研究的问题,例如研究更先进的国防尖端技术,估算100年以后的天气,更详尽地分析地震数据以及帮助科学家计算毒素对人体的作用等。 巨型机按照其体系结构和技术水平的发展,已经经历了如下四代: 第一代巨型机是单指令流多数据流(SIMD)的阵列处理机AP,其典型代表是美国于1972年研制成功的ILLAC-,它由64个处理机构成88的阵列,这些处理机在一个控制部件的控制下同步工作,其运算速度为近亿次每秒。,第二代巨型机是具有流
29、水线结构的向量机VP。20世纪70年代后期美国推出的Cray-1是这一代巨型机的标志。该机由高速中、小规模集成电路组成,有12条不同功能的流水线运算部件,分为4组,可并行流水工作,其运算峰值可达160 MFlops(浮点运算次数每秒)。该机也使得巨型计算机首次成为商品,并走向市场。 第三代巨型机是多指令流多数据流(MIMD)的共享主存多处理机系统MP。以美国20世纪80年代中期到90年代初期推出的Cray X-MP、Cray Y-MP系列为代表,具有216个处理机,紧密耦合共享主存,可多任务并发以解决用户的大型问题。每个处理机内又采用了多流水线向量技术,运算速度可达每秒几百亿次。,第四代巨型机
30、是大规模并行处理系统MMP,它由几百到上万个处理机互连而成,靠高度并行获得高性能。 从巨型机的发展过程可以看出,计算机性能的提高已不仅仅依赖于单个CPU的速度,因为单CPU速度的提高将越来越困难。当前微机采用的芯片运算速度已达亿次数量级,巨型机要想获得更高的性能,需要在计算机的体系结构上寻找出路,其中的一个主要途径是并行技术。并行有两种方式:一种是利用流水线原理,以时间重叠方式加工数据;另一种是多个处理部件以空间分布方式实现并行处理。在体系结构中要研究如何开发这两种并行方式,以构成一个合理、实用、高效的系统。,除了硬件外,巨型机采用的操作系统应该是并行、分布式的操作系统,具有批处理和一定的交互
31、功能。目前大多数巨型机采用UNIX操作系统。针对各种用户的复杂应用问题,研究开发并行算法是用好巨型机的又一个重要因素。算法和体系结构的匹配可以提高巨型机的性能。 我国研制成功的“银河巨型计算机”采用了目前国际最新的可扩展多处理机并行体系结构。它的整体性能优越,系统软件高效,网络计算环境强大,可靠性设计独特,工程设计优良,其系统综合技术达到当前国际先进水平。在该系统研制的同时,一批适用于天气预报、地震机理研究、量子化学研究、气动力研究等方面的高水平应用软件也已研制出来,这使巨型机进入市场的竞争力增强了。,6. 服务器 当计算机最初用于信息管理时,信息的存储和管理是分散的,这种方式的弱点是数据的共
32、享程度低,数据的一致性难以保证。于是以数据库为标志的一代信息管理技术发展起来了,而以大容量磁盘为手段,以集中处理为特征的信息系统也发展起来了。20世纪80年代PC机的兴起冲击了这种集中处理的模式,而计算机网络的普及更加剧了这一变化。数据库技术也相应延伸到了分布式数据库,于是客户/服务器的应用模式出现了。当然,这不是向分散处理的简单回归,而是螺旋式的上升。,随着因特网(Internet)的迅猛发展,网络安全、软件维护与更新、多媒体应用等迫使人们再次权衡集中与分散的问题,即是否可以把需要共享和需要保持一致的数据相对集中地存放,是否可以把经常更新的软件比较集中地管理,而把用户端的功能仅限于用户界面与
33、通信功能,这就是网络计算的由来。 近年来,随着因特网的普及,各种档次的计算机在网络中发挥着各自不同的作用,而服务器在网络中扮演着最主要的角色。服务器可以是大型机、小型机、工作站或高档微机。服务器可以提供信息浏览、电子邮件、文件传送、数据库、打印以及多种应用服务。,服务器的主要特点如下: (1) 只有在客户机的请求下才为其提供服务。 (2) 服务器对客户透明。一个与服务器通信的用户面对的是具体的服务,而可以完全不知道服务器运行的是什么操作系统和应用环境。 (3) 服务器一般具有高性能、大容量、高可靠性和可伸展性。一台计算机可以通过软件配置而扮演一种或同时扮演几种服务器的角色。,1.3 信息的表示
34、与存储,1.3.1 计算机内部是二进制数字世界 在二进制系统中只有0和1两个数。不论是指令还是数据,在计算机中都采用二进制的编码形式。即使是图形、声音等信息,也必须转换成二进制编码形式,才能存入计算机中,这是为什么呢?因为在计算机内部,信息的表示依赖于机器硬件电路的状态,信息采用什么表示形式,直接影响到计算机的结构与性能。采用基2码表示信息,有以下几个优点:,(1) 易于物理实现。因为具有两种稳定状态的物理器件是很多的,如门电路的导通与截止,电压的高与低,而它们恰好对应表示1和0两个符号。假如采用十进制,要制造具有10种稳定状态的物理电路,那是非常困难的。 (2) 运算简单。数学推导证明,对R
35、进制数进行算术求和或求积运算,其运算规则各有R(R+1)/2种。如采用十进制,则有55种求和与求积的运算规则;而对于二进制,则仅有3种,因而简化了运算器等物理器件的设计。 (3) 机器可靠性高。由于电压的高低、电流的有无等都是两种分明的状态,因此基2码的传递抗干扰能力强,鉴别信息的可靠性高。,(4) 通用性强。基2码(0和1)不仅成功地运用于数值信息编码(二进制),而且适用于各种非数值信息的数字化编码。特别是0和1两个符号正好与逻辑命题的“真”与“假”两个值相对应,从而为计算机实现逻辑运算和逻辑判断提供了方便。 计算机存储器中存储的都是由“0”和“1”组成的信息,但它们分别代表各自不同的含义,
36、有的表示机器指令,有的表示二进制数据,有的表示英文字母,有的则表示汉字,还有的可能表示色彩与声音。存储在计算机中的信息采用了各自不同的编码方案,即使是同一类型的信息,也可以采用不同的编码形式。,1.3.2 计算机的数字系统 在计算机内的数值信息用二进制数来表示。为了运算简单,在不同的场合采用了“原码”和“补码”等不同的编码方法,而且还采用“定点数”和“浮点数”的方式来分别表示整型数和实型数。 人们日常生活中最熟悉的是十进制数,但在与计算机打交道时,会接触到二进制、八进制、十六进制数。无论哪种数制,其共同之处都是进位记数制。,1. 认识进位记数制 一般来说,如果数制只采用R个基本符号,则称其为基
37、R数制,R称为数制的“基数”,而数制中每一固定位置对应的单位值称为“权”。 进位计数制的编码符合“逢R进位”的规则,各位的权是以R为底的幂,一个数可按权展开成为多项式。例如,一个十进制数256.47可按权展开为 256.472102+5101+6100+410-1+710-2 下面是我们需要熟悉的几种进位数制: 二进制 R=2 基本符号 0, 1 八进制 R=8 基本符号 0, 1, 2, 3, 4, 5, 6, 7,十进制 R=10 基本符号 0, 1, 2, 3, 4, 5, 6, 7, 8, 9 十六进制 R=16基本符号 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, A,
38、 B, C, D, E, F 其中,十六进制的数符AF分别对应十进制的1015。 对于二进制来说,基数为2,每位的权是以2为底的幂,遵循“逢二进一”的原则,基本符号只有0和1两个。1011.01就是二进制数。 当然,基2码也有其不足之处,如它表示的数的容量最小。在表示同一个数时,二进制较其他进制需要更多的位数。,2. 几种进位记数制之间的转换 1) R进制转换为十进制 基数为R的数字,只要将其各位数字与它的权相乘,然后将积分别相加,所得的和就是十进制数。 例如,将下列数转换成十进制数: (1) (1101101.0101)2 =126+125+024+123+122+021+120 +02-1
39、+12-2+02-3+12-4 = (109.3125)10,(2) 3506.28 = 383+582+081+680+28-1 =(1862.25)10 (3) (0.2A)16 = 216-1+1016-2 =(0.1 640 625)10 从上例可以看到,当从R进制数转换到十进制数时,可以把小数点作为基点,分别向左右两边进行转换,即对其整数部分和小数部分分别转换。对于二进制数来说,只要把数位是1的那些位的权值相加,其和就是等效的十进制数。因此,二/十进制数的转换是最简便的,同时也是最常用的。,2) 十进制转换为R进制 将十进制数转换为基数是R进制的等效表示时,可将此数分成整数和小数两部
40、分分别进行转换,然后再拼接起来即可。 十进制整数转换成R进制的整数,可用十进制数连续地除以R,其余数即为R进制的各位系数。此方法称为除R取余法。,例如,将(57)10转换为二进制数: 2 57 余数 2 28 1 二进制整数低位 2 14 0 2 7 0 2 3 1 2 1 1 0 1 二进制整数高位 所以(57)10=(111001)2。,十进制小数转换成R进制数时,可连续地乘以R,直到小数部分为0或达到所要求的精度为止(小数部分可能永远不为零),得到的整数即组成R进制的小数部分,此法称为“乘R取整”。 例如,将(0.31251)10转换成二进制数: 0.312520.625 0.62521
41、.35 0.2520.5 0.521.0 所以(0.3125)10=(0.0101)2。 要注意的是,十进制小数常常不能准确地换算为等值的二进制小数(或其他R进制数),有换算误差存在。,例如,将(0.5627)10转换成二进制数: 0.56272=1.1254 0.12542=0.2508 0.25082=0.5016 0.50162=1.0032 0.00322=0.0064 0.00642=0.0128 此过程会不断进行下去(小数位达不到0),因此只能取到一定精度,即保留几位小数。若保留6位数,则,(0.5627)10(0.100100)2 若将十进制数57.3125转换成二进制数,则可分
42、别进行整数部分和小数部分的转换,然后再拼在一起。其转换结果为 (57.3125)10=(111001.0101)2 3) 二、八、十六进制的相互转换 二、八、十六进制的相互转换在应用中占有重要的地位。由于这三种进制的权之间有内在的联系,即23=8,24=16,因而它们之间的转换就比较容易,即每位八进制数对应3位二进制数,每位十六进制数对应4位二进制数。,在转换时,位组划分是以小数点为中心向左右两边延伸的,中间的0不能省略,两头不够位数时可以用0补齐。 例如,将(1011010.10)2转换成八进制和十六进制数: 0 0 1 0 1 1 0 1 0 . 1 0 0 1 3 2 4 即 (1011
43、010.10)2=(132.4)8 0 1 0 1 1 0 1 0 . 1 0 0 0 5 A 8 即 (1011010.10)2(5A.8)16,将十六进制数(F7.28)16转换为二进制数: F 7 . 2 8 1111 0111 . 0010 1000 即 (F7.28)16=(11110111.00101)2 将八进制数25.63转换为二进制数: 2 5 . 6 3 010 101 . 110 011 即 (25.63)8(10101.110011)2,1.3.3 信息存储单位 上节已经提到,在计算机内部,各种信息都是以二进制编码形式存储的,因此我们有必要了解一下信息的存储单位。 信息
44、的存储单位通常采用“位”、“字节”和“字”几种量纲表示。 1. 位(bit) 位是度量数据的最小单位,用来表示1位二进制信息。 2. 字节(Byte) 一个字节由8位二进制数字组成(1 Byte8 bit)。字节是信息存储中最常用的基本单位。 计算机的存储器(包括内存与外存)通常也是用存储的字节数来表示它们的容量的。常用的单位有:,KB (千字节) 1 KB=1024 Byte MB (兆字节) 1 MB=1024 KB GB (千兆字节) 1 GB=1024 MB TB (太字节) 1 TB=1024 GB 3. 字(word) 字是位的组合,并作为一个独立的信息单位处理。字又称为计算机字,
45、它的含义取决于机器的类型、字长以及使用者的要求。常用的固定字长有8位、16位、32位和64位等。 信息单位用来描述机器内部数据格式,即数据(包括指令)在机器内的排列形式,如单字节数据、可变长数据(以字节为单位组成几种不同长度的数据格式)等。,4. 机器字长 在讨论信息单位时,还有一个与机器硬件指标有关的单位,这就是机器字长。机器字长一般是指参加运算的寄存器所含有的二进制数的位数,它代表了机器的精度。机器的功能设计决定了机器的字长。一般大型机用于数值计算,为保证足够的精度,需要较长的字长,如32位和64位等。而小型机、微机一般字长为16位和32位等。 1.3.4 非数值信息的表示 在计算机内部,
46、非数值信息也是用“0”和“1”两个符号的编码来表示的。下面我们着重介绍一下中、西文的编码方案。,1. 西文字符编码 1) ASCII码 ASCII码是“美国标准信息交换代码”的简称,是目前国际上最为流行的字符信息编码方案。ASCII码包括数字09、大小写英文字母及专用符号等95种可打印字符,还有33种控制字符(如回车、换行等)。一个字符的ASCII码通常占一个字节,用7位二进制数编码组成,所以ASCII码最多可表示128个不同的符号。 例如,数字09用ASCII编码表示为30H39H,“H”表明是十六进制形式。 30H转化成二进制为0110000,这就是机器内数字0的ASCII码表示。,又如,
47、大写英文字母AZ的ASCII编码为41H5AH。 字母Z的机内表示为 0 1 0 1 1 0 1 0 5 A 由于ASCII采用7位编码,没有用到字节的最高位,因此很多系统就利用这1位作为校验码,以便提高字符信息传输的可靠性。 2) EBCDIC码 EBCDIC码是美国IBM公司在它的各类机器上广泛使用的一种信息代码。,一个字符的EBCDIC码占用一个字符,用8位二进制码表示信息,最多可以表示出256个不同代码。例如,数字“0”的EBCDIC码为F0H,字母“A”的编码为C1H,即: “0” 1 1 1 1 0 0 0 0 “A” 1 1 0 0 0 0 0 1 F 0 C 1,2. 中文信息
48、编码 汉字在计算机内也采用二进制的数字化信息编码。 汉字的数量大,常用的也有几千个之多,显然用一个字节(8位编码)是不够的。目前的汉字编码方案有二字节、三字节甚至四字节的。下面我们主要介绍“国家标准信息交换用汉字编码”(GB231280标准),以下简称国标码。 国标码是二字节码,用两个7位二进制数编码表示一个汉字。,目前国标码收入6763个汉字,其中一级汉字(最常用)有3755个,二级汉字有3008个,另外还包括682个西文字符、图符。 例如,“巧”字的代码是39H 41H,在机内形式如下: 0 1 1 1 0 0 1 1 0 0 0 0 0 1 第一字节 第二字节 在计算机内部,汉字编码和西
49、文编码是共存的,如何区分它们是个很重要的问题,因为对不同的信息有不同的处理方式。方法之一是对于二字节的国标码,将两个字节的最高位都置成“1”,而ASCII码所用字节最高位保持“0”,然后由软件(或硬件)根据字节最高位来做出判断。,当前,另一种编码“Unicode码”已成为信息编码的标准。Unicode码是由国际标准化组织(ISO)于20世纪90年代初制定的一种16位字符编码标准,它以两个字节表示每一个字符。统一编码允许世界上几乎所有书面语言都能用单一的字符集表示,其中也包括中文。相比而言,8位的ASCII码就只能表示英文字母和部分符号。在Unicode码的65 536个可能的编码中,有39 000个字符编码已经作了规定,其中21 000个编码用于表示中国汉字。Unicode编码中尚未定义的编码留待以后使用。,1.3.5 信息的内部表示与外部显示 我们周围的信息是多种多样的,如文字、数字、图像、声音乃至各种仪器输出的电信号等。各种各样的信息都可以在计算机内存储和处理,而机内表示它们的方法只
限制150内