版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
模块1计算机基础知识任务1计算机的概述1.1.1现代计算机的发展历程1.1.2计算机的特点1.1.3计算机的应用任务2计算机系统的基本组成1.2.1计算机的硬件系统结构1.2.2计算机的软件系统1.2.3计算机工作原理模块1计算机基础知识当今世界,在工作、生活的各个领域已经离不开计算机,计算机已经成为生活中不可缺少的工具,它改变着人们的生活方式,同时也大大地推动了整个信息化社会的发展。所以,计算机被誉为是20世纪人类最辉煌、最伟大的科学发明之一。返回任务1计算机的概述1.1.1现代计算机的发展历程1945年3月,美籍匈牙利科学家约翰·冯·诺依曼提出了“存储程序式”的思想,即预先将根据某一任务设计好的程序装人存储器中,再由计算机去执行存储器中的程序。这样,在执行新的任务时,只需改变存储器中的程序,而不必改动计算机的任何电路。世界上第一台数字电子计算机(ENIAC)于1946年在美国宾夕法尼亚大学研制成功。它使用了18000余只电子管,占地170m²,重30t,功率约140kw,每秒可进行5000次加减运算,ENIAC是为完成某个特定任务而专门设计的,当需要执行新计算任务时,必须重新设计和改变连线。ENIAC的问世具有划时代的意义,表明了电子计算机时代的到来。根据计算机所采用的物理器件,可将计算机的发展大致分为四个阶段。下一页返回任务1计算机的概述1.第一代计算机第一代计算机(1946-1957年)被称为电子管计算机,其主要元器件为电子管,内存储器用延迟线或磁鼓,外存储器为纸带、穿孔卡片等。第一代计算机主要使用机器语言,编辑极为不便。电子管计算机由于体积庞大、价格昂贵、运算速度低,其管理和维护工作复杂,主要用于科学计算和军事方面。2.第二代计算机第二代计算机(1958-1964年)被称为晶体管计算机。其主要元器件被晶体管所代替,内存储器采用磁芯,外存储器有了磁带等。与第一代计算机相比,计算机的运算速度提高,体积减小,功耗降低,可靠性增强,开始应用于数据处理、事务管理及过程控制等领域。下一页返回上一页任务1计算机的概述3.第三代计算机第三代计算机(1965-1970年)采用了中、小规模集成电路,因此又叫做集成电路计算机。集成电路采用光刻技术将一些具有特定功能的电路集成在一小块半导体晶片上。因此,计算机的体积进一步缩小。速度、精度、容量及可靠性等主要指标大为改善,并实现了系列化和标准化。计算机的内存开始采用半导体存储器,高级程序设计语言有了更快的发展。操作系统的出现也更加完善了计算机的软件组成。这一阶段,在发展大型机的同时,小型机和超小型机也蓬勃发展起来,从而扩大了计算机的应用范围,加速了计算机的推广普及,计算机的应用开始向各个领域渗透。下一页返回上一页任务1计算机的概述4.第四代计算机第四代计算机(1971年-至今)普遍采用了大规模和超大规模集成电路,尤其是用集成度极高的半导体存储器代替了磁芯存储器,使得计算机的体积大大缩小。计算机的存储容量、运算速度和可靠性方面都比上一代有了重大突破。第四代计算机的重要成就表现在微处理器技术上。微处理器是一种超小型化的电子产品,将计算机的运算器、控制器等核心部件制作在一个集成电路芯片上。以微处理器为核心的微型计算机具有体积小、价格低的特点,其已渗人到社会生活的各个方面。下一页返回上一页任务1计算机的概述1.1.2计算机的特点计算机的发明和发展是20世纪最伟大的科学技术成就之一。作为一种通用的智能工具,它具有以下几个特点。1.运算速度快现代的巨型计算机系统的运算速度已达每秒几十亿次乃至几百亿次。2.运算精度高由于计算机内采用二进制数制进行运算,因此可以通过增加表示数字的设备和运用计算技术,使数值计算的精度越来越高。下一页返回上一页任务1计算机的概述3.通用性强计算机可以将任何复杂的信息处理任务分解成一系列基本的算术和逻辑操作,并反映在计算机的指令操作中,然后按照各种规律执行的先后次序把它们组织成各种不同的程序,存入存储器中。4.具有记忆和逻辑判断功能计算机有内部存储器和外部存储器,可以存储大量的数据,随着存储容量的不断增大,可存储记忆的信息量也越来越大。5.具有自动控制能力计算机内部操作、控制是根据人们事先编制好的程序自动控制进行的,不需要人工干预。下一页返回上一页任务1计算机的概述1.1.3计算机的应用计算机的应用已经广泛地深人到科学研究、军事技术、工农业生产、文化教育等现代人类社会的各个领域中,已经成为人类不可缺少的重要工具。1.科学计算(数值计算)最初计算机的发明,就是为了解决科学技术研究和工程应用中所需要的大量数值计算问题。如利用计算机高速度、高精度的运算能力,可以完成气象预报、火箭发射、地震预测、工程设计等庞大复杂人工难以完成的计算任务。下一页返回上一页任务1计算机的概述2.数据处理数据处理,也称信息管理,用来泛指非科学工程方面的所有对数据计算、管理、查询和统计等。使用计算机信息存储容量大、存取速度快等特点,采集数据、管理数据、分析数据、处理大量的数据并产生新的信息形式,方便人们查询、检索和使用数据。例如,人口统计、企业管理、情报检索、档案管理等。3.计算机通信计算机通信是计算机应用最为广泛的领域之一。它是计算机技术和通信技术高度发展、密切结合的一门新兴科学。国际互联网Internet已经成为覆盖全球的信息基础设施,在世界的任何地方,人们都可以彼此进行通信,如收发电子邮件、进行文件的传输、拨打IP电话等。国际互联网还为人们提供了内容广泛、丰富多彩、各种各样的信息。下一页返回上一页任务1计算机的概述4.计算机辅助工程计算机辅助工程的应用,可以提高产品设计、生产和测试过程的自动化水平,降低成本,缩短生产周期,改善工作环境,提高产品质量,获得更高的经济效益。(1)计算机辅助设计(CAD)是指利用计算机来辅助设计人员进行产品和工程的设计。计算机辅助设计已应用于机械设计、集成电路设计、建筑设计、服装设计等各个方面。(2)计算机辅助制造(CAM)是指利用计算机来进行生产设备的管理、控制。如利用计算机辅助制造自动完成产品的加工、装配、包装、检测等制造过程。(3)计算机辅助教学(CAI)是指利用计算机进行辅助教学、交互学习。如利用计算机辅助教学制作的多媒体课件可以使教学内容生动、形象逼真,取得良好的教学效果。通过交互方式的学习,可以使学员自己掌握学习的进度、进行自测,方便灵活,满足不同层次学员的要求。下一页返回上一页任务1计算机的概述(4)计算机辅助测试(CAT)是指利用计算机进行产品等的辅助测试。5.过程控制过程控制也称实时控制。随着生产自动化程度的提高,对信息传递速度和准确度的要求也越来越高,这一任务靠人工操作已无法完成,只有计算机才能胜任。利用计算机为中心的控制系统可以及时地采集数据、分析数据、制定方案,进行自动控制。它不仅可以减轻劳动强度,而且可以大大提高自动控制水平、提高产品质量和合格率。因此,过程控制在冶金、电力、石油、机械、化工以及各种自动化部门得到广泛应用;同时它还应用于导弹发射、雷达系统、航空航天等领域。下一页返回上一页任务1计算机的概述6.人工智能人工智能(ArtificialIntelligence,AI)。它是研究、开发用于模拟、延伸和扩展人的智能的理沦、方法、技术及应用系统的一门新的技术科学。人工智能研究如何用计算机去模拟、延仲和扩展人的智能;如何把计算机用得更聪明;如何设计和建造具有高智能水平的计算机应用系统;如何设计和制造更聪明的计算机以及智能水平更高的智能计算机等。人工智能是计算机科学的一个分支,是计算机科学技术的前沿科技领域。人工智能与计算机软件有密切的关系:一方面,各种人工智能应用系统都要用计算机软件去实现;另一方面,许多聪明的计算机软件也应用了人工智能的理沦方法和技术。例如,专家系统软件、机器博弈软件等。但是,人工智能不等于软件,除了软件以外,还有硬件及其他自动化和通信设备。下一页返回上一页任务1计算机的概述人工智能虽然是计算机科学的一个分支,但它的研究却不仅涉及计算机科学,而且还涉及脑科学、神经生理学、心理学、语言学、逻辑学、认知(思维)科学、行为科学和数学以及信息沦、控制沦和系统沦等许多学科领域。因此,人工智能实际上是一门综合性的交叉学科和边缘学科。7.电子商务电子商务是指在计算机网络上进行的商务活动。电子货币将传统的货币贸易改变为“电子贸易”,使人们在网上可进行股票、投资、购物和房地产交易,还可用来对职工工资、失业社会保障、保险业务等进行电子支付。这种电子交易不仅方便快捷,现金的流通量也将随之减少,还避免了货币交易的风险和麻烦。它是近年来新兴的、也是发展最快的应用领域之一。下一页返回上一页任务1计算机的概述8.文化教育与休闲娱乐利用计算机网络实现远距离双向交互式教学和多媒体结合的网上教学方式,改变了传统的以教师课堂传授为主,学生被动学习的方式,使学习的内容和形式更加丰富灵活。多媒体计算机还可用于欣赏电影、观看电视、玩游戏等。返回上一页任务2计算机系统的基本组成一个完整的计算机系统由硬件系统和软件系统两大部分组成,如图1-1所示。硬件是组成计算机的物质实体,是计算机系统中实际物理设备的总称,如CPU、存储器、输入/输出设备等;软件则是介于用户和硬件系统之间的界面。没有软件支持的计算机叫做“裸机”,在裸机上只能运行机器语言程序,这样的计算机效率降低,使用十分不便。没有软件支持,再好的硬件配置也是毫无意义的;当然没有硬件,软件再好也没有用武之地,只有两者互相配合,才能发挥最大作用。首先介绍计算机中常用的几个术语。(1)位:计算机内所有的信息都是以二进制的形式表示的,单位是位。计算机只认识由0或1组成的二进制数,其中的每个0或1就是信息的最小单位,称为“位”(bit)。下一页返回任务2计算机系统的基本组成(2)字节:是衡量计算机存储容量的单位。一个8位的二进制数据单元称一个字节(Byte)。在计算机内部,一个字节可以表示一个数据,也可以表示一个英文字母或其他特殊字符,两个字节可以表示一个汉字。除了字节可以表示存储容量外,还可以用千字节(KB),兆字节(MB)、吉字节(GB)、太字节(TB)等表示存储容量,它们之间的换算关系如下。下一页返回上一页任务2计算机系统的基本组成(3)字(Word):在计算机中,作为一个整体单元进行存取、传送、处理的一组二进制字符串叫做一个字或者单元。(4)字长:一个字中包含二进制数位数的多少称为字长。字长是标志计算机精度的一项技术指标。字长越长,在相同的时间内传送的信息就越多,计算机的运算速度就越快。(5)地址(Address):为了便于存取,每个存储单元必须有一个唯一的编号,称为地址。通过地址可以找到所需的存储单元,取出或存入信息。(6)指令:指挥计算机进行基本操作的命令。计算机能执行的全部指令构成计算机的指令系统。一条指令一般包括操作码和地址码两部分,操作码表明进行何种操作,地址码则指明操作对象(数据)在内存中的地址。下一页返回上一页任务2计算机系统的基本组成(7)程序:人们利用计算机来解决问题时,需要计算机按一定的步骤完成各种操作,这就要对计算机发布一系列的指令,这些指令的集合称为程序。(8)程序设计语言:用于编写计算机程序的语言,它是人与计算机之间交换信息的工具。1.2.1计算机的硬件系统结构尽管计算机的发展速度很快,各种类型的计算机的性能、结构、应用等方面存在着差别,但是它们的基本组成结构却是相同的。现在所使用的计算机硬件系统的结构一直沿用了美籍匈牙利科学家约翰·冯·诺依曼提出的模型,它由运算器、控制器、存储器、输人设备及输出设备五大功能部件组成。下一页返回上一页任务2计算机系统的基本组成各种各样的信息,通过输人设备进入计算机的存储器,然后送到运算器,运算完毕把结果送到存储器存储,最后通过输出设备显示出来。整个过程由控制器进行控制。计算机的整个工作过程及基本硬件结构如图1-2所示。1.运算器运算器又称算术逻辑单元(ArithmeticLogicUnit,ALU),是计算机对数据进行加工处理的部件,它的主要功能是对二进制数码进行加、减、乘、除等算术运算和与、或、非等基本逻辑运算,实现逻辑判断。运算器在控制器的控制下实现其功能,运算结果由控制器送到内存储器中。下一页返回上一页任务2计算机系统的基本组成2.控制器控制器主要由指令寄存器、译码器、程序计数器和操作控制器等组成。控制器用来控制计算机各部件协调工作,并使整个处理过程有条不紊地进行。它的基本功能就是从内存中取指令和执行指令,即控制器按程序计数器指出的指令地址从内存中取出该指令进行泽码,然后根据该指令功能向有关部件发出控制命令,执行该指令。另外,控制器在工作过程中,还要接收各部件反馈回来的信息。3.存储器存储器具有记忆功能,用来保存信息,如数据、指令和运算结果等。存储器可分为两种:内存储器与外存储器。下一页返回上一页任务2计算机系统的基本组成(1)内存储器(简称内存或主存):也称主存储器,它直接与CPU相连接,存储容量较小,但速度快,用来存放当前运行程序的指令和数据,并直接与CPU交换信息。内存储器由许多存储单元组成,每个单元能存放一个二进制数,或一条由二进制编码表示的指令。存储器的存储容量以字节为基本单位,每个字节都有自己的编号,称为“地址”,如果要访问存储器中的某个信息,就必须知道它的地址,然后再按地址存人或取出信息。为了度量信息存储容量,将8位二进制码(8bit)称为一个字节(Byte,B),字节是计算机中数据处理和存储容量的基本单位。1024个字节称为1K字节,1024K字节称为1兆字节(1MB),1024M字节称为1吉字节(1GB),1024M个字节称为1太字节(1TB),现在微型计算机的主存容量大多数在兆字节(MB)以上。计算机处理数据时,一次可以运算的数据长度称为一个“字”(Word)。字的长度称为字长。一个字可以是一个字节,也可以是多个字节。常用的字长有8位、16位、32位、64位等。如果某一类计算机的字由4个字节组成,则字的长度为犯位,相应的计算机称为犯位机。下一页返回上一页任务2计算机系统的基本组成(2)外存储器(简称外存或辅存):又称辅助存储器,它是内存的扩充。外存的存储容量大、价格低,但存储速度较慢,一般用来存放大量暂时不用的程序、数据和中间结果,需要时,可成批地与内存储器进行信息交换。外存只能与内存交换信息,不能被计算机系统的其他部件直接访问。常用的外存有硬盘和光盘等。4.输入设备输入设备负责把用户命令包括程序和数据输人到计算机,例如,键盘、鼠标、扫描仪、手写笔等。其中,键盘是最常用和最基本的输人设备,输入计算机中的信息,如文字、符号、各种指令和数据,都可以通过键盘输入到计算机中。5.输出设备计算机的输出设备主要负责将计算机中的信息,例如,各种运行状态、工作的结果、编辑的文件、程序、图形等,传送到外部媒介供用户查看或保存,如显示器、打印机等。下一页返回上一页任务2计算机系统的基本组成人们通常把内存储器、运算器和控制器合称为计算机主机。而把运算器、控制器做在一个大规模集成电路块上称为中央处理器(CentralProcessingUnit,CPU)。也可以说,主机是由CPU和内存储器组成的,而主机以外的装置称为外部设备,外部设备包括输入/输出设备、外存储器等。1.2.2计算机的软件系统软件是和硬件相对应的概念,是指具有重复使用和多用户使用价值的程序,泛指能在计算机上运行的各种程序甚至包括各种有关的资料。没有配制任何软件的计算机称为“裸机”,在裸机上只能运行机器语言源程序。软件可以分为系统软件和应用软件两大类。下一页返回上一页任务2计算机系统的基本组成1.系统软件系统软件是管理、监督和维护计算机资源的软件。系统软件的作用是缩短用户准备程序的时间,扩大计算机处理程序的能力,提高其使用效力,充分发挥计算机的各种设备的作用等。它包括操作系统、程序设计语言、语言处理程序、数据库管理系统、网络软件、系统服务程序等。1)操作系统操作系统是高级管理程序,是系统软件的核心,如存储管理程序、设备管理程序、信息管理程序、处理器管理程序等。操作系统的作用是在计算机裸机与应用软件及用户之间架起一道沟通的桥梁,没有它,用户就无法自如地应用各种软件或程序。著名的操作系统有:UNIX,DOS,OS/2,Macitosh等,现在最有名的是Microsoft公司的Windows系列(Windows95/98/2000/XP)以及源代码完全开放的Linux。下一页返回上一页任务2计算机系统的基本组成2)程序设计语言程序设计语言从历史发展的角度来看,包括以下几种。(1)机器语言(MachineLanguage)。机器语言也称作二进制代码语言,是用直接与计算机打交道的二进制代码指令组成的计算机程序设计语言。一条指令就是机器语言中的一个语句,每一条指令都由操作码和操作数组成,无需编泽和解释。这是第一代语言。(2)汇编语言(AssemblerLanguage)。汇编语言是第二代语言,是一种符号化了的机器语言,也称符号语言,于20世纪50年代开始使用。它更接近于机器语言而不是人的自然语言,所以仍然是一种面向机器的语言。汇编语言执行速度快,占用内存小。它保留了机器语言中每一条指令都由操作码和操作数组成的形式。使用汇编语言,不需要直接使用二进制0和1来编写,不必熟悉计算机的机器指令代码,不过还要一条指令一条指令地编写,比较麻烦。下一页返回上一页任务2计算机系统的基本组成(3)高级语言。高级语言是第三代语言,它是一种算法语言,可读性强,从根本上摆脱了语言对机器的依附,由面向机器转为面向过程,进而面向用户。最早的高级语言是1954年问世的主要用于科学计算的FORTRAN语言,在20世纪50年代末期,随着计算机在商业中的应用,产生了适用于商业数据处理的COBOL,20世纪60年代初期出现了被称为大众化语言的BASIC。现在微机的高级语言均运行在Windows下,例如,VisualBasic,Delphi,Java等。目前过程语言、第五代智能语言相继出现,可视化编程就像处理文档一样简单。发展的结果是使程序的设计更简捷,而功能更强大。下一页返回上一页任务2计算机系统的基本组成3)语言处理程序用汇编语言或各种高级语言编写的程序称为源程序。把计算机本身不能直接执行的源程序翻泽成相应的机器语言程序,这种翻译后的程序称为目标程序。这个翻泽过程有两种方式:解释方式和编泽方式,如图1-3所示。编泽方式就是把源程序用相应的编泽程序翻泽成相应的机器语言的目标程序,然后再通过连接装配程序,连接成可执行程序,目标程序和可执行程序都是以文件方式存放在磁盘上,再次运行该程序时,只需运行可执行程序,不必重新编泽和连接。大多数高级语言的处理程序都是编泽程序。下一页返回上一页任务2计算机系统的基本组成解释方式就是将源程序输入计算机后,用该种语言的解释程序将源程序进行逐条解释,然后逐条执行,得出结果,因此执行速度较慢。下次运行时,磁盘上要同时保存源程序和解释程序。不过它便于人机对话,可以及时从屏幕上看到机器反馈的信息,以便及时修改源程序。4)数据库管理系统其主要由数据库及数据库管理系统组成。常见的关系型数据库管理系统有:VisualFoxPro、Oracle、Access及SQLServer等。5)网络软件主要指网络操作系统。如UNIX,Windows2000Server/2003Server,Linux等。下一页返回上一页任务2计算机系统的基本组成6)系统服务程序其又称为软件研制开发工具、支持软件、支撑软件、工具软件,主要有编辑程序、调试程序、装配和连接程序、测试程序等。2.应用软件应用软件是用户为了解决某些特定具体问题而开发和研制或外购到的各种程序,它往往涉及应用领域的知识,并在系统软件的支持下运行。例如,字处理、电子表格、绘图、课件制作、网络通信等程序。在介绍了电脑基本分类后,下面深入电脑内部,了解一下电脑硬件及软件系统的组成、结构和功能,也为今后的电脑及网络深人掌握和使用打好基础。下一页返回上一页任务2计算机系统的基本组成1.2.3计算机工作原理计算机的基本原理是存储程序和程序控制。预先要把指挥计算机如何进行操作的指令序列(称为程序)和原始数据通过输入设备输送到计算机内存储器中。每一条指令中明确规定了计算机从哪个地址取数,进行什么操作,然后送到什么地址去等步骤。计算机在运行时,先从内存中取出第一条指令,通过控制器的泽码,按指令的要求,从存储器中取出数据进行指定的运算和逻辑操作等加工,然后再按地址把结果送到内存中去。接下来,再取出第二条指令,在控制器的指挥下完成规定操作。依次进行下去,直至遇到停止指令。下一页返回上一页任务2计算机系统的基本组成程序与数据一样存储,按程序编排的顺序,一步一步地取出指令,自动完成指令规定的操作是计算机最基本的工作原理。这一原理最初是由美籍匈牙利数学家冯·诺依曼于1945年提出来的,故称为冯·诺依曼原理。图1-4描述了程序执行时所涉及的有关部件及各类信息的流动。在CPU中,设计了若干不同类型的寄存器,用来存放从内存取出的指令和数据,存放运算的中间结果,存放通过不同方式形成的内存地址。下面介绍一下指令的执行过程,这将有助于读者对CPU工作原理的理解。一个程序在执行前必须先装入内存,而启动一个程序之前还需要将程序的起始指令地址置人指令指针寄存器(IP)中,然后在控制器的控制下进入程序指令的执行周期。一条指令的执行通常可分为3个阶段:取指、译码和执行。下一页返回上一页任务2计算机系统的基本组成1.取指取指阶段的工作是从内存中取出要执行的指令。控制器按照指令指针寄存器IP中所给出的指令地址,从内存中读出一条指令并送往指令寄存器IR。然后IP自动加1,以指向内存的下一个字节。若当前指令为单字节指令,则IP指向下一条指令,若当前指令为多字节指令,则IP指向本条指令的下一个字节。在取指阶段,CPU从内存中读出的内容必定是指令。指令一般由操作码和操作数两部分组成。操作码表示该指令的功能,如某种算术运算或逻辑运算等;而操作数表示指令要处理的数据,或数据所在的地址(如某内存单元地址)。2.译码译码阶段的工作是:指令寄存器中的指令操作码经泽码器处理后送往控制器,控制器根据指令的功能产生相应的控制信号序列。如果该指令含有操作数的地址,控制器还要形成相应的地址,以便指令执行时使用。下一页返回上一页任务2计算机系统的基本组成3.执行指令执行阶段的工作是:机器按照控制器发出的控制信号完成各种操作,从而完成该指令的功能。如果当前指令是多字节指令时,在指令执行阶段IP会不断加1,从而取出指令后续字节中的内容,并加人到指令的执行过程中。当该指令的执行过程结束时,IP将指向下一条指令。于是CPU也就进入下一个指令的“取指一泽码一执行”周期。CPU就是这样周而复始地执行指令,直至程序的完成。但程序并不总是顺序执行,有时需要根据情况进行程序的转移。为了实现程序控制,指令也分为两种类型。一类命令计算机的各个部件完成基本的算术逻辑运算、数据存取和数据传送等操作,属操作类指令。下一页返回上一页任务2计算机系统的基本组成另一类用来控制程序本身的执行顺序;实现程序的分支、转移等,属控制转移类指令。转移指令的操作数给出了下一条将要执行的指令地址。在执行转移指令时,控制器会将这个内存地址存入IP,而使IP中原有的地址作废。所以在执行完转移指令后,程序会从一个新的指令地址继续执行,而不是执行内存中相邻的下一条指令。实际上转移指令还分为无条件转移指令和有条件转移指令。对于有条件转移指令,只有当条件满足时(基于上一条指令的执行结果),才会发生程序的转移。返回上一页图1-1计算机系统的组成返回图1-2计算机硬件系统组成结构返回图1-3高级语言使用过程(a)编译过程;(b)解释过程返回图1-4CPU结构图返回任务1计算机中的进制表示
2.1.1进位计数制
2.1.2常用的进位计数制
2.1.3不同数制间的相互转换任务2带符号数的表示
2.2.1机器数的定义
2.2.2机器数的表示
2.2.3原码、反码和补码的转换模块2数据在计算机中的表示下一页模块2数据在计算机中的表示任务3定点数与浮点数2.3.1定点数2.3.2浮点数任务4计算机中的编码2.4.1西文信息在计算机内的表示2.4.2中文信息在计算机内的表示2.4.3图形信息在计算机内的表示上一页模块2数据在计算机中的表示计算机是用来进行各种运算与信息处理的工具,尽管这些被处理的信息千差万别,但它们都是以二进制数据的形式来操作的。许多读者对这些知识并不陌生,但作为计算机的基础知识来温习一遍,有助于更好地理解计算机操作的机理,提高学习后续内容的效率。模块2简要地概述了计算机中使用的数制系统及其几种常用的编码。返回任务1计算机中的进制表示2.1.1进位计数制1.数制数制也称为计数制,是指用一组固定的符号和统一的规则来表示数值的方法。2.进位计数制按进位的方法进行计数,称为进位计数制。在口常生活和计算机中大多采用的都是进位计数制。3.数位、基数和位权在进位计数制中有数位、基数和位权三个要素。(1)数位:是指数码在一个数中所处的位置。(2)基数:是指在某种进位计数制中,每个数位上所能使用的数码的个数,例如,十进位计数制中,每个数位上可以使用的数码为。0~9十个数码,即基数为10。下一页返回任务1计算机中的进制表示(3)位权:是指在某种进位计数制中,每个数位上的数码所代表的数值的大小,等于在这个数位上的数码乘上一个固定的数值,这个固定的数值就是此种进位计数制中该数位上的位权。数码所处的位置不同,代表的数的大小也不同。2.1.2常用的进位计数制进位计数制很多,这里主要介绍与计算机技术有关的几种常用进位计数制。1.十进制十进位计数制简称十进制。十进制数具有下列特点。(1)有十个不同的数码符号0,1,2,3,4,5,6,7,8,9。(2)每一个数码符号根据它在这个数中所处的位置(数位),按“逢十进一”来决定其实际数值,即各数位的位权是以10为底的幂次方。下一页返回上一页任务1计算机中的进制表示例如,(123.456)10,以小数点为界,从小数点往左依次为个位、十位、百位,从小数点往右依次为十分位、百分位、千分位。因此,小数点左边第一位3代表数值3,即3x10º,第二位2代表数值20,即2x10¹;第三位1代表数值100,即1x10²;小数点右边第一位4代表数值0.4,即4x10﹣¹;第二位5代表数值0.05,即5x10-²;第三位6代表数值0.006,即6x10-³。因而该数可表示为如下形式(123.456)10=1x10²+2x10¹+3x10º+4x10﹣¹+5x10-²+6x10-³由上述分析可归纳出,任意一个十进制数可表示成如下形式下一页返回上一页任务1计算机中的进制表示其中:Sn为数位上的数码,其取值范围为0~9;n为整数位个数;m为小数位个数;10为基数;是十进制数的位权。在计算机中,一般用十进制数作为数据的输入和输出。2.二进制二进位计数制简称二进制。二进制数具有下列特点。(1)有两个不同的数码符号0,1。下一页返回上一页任务1计算机中的进制表示(2)每个数码符号根据它在这个数中的数位,按“逢二进一”来决定其实际数值。例如任意一个二进制数可以表示成如下形式其中:Sn为数位上的数码,其取值范围为0~1;n为整数位个数;m为小数位个数;2为基数;是二进制数的位权。下一页返回上一页任务1计算机中的进制表示3.八进制八进位计数制简称八进制。八进制数具有下列特点。(1)有八个不同的数码符号0,1,2,3,4,5,6,7。(2)每个数码符号根据它在这个数中的数位,按“逢八进一”来决定其实际的数值。例如任意一个八进制数S,可以表示成如下形式其中:Sn为数位上的数码,其取值范围为0~7;n为整数位个数;m为小数位个数;8为基数;是八进制数的位权。下一页返回上一页任务1计算机中的进制表示八进制数是计算机中常用的一种记数方法,它可以弥补二进制数书写位数过长的不足。4.十六进制十六进位计数制简称为十六进制。十六进制数具有下列两个特点。(1)它有十六个不同的数码符号0,1,2,3,4,5,6,7,8,9,A,B,C,D,E,F。由于数字只有0~9十个,而十六进制要使用十六个数字,所以用A-F六个英文字母分别表示数字10~15。(2)每个数码符号根据它在这个数中的数位,按“逢十六进一”来决定其实际的数值。例如下一页返回上一页任务1计算机中的进制表示任意一个十六进制数S,可表示成如下形式其中:Sn为数位上的数码,其取值范围为0~F;n为整数位个数;m为小数位个数;16为基数;为十六进制数的位权。十六进制数是计算机常用的一种计数方法,它可以弥补二进制数书写位数过长的不足。总结以上四种计数制,可将它们的特点概括为如下几点。(1)每一种计数制都有一个固定的基数R(R为大于1的整数),它的每一数位可取0~R-1个不同的数值。下一页返回上一页任务1计算机中的进制表示(2)每一种计数制都有自己的位权,并且遵循“逢R进一”的原则。表2-1中列出了几种常用进位计数制的表示法。表2-2列出了几种常用进位计数制数位的位权。2.1.3不同数制间的相互转换二进制数适用于计算机,但人们习惯使用十进制数,所以,用计算机进行计算时,就要进行数制的转换。1.二进制数与十进制数之间的转换1)二进制数转换成十进制数使用按权加法,即把第一位的权(2的某次幂)与数值(0或1)的乘积相加,其和就是相应的十进制数。例如,求二进制数(101101.101)2的等值十进制数。下一页返回上一页任务1计算机中的进制表示2)十进制数转换成二进制数转换的基本方法是,将整数和小数部分分别转换,然后用小数点连接。整数部分的转换采用除2取余法,即用2多次除转换的十进制数,直至商为0,每次相除所得的余数,便是对应的二进制数,第一次除2所得的余数是二进制的第一位,最后一次相除所得的余数是最高位。小数部分的转换采用乘2取整法。即用2多次乘被转换的十进制数的小数部分,每次相乘后,所得乘积的整数部分变为对应的二进制数。第一次乘积所得的整数部分就是二进制数小数部分的最高位,其次为次高位,最后一次是最低位。下一页返回上一页任务1计算机中的进制表示例:将十进制数35转换为二进制数。所以35=100011B或35D=100011B下一页返回上一页任务1计算机中的进制表示例:将十进制数0.375转换为二进制数。所以0.375=0.011B,或写为0.375D=0.011B下一页返回上一页任务1计算机中的进制表示2.二进制数与八进制数、十六进制数之间的转换二进制的位数较多,读写起来不方便,而且容易出错,为了弥补这一不足,常用八、十六进制书写。由于2³=8,24=16,所以二进制与八进制、十六进制之间的转换十分方便。1)二进制与八进制、十六进制之间的转换把二进制转成八进制、十六进制时,用“三位一并法”和“四位一并法”。从二进制的小数点开始,分别向左、右两个方向,每三(四)位合成一组,不足三(四)位以0补齐。然后把每个二进制三位(四位)组代之以相应的八(十六)进制数码即可。下一页返回上一页任务1计算机中的进制表示例如:将(110111110010.011111)2转换成十六进制。解:(110111110010.01111100)2DF2.7C(十六进制)所以(110111110010.011111)2=(DF2.7C)162)八进制、十六进制与二进制之间的转换把八进制、十六进制转换成二进制时,用“一分为三”法和“一分为四”法。此法是“三位一并法”和“四位一并法”的逆过程,将每一位八进制码或十六进制码用三(四)位二进制码代替。例如:将(A9.B)16转换成二进制码。(A9.B)16(10101001.1011)(二进制)下一页返回上一页任务1计算机中的进制表示所以(A9.B)16=(10101001.1011)23.书写时的规定为了区别各种进制的数,一般采用英文字母作后缀来表示各种进制。B代表二进制数;Q代表8进制数;D代表10进制数(可省略);H代表16进制数。例如可进行如下的书写。(10101)2=10101B(4D)16=4DH(0.875)10=0.875D=0.875返回上一页任务2带符号数的表示2.2.1机器数的定义生活中遇到的数,除了上述的无符号数外,还有大量的带符号数和小数。但在计算机中表示的数是不能出现正负符号和小数点的,要准确的表示一个数,就要确定这些符号。在计算机中通常把最高位作为符号位来表示正负符号。一般规定符号位用。表示正数,用1表示负数。这样,一个数就可分为符号位和数值两部分。那么机器数就是把一个数连同其符号在机器中用二进制形式表示数的方式。这样的数称为机器数。而机器数所表示的数称为该机器数的真值。它有两个特点:一是二进制形式,二是受机器字长的限制。如8位计算机表示一个数0也必须用8位0来表示,16位计算机表示一个数0用16位0来表示。以8位机为例,其具体格式如下。下一页返回任务2带符号数的表示其中:D0是最低位,D7是最高位。这里需强调以下2点。(1)机器数是二进制形式,但不能说它就是二进制数。(2)一个数在计算机中不只一种表示方法。就像人类对数的写法一样各有不同,如:"3",中文写作三,也可写作叁,英文写作three。所以计算机中一个数的表示有多种,可以是定点,也可以是浮点,还有反码,补码,8421BCD码,ASCII码等。下一页返回上一页任务2带符号数的表示2.2.2机器数的表示机器数可用不同方法表示,常用的有原码,反码和补码等。这里以整数为例,假定字长为8位。1.原码数X的原码记作[X]原,其符号位用0表示正,用1表示负。其数值部分就是X绝对值的二进制形式。举例如下。[+1]原=00000001,[-1]原=10000001[+126]原=01111110,[-126]原=11111110注:在原码的表示中,0有两种表示形式[+0]原=00000000[-0]原=10000000下一页返回上一页任务2带符号数的表示已知一个数的原码,求其对应的数,只需将符号位译为正号或负号,其余各位即是该数的二进制值。举例如下。[X]原=10101101则X=(-101101)2=-45D用原码表示数最简单,但用原码进行两个异号数相加或相减是不方便的,为了将减法运算转换为加法运算,需要引入反码和补码。2.反码数X的反码记作[X]反。对于正数:[X]反=[X]原对于负数:符号位为1,其数值位凡是1的就转换为0,凡是0的就转换为1。即取反。举例如下。下一页返回上一页任务2带符号数的表示
[+1]反=[+1]原=00000001[-1]反=11111110注:在反码的表示中,0也有两种表示形式[+0]反=00000000[-0]反=111111113.补码数X的补码记作[X]补。对于正数与原码相同,即[X]补=[X]原。对于负数,数的符号位为1,其数值位凡是1的就转换为0,凡是0的就转换为1,末尾加1。即:[X]补=[X]反+1。举例如下。下一页返回上一页任务2带符号数的表示[+1]补=00000001[-1]补=11111110+1=11111111注:在补码的表示中,0只有一种表示。[+0]补=[-0]补=00000000机器数中几个特殊的数的表示方法见表2-3。下一页返回上一页任务2带符号数的表示2.2.3原码、反码和补码的转换对于一个正数X:[X]补=[X]反=[X]原对于一个负数X:[X]补=[X]反+1,[X]反=原码按位取反,符号位1不变。如果从补码求原码,其原则如下。①正数的原码与补码相同。②负数的补码除符号位不变外,尾数减1再求反。即得其原码。再把符号位1变为负号,其数值按二进制的权位展开式转换成十进制即可得真值(这也是真值与补码间的转换)。如:[X]补=10000010,求X。因为D7=1,即符号位为1,则该补码对应的真值是负数。下一页返回上一页任务2带符号数的表示[X]反=[X]补-1=10000010-1=10000001[X]原-11111110所以计算机中引入补码是为了将减法换算为加法,把两数相减化成两数补码相加的方法来求出结果。符号位也被数字化,符号位连同数值可当成一个整体来处理,这样就简化了运算过程,提高了运算速度。所以补码是最广泛的机器数表示方法。[例2-1]用补码计算8-3的值。因为8-3=8+(-3)[8]补=[8]原=00001000[-3]补=[-3]反+1=11111101下一页返回上一页任务2带符号数的表示[8]补+[-3]补=00001000+11111101=00000101[8]补+[-3]补=00000101=1×2²+1×2º=5[例2-2]求30-68的值。把30-68看作30+(-68)[30]补=[30]原=00011110[-68]补=[-68]反+1=10111100[30]补+[-68]补=00011110+10111100=11011010因为D7=1,假定[Z]补=11011010所以[Z]反=[Z]补-1=11011001[Z]原=10100110返回上一页任务3定点数与浮点数在计算机中,难以表示小数点。这里将介绍带小数的数在计算机中如何表示,以及小数点的位置如何设定。一般带小数点的数在计算机中的表示有两种表示方法:即定点表示和浮点表示。2.3.1定点数定点数规定:参与运算的各个数,其小数点的位置是不变的。小数点的位置是约定的,在计算机中实际上并不出现小数点。根据小数点的位置,定点数又有定点整数与定点小数之分。符号位同样用1表示负数,用0表示正数。1.定点整数它是小数点定在数值最低位右面的一种数据。下一页返回任务3定点数与浮点数例如,110101在计算机中表示为:又如将-16D表示为定点整数为:因为-16D=(-10000)2符号位用1来表示负数。把一个任意进制的数表示为定点整数,首先应转换成二进制数并补足数值的位数(本书中都以8位机为例,连同符号位不足8位的在符号位之后补0)。下一页返回上一页任务3定点数与浮点数2.定点小数其是指小数点准确固定在数据某一个位置上的小数。一般把小数点固定在最高数据位的左边,它总是定义在符号位与最高数值位之间。小数点前边再设一位数符号位。任何一个小数都可写成如下形式。N=±.d-1d-2d-3···..d-m下一页返回上一页任务3定点数与浮点数例如,-0.1011010在计算机中的表示为:机器数为11011010,其真值为-0.1011010。又如:将-0.25表示为定点数。因为-0.25=(-0.01)2,符号位为1表示负数其余各位补足8位为.0100000(小数补位在后面不影响数值的大小)。即-0.25表示为定点数为10100000(小数点在D7与D6之间)。同样的机器数,但定点整数与定点小数表示的大小却不相同。因此,要求机器数对应表示的数值是多少,首先应知道该数是什么表示方法,即小数点的约定是什么,然后将符号位表示为符号,尾数表示二进制的数值。下一页返回上一页任务3定点数与浮点数如:定点整数10000101表示的数是多少?因是定点整数,则小数点约定在D0后。符号位为1表示的是负数,则该定点整数为(-0000101)2换成十进制为-5。如:定点小数11010000表示的数是多少?因是定点小数,则小数点在D7与D6之间。符号位为1表示负数,则该定点小数为(-0.1010000)2,表示的十进制为-0.625。从上可看出,一个定点数要么是纯整数,要么是纯小数。如有理数又怎么表示呢?计算机中用两个定点数来表示有理数,即用定点整数表示其整数部分,用定点小数表示其小数部分。如:将8.5表示为定点数。下一页返回上一页任务3定点数与浮点数先将8.5表示为二进制为1000.1,用定点整数表示其整数部分1000,符号位为0,补0在前面则定点整数为00001000;用定点小数表示其小数部分0.1,符号位为0,补0在后面.1000000,则定点小数为01000000。用定点整数00001000和定点小数01000000合起来表示8.5要占用两个字节,更多位的有理数用定点数表示时相当麻烦而且占用存贮空间。这种情况就需要引入浮点数表示法。下一页返回上一页任务3定点数与浮点数2.3.2浮点数任何一个二进制浮点数可表示为其中:P称为N的阶码;P前的正负号称为阶符;d称为N的尾数;d前的正负号称为数符;0表示正,1表示负。在浮点表示法中,小数点的位置是浮动的,阶码P可取不同的值。如:二进制数10100可表示为:(N)2-10100=1010x2¹-0101x2²(阶码2用二进制表示为10)浮点数是由阶符、阶码、数符、尾数四部分组成。下一页返回上一页任务3定点数与浮点数在浮点数表示中(以8位机为例),数符和阶符都各占一位,阶码是定点整数,占两位。阶码的位数决定了表示数的范围,尾数是定点小数,尾数的位数决定了数的精度,在不同字长的计算机中,浮点数占的字长是不同的,一般为两个或四个机器字长。如:N=-0.1011x2³,在计算机中的表示形式为:返回上一页任务4计算机中的编码2.4.1西文信息在计算机内的表示用计算机处理非数值的文字和其他符号时,要先对文字和符号进行数字化处理,即用二进制编码来表示文字和符号。字符编码就是规定用怎样的二进制编码来表示文字和符号。由于字符编码是一个涉及世界范围内有关信息的表示、交换、处理、存储的基本问题,因此,都是以国家标准或国际标准的形式颁布施行的,如ASCII码、汉字编码等。在输入过程中,系统自动将用户输入的各种数据按编码的类型转换成相应的二进制编码数据存入计算机存储单元中;在输出过程中,再由系统自动将二进制编码数据转换成用户可以识别的数据格式输出给用户。下一页返回任务4计算机中的编码1.BCD码(二—十进制编码)通常人们习惯于使用十进制数,而计算机内部采用二进制表示和处理数值数据。因此在计算机输入和输出数据时,就要进行由十进制到二进制和从二进制到十进制的转换处理,这是多数应用环境的实际情况。显然,如果这项事务性工作由人工完成,势必浪费大量的时间。因此,必须用一种编码的方法,由计算机完成这种识别和转换的工作。采用把十进制数的每一位分别写成二进制数形式的编码,称为二进制编码的十进制数,即二至十进制编码或BCD(BinaryCodedDecimal)编码。下一页返回上一页任务4计算机中的编码BCD编码方法很多,通常采用8421编码。这种编码最自然简单。其方法是用四位二进制数表示一位十进制数,自左到右每一位对应的权分别是2³,2²,2¹,2º,即8,4,2,1。值得注意的是,四位二进制数有0000—1111共16种状态,这里只取了0000—1001这10种状态,而1010—1111这6种状态在这里没有意义。十进制数与8421码的对照表,如表2—4所示。其中十进制的0—9对应于00001001;对于十进制的10,则要用2个8421码来表示。BCD码与二进制之间的转换不是直接进行的。当需要将BCD码转换成二进制时,要先将BCD码转换成十进制,然后再转换成二进制;当需要将二进制转换成BCD码时,要先将二进制转换成十进制,然后再转换成BCD码。下一页返回上一页任务4计算机中的编码例如,十进制数864的8421码。先写出十进制数864每一位的二进制码。十进制数864的各位:864对应的二进制数:100001100100然后拼接在一起,即十进制数864的8421码为100001100100。2.ASCII码将用汇编语言或各种高级语言编写的程序输入到计算机中,这时,人与计算机通信所用的语言,就已不再是一种纯数学语言了,而多为符号式语言。因此,需要对各种符号进行编码,以便计算机能识别、存储、传送和处理。下一页返回上一页任务4计算机中的编码最常见的符号信息是文字符号,所以字母、数字和各种符号都必须按约定的规则用二进制编码才能在机器中表示。在计算机系统中使用最广泛的是美国信息交换标准码(AmericanStandardCodeforInformationInterchange,ASCII)。ASCII码虽然是美国国家标准,但它已被国际标准化组织(ISO)认定为国际标准。目前已为世界公认,并在世界范围内通用。1)标准ASCII码下一页返回上一页任务4计算机中的编码ASCII码有7位和8位码两种形式。因为1位二进制数可以表示两种状态,0或1(2¹=2);2位二进制数可以表示4种状态,00,01,10,11(2²=4);依此类推,7位二进制数可以表示27=128种状态,每种状态都唯一对应一个7位的十进制码,对应一个字符,这些码可以排列成一个十进制序号0-127。所以7位ASCII码是用一七位二进制数进行编码的,可以表示128个字符。7位ASCII码,通常也称为标准ASCII码。ASCII码表中的128个符号中,第0~32号及第127号(共34个)为控制字符,主要包括换行、回车等功能字符;第33~126号(共94个)为字符,其中第48~57号为0~9十个数字符号,第65~90号为26个英文大写字母,第97~122号为26个英文小写字母,其余为一些标点符号、运算符号等。下一页返回上一页任务4计算机中的编码例如,大写字母A的ASCII码值为1000001,即十进制数65;小写字母a的ASCII码值为1100001,即十进制数97。为了使用方便,在计算机的存储单元中,一个ASCII码值占一个字节(8个二进制位),其最高位(b7)用作奇偶校验位。所谓奇偶校验,是指在代码传送过程中用来检验是否出现错误的一种方法,一般分奇校验和偶校验。(1)奇校验:正确代码的一个字节中1的个数必须是奇数,若非奇数,则在最高位b7添1来满足。(2)偶校验:正确代码的一个字节中1的个数必须是偶数,若非偶数,则在最高位b7添1来满足。下一页返回上一页任务4计算机中的编码例如,将“COPY"4个字符的ASCII码查出,存放在存储单元中,且最高位b7用作奇校验。由于一个字节只能存放一个ASCII码,所以“COPY”要用四个字节表示。根据ASCII码规定和题目要求,将最高位b7用作奇校验,其余各位由ASCII码值得到。C的ASCII码值=(67)10=(1000011)2,该字节存储为(01000011)2O的ASCII码值=(79)10=(1001111)2,该字节存储为(01001111)2P的ASCII码值=(80)10=(1010000)2,该字节存储为(11010000)2Y的ASCII码值=(89)10=(1011001)2,该字节存储为(11011001)2下一页返回上一页任务4计算机中的编码2)扩充ASCII码8位ASCII码使用8位二进制数进行编码。当最高位为0时,称为基本ASCII码(编码与7位ASCII码相同),当最高位为1时,形成扩充的ASCII码,它表示数的范围为128~255,可表示128种字符。通常各国都把扩充的ASCII码作为自己国家语言文字的代码。2.4.2中文信息在计算机内的表示中文的基本组成单位是汉字。中国汉字总数在7万左右,如果要将所有汉字都一一编码,将占用庞大的存储空间,所以只能从常用汉字入手。下一页返回上一页任务4计算机中的编码在使用汉字时,必须解决汉字的输入、输出以及汉字处理等一系列问题。当然,关键问题是要解决汉字编码的问题。由于汉字是象形文字,字的数目很多,常用汉字就有3000~5000个,加上汉字的形状和笔画多少差异极大,因此,不可能用少数几个确定的符号将汉字完全表示出来,或像英文那样将汉字拼写出来。汉字必须有它自己独特的编码。汉字在计算机内的表示方法有以下几种编码方案。1.汉字编码标准集为了适应东方文字信息的处理,国际标准化组织制定了IS02022《七位与八位编码字符集的扩充方法》。我国根据IS02022制定了国家标准GB2311,它是以一七位编码字符集为基础进行代码扩充,并根据该标准制定了国家标准GB2312—1980,其他东方国家或地区也制定了各自的字符编码标准,如日本的JIS0208、韩国的KSC5601、中国台湾地区的CNS11643等。下一页返回上一页任务4计算机中的编码为了提高计算机的信息处理和交换功能,使得世界各国的文字都能在计算机中得以处理,从1984年起,国际标准化组织就开始研究制定满足多文种信息处理要求的国际通用编码字符集(UniversalCodedCharacterSet,UCS),该标准取名为IS010646。标准中重要的一个部分是统一的中日韩汉字编码字符集。国际标准化组织通过了以“统一的中日韩汉字字汇与字序2.0版”(UnifiedIdeographicCJKCharactersRepertoireandOrderingV2.0)为重要组成部分的IS010646UCS,其中共收集汉字20902个。我国根据IS010646制定了相应的国家标准GB13000,该标准与IS010646完全兼容。下一页返回上一页任务4计算机中的编码1)国标码(GB2312—1980)1980年我国颁布了第一个汉字编码字符集标准,即GB2312—1980《信息交换用汉字编码字符集基本集》。该标准共收了6763个汉字及常用符号,奠定了中文信息处理的基础。它由3部分组成:第一部分是字母、数字和各种符号,包括英文、俄文、日文、罗马字母、汉语拼音等,共687个;第二部分是3755个二级常用汉字;第三部分是3008个次常用汉字。2)国际多文种编码IS010646—1,IS010646—2000和GB13000.1—1993下一页返回上一页任务4计算机中的编码随着国际间的交流与合作的扩大,信息处理对字符集提出了多文种、大字量、多用途的要求。1993年国际标准化组织发布了ISO/IEC10646—1《信息技术通用多八位编码字符集第一部分体系结构与基本多文种平面》。我国采用此标准制定了GB13000.1—1993《信息技术多八位编码字符(UCS)》。该标准采用了全新的多文种编码体系,收录了中、日、韩20902个汉字,是编码体系未来发展方向。但是,由于其新的编码体系与现有多数操作系统和外部设备不兼容,所以它的实现仍需要有一个过程,目前还不能完全解决我国当前应用的迫切需要。国际标准化组织在IS010646一2000中(Unicode3.0)编入了27484个基本汉字,即GB18030颁布时所建议支持的字汇。同时国际标准化组织还在IS010646—2000提供了扩展汉字42711个。下一页返回上一页任务4计算机中的编码3)汉字扩充编码GB18030—20002000年3月17日,我国颁布了最新国家标准GB18030—2000《信息技术信息交换用汉字编码字符集基本集的扩充》,是我国计算机系统必须遵循的基础性标准之一。考虑到GB13000的完全实现尚需时日,以及GB2312编码体系的延续性和现有资源和系统的有效利用与过渡,应用在GB2312(GB2311)的基础上进行扩充,并且在字汇上与GB13000.1兼容的方案,研制一个新的标准,进而完善GB2312,以满足我国邮政、户政、金融、地理信息系统等应用的迫切需要。GB18030收录了27484个汉字,总编码空间超过150万个码位,为解决人名、地名用字问颗捍棋了方幸.为汉字研穷、古籍整理等骊域捍棋了统一的信良平台墓础下一页返回上一页任务4计算机中的编码GB18030与GB2312标准兼容,在字汇上支持GB13000.1的全部中、日、韩(CJK)统一汉字字符和全部CJK扩充的字符,并且确定了编码体系和27484个汉字,形成兼容性、扩展性、前瞻性兼备的方案。OfficeXP及WindowsXP都已经支持IS010646—2000和GB18030,提供汉字超大字符集(6万4千汉字)。2.机内码机内码是指在计算机内表示一个汉字的编码。正是由于机内码的存在,输入汉字时就允许用户根据自己的习惯使用不同的汉字输入码,例如,拼音法、自然码、五笔字型、区位码等,进入系统后再统一转换成机内码存储。国标码也属于一种机器内部编码,其主要用途是将不同的系统使用的不同编码统一转换成国标码,使不同系统之间的汉字信息进行相互交换。下一页返回上一页任务4计算机中的编码汉字内码扩展规范(GBK)是国家技术监督局1995年为中文Windows95所制定的新的汉字内码规范(其中GB表示国标,K表示扩展)。该规范在字汇一级上支持IS010646和GB13000中的全部中日韩(CJK)汉字,并与国家标准GB2312-80信息处理交换码相兼容。3.汉字输入码汉字输入码(外码)是为了将汉字通过键盘输入计算机而设计的代码。汉字输入编码方案很多,其表示形式大多为字母、数字或符号。输入码的长度也不同,多数为4个字节。目前国内广泛使用的输入码主要有下列几种。(1)以国标GB2312-80,GBK为基准的国标码。(2)以汉字拼音为基础的拼音类输入法。(3)以汉字拼形为基础的拼形类输入法。(4)以汉字拼音和拼形结合为基础的音形类输入法。下一页返回上一页任务4计算机中的编码4.汉字字形码汉字字形码是指汉字字库中存储的汉字字形的数字化信息。目前汉字信息处理系统中产生汉字字形的方式大多是数字式的,即以点阵的方式组成汉字。因此,汉字字形码主要是指汉字字形点阵的代码。将汉字的字形分解为点阵,如同用一块窗纱蒙在一个汉字上一样,如图2-1所示。有笔画的网眼规定为1,无笔画的网眼规定为0,整块窗纱上的0,1数码就表示该汉字的字形点阵。汉字的字形点阵有16x16,24x24,32x32等点阵。点阵分解越细,字形质量越好,但所需存储量也越大。一位二进制可以表示点阵中一个点的信息,如16x16点阵的字形码需要32个字节(16x16÷8=32),而24x24点阵的字形码需要72个字节(24x24÷8=72)。下一页返回上一页任务4计算机中的编码2.4.3图形信息在计算机内的表示图画在计算机中有两种表示方法:图像(Image)表示法和图形表示法(Graphics)。1.图像表示法图像表示法是把原始画面离散成m×n个像点(或称“像素”)所组成的一个矩阵,黑白画面的每个像素用1个二进制数表示该点的灰度,彩色画面的每个像素用3个二进制数来表示该点的3个分量(如R,G,B)的灰度。这种图常称为位图。汉字字形的点阵描述就是一种黑白图像的表示。下一页返回上一页任务4计算机中的编码2.图形表示法图形表示法是根据画面中所包含的内容,分别用几何要素(点、线、面、体)和物体表面的材料与性质以及环境的光照条件、观察位置等来描述,如工程图纸、地图等。这种图常称为矢量图。汉字字形的轮廓描述法就属于图形表示。其优点是易于加工处理,数据量少。返回上一页表2-1十进制、二进制、八进制、十六进制数的常用表示方法返回下一页表2-1十进制、二进制、八进制、十六进制数的常用表示方法(续表)返回上一页表2-2常用进位计数制数位的位权返回表2-3数的几种表示方法对照表返回表2-4十进制数与8421码的对照表返回图2-1汉字点阵字形返回模块3指令系统任务1指令格式3.1.1指令前缀3.1.2指令中各字段的意义任务28086寻址方式3.2.1数据类型3.2.2寻址方式任务38086指令系统3.3.1数据传送类指令下一页模块3指令系统3.3.2地址传送指令3.3.3算术运算类指令3.3.4控制转移类指令3.3.5处理器控制类指令3.3.6逻辑运算与移位类指令任务4汇编语言简述3.4.1汇编语言及语句格式3.4.2汇编语言程序结构下一页上一页模块3指令系统3.4.3常用伪指令3.4.4宏指令3.4.5条件汇编3.4.6保护方式编程指令3.4.7与保护方式程序接口3.4.8汇编语言程序上机过程3.4.9顺序程序3.4.10循环程序3.4.11分支程序设计下一页上一页模块3指令系统3.4.12子程序设计3.4.13DOS调用程序设计上一页模块3指令系统从科学发展的角度,对Intel新增加的指令也进行了介绍。从每一条指令的功能和操作,可以进一步领会微机硬件的操作过程。模块3将以Intel指令系统为背景对指令格式、指令功能进行描述,对从8086到Pentium的指令系统中的常用的一些指令有选择地、分门别类地进行了说明。本模块的重点是指令格式和指令的操作。返回任务1指令格式指令由许多部分组成。在构成指令的这几部分中,只有操作码部分是必须存在的,其余各部分则要根据指令操作所涉及的操作数类型以及操作数存放在何处等因素来决定取舍。任何一条机器指令都是由一组二进制代码构成的,通常又被进一步分成操作码部分和地址码部分,一般的指令格式如图3-1所示。Intel从8086到Pentium系列微处理器的指令都是由多字节组成的,一条指令可以由多个字节构成。指令的操作码表示指令所执行的操作,通常用指令的第一个字节表示。但由于一个字节所能表示的指令的条数有限,因此还会在指令的第二个字节中占用3位用作操作码。在一条指令中,除操作码之外的那些字节则被用来表示操作数的地址码。从8086到80286都是16位的微处理器,所以,它们的指令格式是16位的,如图3-2所示。下一页返回任务1指令格式Intel从80386以后的各高档微处理器都是32位的微处理器,它们所用的指令格式为如图3-3所示的32位的指令格式。初看起来,从8086到Pentium的指令格式不尽相同,且比较复杂。但这些指令却是很有规律的,而且16位的指令格式与32位的指令格式在80386以上的高档微处理器上是兼容的。如果Intel的32位微处理器运行的是16位程序,则像32位的指令格式那样,必须带有指令前缀,且在实模式下进行操作,在32位的微处理器上按16位的指令格式运行。Pentium微处理器指令的一般格式如图3-3所示,Pentium微处理器的所有指令都是如图3-3所示的指令格式的子集。由图3-3可知,一条指令由可任选的指令前缀(可以是任何的次序),一个或两个原操作码字节,有可能要用的地址说明符(由ModR/M字节和按比例变址基地址SIB字节构成),一个偏移量(根据需要)和一个立即操作数数据字段(如果需要)等元素组成。下一页返回上一页任务1指令格式3.1.1指令前缀指令前缀是置于指令前面的一个或多个字节,它的作用是用来修改指令的操作。下面所列出的这4个指令前缀就是供应用程序使用的。1.指令前缀指令前缀并不经常出现,若出现,则由锁定前缀(LOCK)或一个重复前缀组成。2.段的超前前缀段的超前前缀用于显式地指定本条指令将使用CS,SS,DS,ES,FS,GS这6个段寄存器中的哪一个。用于代替Pentium微处理器为本指令生成默认的段寄存器。3.操作数大小前缀指令默认的操作数大小是16位或32位的,操作数大小前缀用来在32位和16位操作数之间进行切换。下一页返回上一页任务1指令格式4.地址大小前缀在对存储器进行寻址操作时,微处理器既可以使用16位地址,也可以使用犯位的地址。地址的大小决定了指令格式中偏移量的大小以及在计算有效地址时生成的偏移量的大小。3.1.2指令中各字段的意义1.操作码字段操作码字段占用1个或2个字节。由操作码字段规定指令的操作性质,如操作数的类型(是字节、字、还是双字)、操作数的传送方向(是取自存储器,还是存入存储器)以及寄存器编码或符号扩展等。下一页返回上一页任务1指令格式2.ModR/M字段ModR/M字段和SIB字段是寻址方式说明字段。ModR/M是主寻址字节,由这个字节指定操作数是寄存器操作数还是存储器操作数。若是存储器操作数,则用这个字节中的一个字段来说明将要采用的寻址方式。其实,ModR/M字节由Mod字段((2位)、Reg/OPcode字段(3位)和R/M字段(3位)这样3个字段组成。Mod字段(2位)和R/M字段(3位)这5位可以构造成32个不同的值。具体地,它们可分别用于指示8个寄存器和24种变址方式;Reg/OPcode字段(3位)用来指定8个寄存器中的一个,或者用来作为操作码信息的3个补充位;R/M字段(3位)用来指定一个寄存器,指示出操作数的位置,或者用来作为寻址方式的一个组成部分,与Mod字段组合起来进行编码。下一页返回上一页任务1指令格式3.SIB字段SIB字段又被进一步分成3个字段,分别是SS字段(2位),Index字段(3位)和Base字段(3位)。SS字段在进行按比例变址操作时用来当比例因子,Index字段用来指示使用的是哪一个变址寄存器,而用Base字段则指示基地址寄存器。4.偏移量寻址方式一经确定,偏移量也就随之确定了,一个用8位、16位或32位的带符号的整数表示的偏移量也就被放入了指令之中。5.立即数立即数就是包括在指令中的一个8位、16位或32位的操作数。返回上一页任务28086寻址方式在指令中,操作数或操作数的地址可用多种方式来表示,统称为寻址方式。同一条指令可有不同的寻址方式,以说明不同的操作对象。3.2.1数据类型在计算机中,数据有多种类型。一种是指令处理的对象,称为操作数;另一种表示指令,称为指令字;第三种是存储器单元的序号,称为地址。其中,操作数又分为两种,一种是参加运算或由计算机处理的对象,称为数据操作数,简称为数据;另一种用来表示转移指令的目标地址,称为转移地址操作数,简称为转移
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2026年工厂仓管考试模拟题及答案详解
- 机电识图考核试题及答案揭晓
- 2026年船舶电气考试模拟题及答案详解
- 2026年中国吸收式热泵行业市场全景评估及未来投资趋势预测报告智研
- 采购笔试题目及对应答案
- 2026年卷绕机项目投资分析及可行性报告
- 2026年研究生考试考研临床医学综合能力(中医307)新考纲题库(含答案)
- 2026年宋元文学试题库(含答案)
- 2026年注册安全工程师安全生产技术押题试卷及答案详解
- 中国尼龙膜行业市场前景预测及投资价值评估分析报告
- 企业管理-采购腹腔镜训练器的申请报告
- T-CICC 35007-2025 金属材料 疲劳试验小样本数据统计分析方法
- HJ 169-2018建设项目环境风险评价技术导则
- 机械表维护知识培训课件
- 展览战略合作框架协议书
- 水库鱼类售卖协议书
- 运动素质知到课后答案智慧树章节测试答案2025年春浙江大学
- 企业文化-电力与能源战略参考题库2025版
- 2025年家居装修申请定制一口价协议
- T-WHECA 002-2025 建设项目全过程工程咨询服务指南
- 增分微课2 构造法在解决函数、导数问题中的应用
评论
0/150
提交评论