《计算机应用基础教程》第一章计算机基础知识.doc
第1章计算机基础知识学习目标:通过本章学习使学生掌握计算机基本概念、计算机系统组成、计算机各大硬件设备、计算机的数制和信息的表示与存储,并熟悉计算机的产生、发展、特点和应用领域,了解计算机中字符编码的概念。1.1计算机概述随着微型计算机的出现及计算机网络的发展,计算机的应用已渗透到社会的各个领域,并逐步改变着人们的生活方式。21世纪的今天,掌握和使用计算机成为人们必不可少的技能。1.1.1计算机的诞生及发展1946年2月,世界上第一台电子计算机ENIAC(埃尼阿克)在美国加州问世。ENIAC使用了17468电子管,1500个继电器,体积3000立方英尺(1立方米35.346立方英尺),占地170平方米,重30吨,耗电174千瓦。内存17K,字长12位,运算速度每秒5000多次加法运算,300多次乘法运算,比当时最快的计算工具快300倍,耗资40万美金。在当时用它来处理弹道问题,将人工计算使用20小时缩短到30秒。但是ENIAC却有一个严重的问题,它不能存储程序。如图1-1所示。图1-1世界上第一台电子计算机几乎在同一时期,着名数学家提出了“存储程序”和“程序控制”的概念。其主要思想为:1)采用二进制形式表示数据和指令。2)计算机应包括运算器、控制器、存储器、输入和输出设备五大基本部件。3)采用存储程序和程序控制的工作方式。所谓存储程序,就是把程序和处理问题所需的数据均以二进制编码形式预先按一定顺序存放到计算机的存储器里。计算机运行时,中央处理器依次从内存储器中逐条取出指令,按指令规定执行一系列的基本操作,最后完成一个复杂的工作。这一切工作都是由一个担任指挥工作的控制器和一个执行运算工作的运算器共同完成的,这就是存储程序控制的工作原理。冯·诺依曼的上述思想奠定了现代计算机设计的基础,所以后来人们将采用这种设计思想的计算机称为冯·诺依曼型计算机。从1946年第一台计算机诞生至今,虽然计算机的设计和制造技术都有了极大的发展,但今天使用的绝大多数计算机其工作原理和基本结构仍然遵循着冯·诺依曼的思想。计算机由于所使用的元器件的迅速发展经历了五个时代,如表1-1所示。代日期逻辑元件主存辅存速度(次/秒)软件代表产品第一代1946-1957电子管水银延迟线磁鼓磁带5千4万机器语言、汇编语言UNIVAC第二代1958-1964晶体管磁芯磁带、磁盘几十万几百万高级语言、管理程序IBM7000、UNIVACII第三代1965-1970中小集成电路半导体存储器磁盘几百万几千万操作系统诊断程序IBMsystem/360第四代1971-现在超大规模集成电路半导体存储器磁盘、光盘上亿固件、网络、数据库第五代智能机能听、说、看、有思维能力等的新一代的计算机被称为智能计算机。表1-11.1.2计算机分类计算机按工作原理分可分为:模拟电子计算机、数字电子计算机、模拟数字混合计算机;按功能分可分为专用计算机和通用计算机;按工作模式分可分为工作站和服务器;按规模分可分为:巨型计算机、大型计算机、中型计算机、小型计算机和微型计算机。如银河系列计算机:运行速度每秒上百亿次,如图1-2所示。图1-2银河系列计算机1.1.3计算机特点1运算速度快当今计算机系统的运算速度已达到每秒万亿次,微机也可达每秒亿次以上,使大量复杂的科学计算问题得以解决。例如:卫星轨道的计算、大型水坝的计算、24小时天气预报的计算等,过去人工计算需要几年、几十年,而现在用计算机只需几天甚至几分钟就可完成。2计算精确度高科学技术的发展特别是尖端科学技术的发展,需要高度精确的计算。计算机控制的导弹之所以能准确地击中预定的目标,是与计算机的精确计算分不开的。一般计算机可以有十几位甚至几十位(二进制)有效数字,计算精度可由千分之几到百万分之几,是任何计算工具所望尘莫及的。3存储容量大计算机不仅能进行计算,而且能把参加运算的数据、程序以及中间结果和最后结果保存起来,以供用户随时调用。计算机的存储器可以存储大量数据,这使计算机具有了“记忆”功能。随着计算机存储容量的不断增大,可存储记忆的信息越来越多。计算机的“记忆”功能是与传统计算工具的一个重要区别。4具有逻辑判断能力计算机的运算器除了能够完成基本的算术运算外,还具有对各种信息进行比较、判断等逻辑运算的功能。这种能力是计算机处理逻辑推理问题的前提。5自动化程度高,通用性强计算机内部操作是根据人们事先编好的程序自动控制进行的。用户根据解题需要,事先设计好运行步骤与程序,计算机十分严格地按程序规定的步骤操作,整个过程不需人工干预,自动化程度高,这一特点是一般计算工具所不具备的。计算机通用性的特点表现在几乎能求解自然科学和社会科学中一切类型的问题,能广泛地应用各个领域。1.2计算机系统组成及应用完整的计算机系统包括:硬件系统和软件系统。硬件系统是计算机的“躯干”,是基础。软件系统是建立在“躯干”上的“灵魂”。其结构如图1-3所示。硬件系统计算机系统软件系统外设主机外(辅)存储器(硬盘、软盘、光盘等)系统软件(Windows98/2000/2003/XP、WIN7、Linux等)应用软件(Word、Excel、Photoshop等)中央处理单元(CPU)控制器内(主)存储器随机存储器(RAM)输出设备(显示器、打印机、绘图仪等)只读存储器(ROM)输入设备(键盘、鼠标、光笔、图形扫描仪、触摸屏等)运算器图1-3计算机系统的组成结构在计算机系统中,硬件是软件赖以工作的物质基础,软件的正常工作是硬件发挥作用的唯一途径。计算机系统必须要配备完善的软件系统才能正常工作,且充分发挥其硬件的各种功能。所以软件与硬件一样,都是计算机工作必不可少的组成部分。那么,计算机由用户来使用,用户与计算机硬件系统和软件系统的层次关系如图1-4所示。操作系统等软件系统应用软件计算机硬件系统图1-4用户、软件和硬件的关系1.2.1硬件系统基本组成电子计算机从诞生至今,其体系结构基本没有发生变化,仍旧沿用冯·诺依曼体系结构,即计算机硬件是由运算器、控制器、存储器、输入和输出设备组成,如图1-5所示。控制器存储器运算器输出设备计算结果(输出信息)程序、原始数据输入设备(输入信息)图1-5计算机的基本结构1运算器运算器又称算术逻辑单元(ArithmeticLogicUnit,ALU),是计算机对数据进行加工处理的部件,也就是对二进制数码进行加、减、乘、除等算术运算,或进行与、或、非等的基本逻辑运算,从而实现逻辑判断。运算器是在控制器的控制下实现算术逻辑运算功能,运算结果由控制器送到内存中。2控制器控制器是计算机指挥和控制中心。它负责从内存中取出指令,确定指令类型,并对指令进行译码,按时间的先后顺序,向计算机的各个部件发出控制信号,使整个计算机系统的各个部件协调一致地工作,从而一步一步地完成各种操作。控制器主要由指令寄存器、指令译码器、程序计数器、时序部件、操作控制部件等部件组成。3存储器存储器是计算机存储数据的部件,用于保存程序及数据,以及运算的结果。包括数据寄存器和地址寄存器。数据寄存器用于暂存操作数和运算结果,地址寄存器用于存放需要访问的存储单元的地址。4.输入设备输入设备负责把用户命令,包括程序和数据输入到计算机中,是。文字、图形、声音、图像等信息都要通过输入设备才能被计算机接受。常见的输入设备有键盘、鼠标、扫描仪、数码相机等。5.输出设备输出设备是将计算机运算或处理的结果转换成用户所需要的各种形式输出。常见的输出设备有显示器、打印机等。1.2.2软件系统计算机软件是各种程序和文档的总称,程序是人们为使计算机完成某向特定的任务而编写的按一定次序排列和执行的命令和数据的集合,文档则是应用各种编辑系统编写的文本或带格式的文本。计算机软件系统包括系统软件和应用软件。系统软件是指控制、管理和协调计算机及其外部设备,支持应用软件的开发和运行的软件的总称。系统软件包括:操作系统、语言处理程序和服务程序。1操作系统操作系统是管理、控制和监督计算机软、硬件资源协调运行的程序系统,由一系列具有不同控制和管理功能的程序组成,它是直接运行在计算机硬件上的、最基本的系统软件,是系统软件的核心。操作系统是计算机发展中的产物,它的主要目的有两个:一是方便用户使用计算机,是用户和计算机的接口。比如用户键入一条简单的命令就能自动完成复杂的功能,这就是操作系统帮助的结果;二是统一管理计算机系统的全部资源,合理组织计算机工作流程,以便充分、合理地发挥计算机的效率。有关操作系统的知识将在第3章做进一步的介绍。2程序设计语言计算机语言是人们根据描述实际问题的需要而设计的、用于书写计算机程序的语言。程序设计语言就是人们设计出来的能让计算机读懂并且能完成某特定事的语言。程序设计语言从低级到高级依次为机器语言、汇编语言、高级语言三类。低级语言包括机器语言和汇编语言。按照语言对机器的依赖程度,可分为:1)机器语言(MachineLanguage)是以二进制代码形式表示的机器基本指令的集合。它的特点是运算速度快,每条指令都是0和1的组合,不同计算机其机器语言不同,难阅读,难修改,难移植。2)汇编语言(AssembleLanguage)是为了解决机器语言难于理解和记忆,用易于理解和记忆的名称和符号表示的机器指令。例如,加法指令ADD,传送指令MOV。汇编语言虽比机器语言直观,但基本上还是一条指令对应一种基本操作,对同一问题编写的程序在不同类型的机器上仍然是互不通用。汇编语言必须经过语言处理程序(汇编程序)的翻译才能被计算机识别。3)高级语言(HighLevelLanguage)是人们为了解决低级语言的不足而设计的程序设计语言。它是由一些接近于自然语言和数学语言的语句组成。易学、易用、易维护。但是由于机器硬件不能直接识别高级语言中的语句,因此必须经过“翻译程序”,将用高级语言编写的程序翻译成机器语言的程序才能执行。一般说来用它的编程效率高,执行速度没有低级语言高。高级语言必须经过语言处理程序(编译程序等)的翻译才能被计算机识别。目前最常用的高级语言有:C语言、C+、Java、Delphi等。除机器语言外,采用其他程序设计语言编写的程序,计算机都不能直接识别其指令,这种程序称为源程序,必须把源程序翻译成等价的机器语言程序,即计算机能识别的0与1的组合,承担翻译工作的即为语言处理程序。是把源程序翻译成与之等价的另一种语言表示的程序。其工作方法有解释和编译二种。如图1-6(a)、(b)所示。编译程序编辑程序,解释一条执行一条高级语言源程序执行结果执行结果机器语言目标程序高级语言源程序图1-6(b)解释过程示意图图1-6(a)编译过程示意图3应用软件应用软件是为计算机在特定领域中的应用而开发的专用软件。应用软件具体可分为两类:面向问题的应用程序,如现代企业管理系统、财务软件、订票系统、电话查询系统、仓库管理系统、旅馆服务系统。为用户使用而开发的各种工具软件,如诊断程序、调试程序、编辑程序、链接程序、字处理软件、图形处理软件、系统操作、维护软件等。应用软件包括的范围是极其广泛的,可以这样说,哪里有计算机应用,哪里就有应用软件。如办公应用Office、WPS;平面设计PhotoShop、Illustrator、CorelDraw;视频处理Premiere、AfterEffects、会声会影;网站建设FrontPage、Dreamwerver;辅助设计AutoCAD;三维制作3DSMax;多媒体开发Authorware、Flash等等。1.2.3计算机应用1科学计算科学计算通常是指用于完成科学研究和工程技术中提出的数学问题的计算,如应用于天气预报、地震分析、导弹拦截大量的数值计算与分析等,是计算机最早的应用领域。在计算机诞生初期,计算机主要用于科学计算,在弹道计算上显示了它的巨大威力。当时,用ENIAC计算炮弹从发射到弹道轨道40个点的位置只用了3秒,代替了7个小时的人工计算,速度提高了8400倍。随着科学技术的发展,使得各种领域中的计算模型日趋复杂,人工计算已无法解决这些复杂的计算问题。科学计算的特点是计算工作量大、数值变化范围大。2信息处理信息处理是指对大量的数据进行加工处理(如分类、合并、统计、分析等)。使用计算机和其他辅助方式,把人们在各种实践活动中产生的大量信息:文字、声音、图片、视频等,按照不同的要求,及时地收集储存、整理、传输和应用。与科学计算不同,数据处理涉及的数据量大。信息处理也为社会和经济的管理和决策提供了新的技术手段,使办公自动化这一门综合的科学技术提高到了一个新的水平。大大提高政府、企业等的办公效率,提高领导决策水平。3计算机辅助系统计算机辅助设计(ComputerAidedDesign,CAD)就是用计算机帮助设计人员进行设计。由于计算机有快速的数值计算、较强的数据处理以及模拟的能力,辅助设计系统配有专门的计算程序用来帮助设计人员完成复杂的计算,配有专业绘图软件用来协助设计人员绘制设计图纸。使CAD技术得到广泛应用。采用计算机辅助设计后,不但降低了设计人员的工作量,提高了设计的速度,更重要的是提高了设计的质量。计算机辅助制造(ComputerAidedManufacturing,CAM)是用计算机进行生产设备的管理、控制和操作的过程。计算机辅助设计的产品,可以直接通过专门的加工制造设备自动生产出来。使用CAM技术可以提高产品的质量,降低成本,缩短生产周期。计算机集成制造系统(ComputerIntegratedManufactureSystem,CIMS)是指以计算机为中心的现代化信息技术应用于企业管理与产品开发制造的新一代制造系统,是CAD、CAPP、CAM、CAE、CAQ(计算机辅助质量管理)、PDMS(产品数据管理系统)、管理与决策、网络与数据库及质量保证系统等子系统的技术集成。计算机辅助教学(ComputerAidedInstruction,CAI)是在计算机辅助下进行的各种教学活动,以对话方式与学生讨论教学内容、安排教学进程、进行教学训练的方法与技术。CAI为学生提供一个良好的个人化学习环境,综合应用计算机的多媒体、超文本、人工智能及知识库等技术,克服传统教学方式单一、片面的缺点,能有效地缩短学习时间、提高教学质量和教学效率,实现最优化的教学目标。4计算机自动控制主要应用于飞行控制、加工控制、生产线控制、交通指示灯控制等。过程控制又称实时控制,指用计算机实时采集检测数据,按最佳值迅速地对控制对象进行自动控制或自动调节。利用计算机对工业生产过程或装置的运行过程进行状态检测并实施自动控制。不仅可以大大提高控制的自动化水平,而且可以提高控制的及时性和准确性,从而改善劳动条件、提高产品质量及合格率。5多媒体技术应用随着电子技术特别是通信和计算机技术的发展,人们已经有能力把文本、音频、视频、动画、图形和图像等各种媒体综合起来,构成一种全新的概念“多媒体”。在医疗、教育、商业、银行、保险、行政管理、军事、工业、广播和出版等领域中,多媒体的应用发展很快。6电子商务等网络应用随着网络技术的发展,计算机的应用进一步深入到社会的各行各业,通过高速信息网现数据与信息的查询、高速通信服务(电子邮件、电视电话、电视会议、文档传输)、电子教育、电子娱乐、电子购物(通过网络选看商品、办理购物手续、质量投诉等)、远程医疗和会诊、交通信息管理等。7人工智能方面的研究和应用人工智能(简称AI)是指计算机模拟人类某些智力行为的理论、技术和应用。人工智能是计算机应用的一个新的领域,这方面的研究和应用正处于发展阶段,在医疗诊断、定理证明、语言翻译、机器人等方面,已有了显着的成效。例如,用计算机模拟人脑的部分功能进行思维学习、推理、联想和决策,使计算机具有一定“思维能力”。我国已开发成功一些中医专家诊断系统,可以模拟名医给患者诊病开方。机器人是计算机人工智能的典型例子。机器人的核心是计算机。智能机器人具有感知和理解周围环境,使用语言、推理、规划和操纵工具的技能,模仿人完成某些动作。机器人不怕疲劳,精确度高,适应力强,现已开始用于搬运、喷漆、焊接、装配等工作中。机器人还能代替人在危险工作中进行繁重的劳动,如在有放射线、污染有毒、高温、低温、高压、水下等环境中工作。1.3计算机数制及转换与运算1.3.1数制的概念数制的种类很多,但在日常生活中,人们习惯使用十进制,所谓十进制,就是逢十进一。除十进制外,有时还使用十二进制、六十进制,比如一打袜子为十二双,一年等于十二个月,即逢十二进一。一小时等于六十分,一分钟等于六十秒,即逢六十进一,这是六十进制。在计算机中处理的数据是二进制,有时为书写方便也常用八进制和十六进制。基数:一组固定不变的不重复数字的个数。例如:二进制数基数是2,十进制数基数为10。位权:某个位置上的数代表的数量大小。表示此数在整个数中所占的份量(权重)。数位是指数码在一个数中所处的位置。二进制Binarynotation:具有两个不同的数字符号,即0和1;其基数为2;二进制的特点是逢二进一,可用B来表示二进制。十进制Decimalnotation:具有十个不同的数码符号0、1、2、3、4、5、6、7、8、9,其基数为10;十进制数的特点是逢十进一,可用D来表示十进制。八进制Octalnotation:具有八个不同的数码符号0、1、2、3、4、5、6、7,其基数为8;八进制数的特点是逢八进一,通常用Q或O表示。十六进制Hexadecimalnotation:具有十六个不同的数码符号0、1、2、3、4、5、6、7、8、9、A、B、C、D、E、F,其基数为16,十六进制数的特点是逢十六进一,用H表示。进位制十进制二进制八进制十六进制数码0,1,2,.,90,10,1,2,.,70,1,.,9,A,B,C,D,E,F规则逢十进一逢二进一逢八进一逢十六进一基数R102816位权10i2i8i16i表示形式DBQ或OH表1-2十进制和计算机中常用进制其中:i=(0,1,2,3,.,n)为数位的编号,表示数的某一数位。例如:二进制的4位位权值为24=16,十六进制2位位权值为162=256。每种进制数有各自的表示形式。例如:110D为十进制数、110B为二进制数、110Q为八进制数、110H为十六进制数。1.3.2数值之间的转换1.二进制转换为十进制按权展开后,相加即得。例如:(1101.011)2=1×23+1×22+0×21+1×20+0×2-1+1×2-2+1×2-3=(13.375)102.十进制转换为二进制整数部分:采用除2取余法,且除到商为0为止;按从下往上顺序排列余数即可得到结果。先取余数低位,后取余数高位。小数部分:采用乘2取整法,直到小数部分为0或达到所要求精度为止(小数部分可能永远不会得到0),最先得到的整数排在最高位。又例,(241.43)10=(?)2,小数取4位。低位2 24121201260023002150271231211201余数0.43×20 0.86×21 1.72×211.44×200.88高位计算结果:(241.43)102注:一般小数取四位,要做五位,第五位采取舍入法:有0舍1入发,恒舍发,恒置1发,列表法等来确定。3二、八、十六进制之间的相互转换由于二、八、十六进制之间存在这样一种关系:23=8,24=16。所以,每位八进制数相当于3位二进制数,每位十六进制数相当于4位二进制数,在转换时,位组划分是以小数点为中心向左右两边延伸,中间的0不能省略,两头位数不足时可补0。例如:(24.53)8=(?)224.53010100.101011计算结果:(24.53)8=(10100.101011)2又例,2=(?)160 11010010110696计算结果:2=(696)161.3.3二进制的算术运算1.加法运算运算法则:逢二进一。例如,(11101)2+(10101)2=(110010)21110129+10101+2111001050二进制转换十进制2减法运算运算法则:借一当二。22=(10101)211001011203101101101820001010121二进制转换十进制1.3.4二进制的逻辑运算1逻辑或运算运算符:“+”或“”。运算规则如下:0+0=0或00=00+1=1或01=11+0=1或10=11+1=1或11=1例如:(110101)2(101100)2=(111101)21 101011011001111012逻辑与运算运算符:“×”或“”。运算规则如下:0×0=0或00=00×1=0或01=01×0=0或10=01×1=1或11=1例如:(101101)2(110110)2=(100100)23逻辑非运算运算符:“”。运算规则如下:0的非为11的非为0例如:X=100101,则X=0110104逻辑异或运算运算符:“”。运算规则如下:00=001=110=111=0例如:(110010)2(101011)2=(011001)21.4数据信息的表示与存储1.4.1数据的存储单位计算机中的数据包括数值数据和非数值数据,数值数据是有量的大小,而非数值数据是字符、声音、图形以及动画等,所有类型的数据在计算机中都是用二进制形式表示和存储的。计算机常用的存储单位有位、字节和字。位(bit):一个二进制位称为比特,用b表示,是计算机中存储数据的最小单位。一个二进制位只能用表示0或1两种状态。字节(Byte):八个二进制位称为字节,通常用B表示,字节是计算机数据处理和存储的基本单位。字(Word):一个字由若干个字节组成的(通常取字节的整数倍),是计算机一次存取、加工和传送的数据长度,也是衡量计算机精度和运算速度的主要技术指标,字长越长,性能越好。计算机型号不同,其字长也不同,常用的字长有8位、16位、32位和64位。计算机存储容量的大小是用字节的多少来衡量,通常使用的衡量单位是B、KB、MB、GB或TB,其中B代表字节,这些衡量单位之间的换算关系如下:1B=8bit,1KB=1024B,1MB=1024KB;1GB=1024MB;1TB=1024GB。1.4.2小数的表示(定点数和浮点数)1机器数机器数是指数在计算机中的表示形式;机器数真正表示的数值称为这个机器数的真值。机器数有三个特征:1)机器数据表示的数的范围受计算机字长的限制例如:82=(255)10,运算时如果数值超过机器所能表示的范围,运算就会因出错而终止。这种情况称为“溢出”。2)机器数的符号位被数值化数值数据有正负之分,机器数也有正有负。在计算机中,总是用数的最高位表示数的符号,并且规定0表示正数,1表示负数。3)机器数的小数点处于约定的位置小数的表示两种表示方法:定点数和浮点数。定点数是指小数点位置固定不变;浮点数:允许小数点位置浮动。2定点数的表示规定一个小数点固定的位置,采用把小数点固定在最低位的右边或符号位的右面,即把参加运算的数化为纯整数或纯小数。例如:二进制数N可以写成N=2p×S式中:S称为数N的尾数;P称为数N的阶码;2称为阶码的底。S表示数N的全部有效数字,阶码P指明了小数点的位置,定点数的阶码P值是固定的。1)定点整数的表示法P=0,而S为纯整数,则小数点的位置定在S之后:小数点·。符号位尾数S2)定点小数的表示法S为纯小数,小数点固定在符号位的右面:符号位尾数S小数点·。3浮点数的表示浮点数的阶码P值不是固定的,而是可以浮动的。这时:N=2p×S式中:阶码为可变的整数,并且可以是正数,也可以是负数;尾数S也可正、可负。通常用一位二进制数Pf表示阶码的符号位,用一位二进制数Sf表示尾数的符号位。浮点数表示法:阶码部分为定点整数,尾数部分为定点小数。Pf阶码PSf尾数S1.4.3原码、反码、补码的表示数在计算机中是以二进制形式表示的,它分为有符号数和无符号数。原码、反码、补码都是有符号定点数的表示方法,一个有符号定点数的最高位为符号位,0表示正,1表示负。在计算机内,定点数有3种表示法:原码、反码和补码。1原码的表示原码表示法是机器数的一种简单的表示法。其符号位用0表示正号,用:表示负号,数值一般用二进制形式表示。设有一数为X,则原码表示可记作:X原。1)小数原码的定义-1<X0X0X<11-XX原=2)整数原码的定义-2n<X0X0X<2n2n-XX原=当X=0时,+0原=00000000,0原。表示方法如下:X0,则符号位为0,其余照抄;X0,则符号位为1,其余照抄。例如,X=+1001001,?X原=010010012反码的表示机器数的反码可由原码得到。如果机器数是正数,则该机器数的反码与原码一样;如果机器数是负数,则该机器数的反码是对它的原码(符号位除外)各位取反而得到的。设有一数X,则X的反码表示记作X反。1)小数反码的定义1<X0X0X<12-2n-1-XX反=2)整数反码的定义-2n<X0X0X<2n2n+1-1-XX反=当X=0时,+0反=00000000,-0反=若X0,符号位为0,其余照抄;若X0,符号位为1,其余按位取反。例如,X=+1001001,?X反=010010013补码的表示机器数的补码可由原码得到。如果机器数是正数,则该机器数的补码与原码一样;如果机器数是负数,则该机器数的补码是对它的原码(除符号位外)各位取反,并在未位加1而得到的。设有一数X,则X的补码表示记作X补。1)小数补码的定义-1<X0X0X<12+XX补=2)整数补码的定义-2n<X0X0X<2n2n+1+XX反=0补码是00000000补码没有正0与负0之分。表示方法如下:若X0,符号位为0,其余照抄;若X0,符号位为1,其余取反后,最低位加1。例如,X=+1001001,?X补=010010013)补码的性质X+Y补=X补+Y补,即两数之和的补码等于各自补码的和。例如,X=+0110011,Y=-0101001,求X+Y补。X补=00110011?Y补X+Y补=X补+Y补注:因为计算机中运算器的位长是固定的,上述运算中产生的最高位进位将丢掉,所以结果不是x-y补=x补+-y补,即两数之差的补码等于被减数的补码与减数相反数的补码之和。例如,X=+0111001,Y=+1001101,求X-Y补。X补=00111001Y补=01001101-Y补X-Y补=X补+-Y补x补补=x原,即按求补的方法,对x补再求补一次,结果等于x原。4反码的表示正数的反码与其原码相同;负数的反码是对其原码逐位取反,但符号位除外。补码表示法规定:正数的补码与其原码相同;负数的补码是在其反码的末位加1。拿单字节整数来说,无符号型,其表示范围是0,255,总共表示了256个数据。有符号型,其表示范围是-128,127。1.4.4 ASCII编码字符是用来组织、控制或表示数据的字母、数字以及计算机能识别的其他符号,使用最广泛的编码,即(AmericanStandardCodeforInformationInterchange)。如表1-3所示。b7b6b5b4b3b2b1000(0)001(1)010(2)011(3)100(4)101(5)110(6)111(7)0000(0)NULDLESP0Pp0001(1)SOHDC1!1AQaq0010(2)STXDC2“2BRbr0011(3)ETXDC3#3CScs0100(4)EOTDE4$4DTdt0101(5)ENQNAK%5EUeu0110(6)ACKSYN&6FVfv0111(7)BELETB7GWgw1000(8)BSCAN(8HXhx1001(9)HTEM)9IYiy1010(A)LFSUB*:JZjz1011(B)VTESC+;Kk1100(C)FFFS,<Ll|1101(D)CRGS-=Mm1110(E)SORS.>Mn1111(F)SIUS/?O-oDEL表1-3ASCII字符编码ASCII码用7位二进制数表示一个字符,排列顺序为b7b6b5b4b3b2b1,并且规定用一个字节的低7位表示字符编码,最高位恒为0。7位二进制数共可以表示128个字符,这些字符包括26个大写英文字母、26个小写英文字母、10个十进制数字、32个标点符号、运算符、专用字符以及34个通用控制字符。例如:“CR”符的ASCII码的十六进制为“0DH”,“LF”符的ASCII码的十六进制为“0AH”,“SP”符的ASCII码的十六进制为“20H”,“9”的ASCII码的十六进制为“39H”,“W”的ASCII码的十六进制为“57H”等等。1.5汉字信息的处理每个国家使用计算机都要处理本国语言。1980年我国颁布了信息交换用汉字编码字符集-基本集,即国家标准GB2312-80。共收集汉字6763个,分为两级。第一级3755个汉字,属常用汉字,按汉字拼音字母顺序排列。第二级3008个汉字,属次常用汉字,按部首排列。1995年我国又颁布了汉字编码扩展规范(GBK)。GBK与GB2312-1980国家标准所对应的内码标准兼容,同时在字汇一级支持ISO/IEC10646-1和GB13000-1的全部中、日、韩(CJK)汉字,共计20902字。1计算机处理汉字的关键1)首先将每个汉字以外部码输入计算机。2)将外部码转换成计算机能识别的汉字内码进行存储。3)将内码转换成字形码输出。2汉字外部码汉字外部码又称为汉字输入码,是指从键盘上输入汉字时采用的编码。目前广泛使用的汉字输入编码有很多种。1)以汉字读音为基础的拼音码,如全拼输入法、双拼输入法、词汇输入法、智能ABC输入法等;2)以汉字字形为基础的字形码,如;3)音形码,综合拼音码和字型码的特点,如自然码等;4)数字码,如区位码、电报码、内码等。不同的汉字输入方法有不同的外码,但内码只能有一个。好的输入方法应具备规则简单、操作方便、容易记忆、重码率低、速度快等特点。3GB2312-80编码简称国标码。由于汉字数量大,无法用一个字节进行编码,因此使用两个字节对汉字进行编码。规定两个字节的最高位用来区分ASCII码。这样国标码用两个字节的低7位对汉字进行编码。一个字节只能有128-34=94种状态用于汉字编码(34是指34种控制字符),两个字节可以表示94×94=8836种状态。在基本集中汉字是按规则排列成94行和94列的矩阵,形成汉字编码表,其行号称为区号,列号称为位号,第一个字节表示汉字在国标字符集中的区号,第二个字节表示汉字在国标字符集中的位号。每一个汉字在94×94的矩阵中都有一个固定的区号和位号,即区位码,这个码是唯一的,不会有重码字。把换算成十六进制的区位码加上2020H,就得到国标码。前面讲过国标码是用两个字节(高位为0)来表示,为便于计算机能正确区分汉字字符与英文字符,在国标码加上8080H(即将两字节的最高位0都置为1,以示区别ASCII码),就得到常用的计算机机内码。国标码是以十六进制数字编码,编码范围是从2121H(21H即为十进制的33)到7F7FH(7FH即为十进制的127)。因此,国标码=区位码(用十六进制表示)+2020H。例如:汉字“大”的区号为20,位号为83,即“大”的区位码为2083(0823H);“大”的国标码为2843H(0823H+2020H),机内码为A8C3H(2843H+8080H)。4汉字字形码字形码又称汉字字模,用于汉字的输出。汉字的字形通常采用点阵的方式产生。汉字点阵有16×16点阵、32×32点阵、64×64点阵,点阵不同,汉字字形码的长度也不同。点阵数越大,字形质量越高,字形码占用的字节数越多。如图1-7是“国”字24×24的点阵字形。深色小正方形可以表示一个二进制位的信息“1”,浅色小正方形表示二进制位的信息“0”。图1-7汉字点阵汉字字形码又称为汉字输出码或汉字发生器的编码。例:按32×32点阵存放两级汉字的汉字库,大约需要占用多少字节?解:32×32×6763÷8=865664B845KB大约需要845KB。各种编码之间的关系如图1-8所示。汉字字形数字化后,以二进制文件的形式存储在存储器中,构成汉字字形库或汉字字模库,简称汉字字库。它的作用是为汉字的输出设备提供字形数据。汉字字形信息的存储方法有两种:整字存储法、压缩信息存储法。汉字字库分为:1)硬字库:它将汉字库固化在ROM或EPROM中。2)软字库:它将汉字库存放在某种外存设备(如硬磁盘、软磁盘)上。汉字国标码区位码输入显示汉字打印汉字拼形输入汉字机内码汉字字形码拼音输入图1-8各种编码之间的关系习题一一、选择题1.?世界上第一台电子计算机诞生于()。A.20世纪40年代B.19世纪C.20世纪80年代D.1950年2最能准确描述计算机的主要功能的是。