NOVOTS KMS 词汇表 Glossary    联系我们 Contact Us
查询 Search  
   
按类别浏览 Browse by Category
NOVOTS KMS .: 硬件 .: 计算机应用基础知识

计算机应用基础知识

计算机应用基础知识

1.1  计算机的发展概述

世界上第一台电子计算机于19462月在美国宾夕法尼亚大学诞生,取名为ENIAC(读作“埃尼克”),即Electronic Numerical Internal And Calculator的缩写。电子计算机的产生和迅速发展是当代科学技术最伟大的成就之一。自1946年美国研制的第一台电子计算机ENIAC以来,在半个世纪的时间里,计算机的发展取得了令人瞩目的成就。

计算机从诞生到现在,已走过了60年的发展历程,在这期间,计算机的系统结构不断发生变化。人们根据计算机所采用的物理器件,将计算机的发展划分为几个阶段,下面就来具体介绍。

1.1.1  计算机发展简史

电子计算机的发展阶段通常以构成计算机的电子器件来划分,至今已经历了四代,目前正在向第五代过渡。每一个发展阶段在技术上都是一次新的突破,在性能上都是一次质的飞跃。

1.第一代(19461957年),电子管计算机

它是一台电子数字积分计算机,取名为ENIAC。这台计算机是个庞然大物,共用了18 000多个电子管、1500个继电器,重达30吨,占地170平方米,每小时耗电140千瓦,计算速度为每秒5000次加法运算。尽管它的功能远不如今天的计算机,但ENIAC作为计算机大家族的鼻祖,开辟了人类科学技术领域的先河,使信息处理技术进入了一个崭新的时代。其主要特征如下:

1)电子管元件,体积庞大、耗电量高、可靠性差、维护困难。

2)运算速度慢,一般为每秒钟1千次到1万次。

3)使用机器语言,没有系统软件。

4)采用磁鼓、小磁芯作为存储器,存储空间有限。

5)输入/输出设备简单,采用穿孔纸带或卡片。

6)主要用于科学计算。

2.第二代(19581964年),晶体管计算机

晶体管的发明给计算机技术带来了革命性的变化。第二代计算机采用的主要元件是晶体管,称为晶体管计算机。计算机软件有了较大发展,采用了监控程序,这是操作系统的雏形。第二代计算机有如下特征:

1)采用晶体管元件作为计算机的器件,体积大大缩小,可靠性增强,寿命延长。

2)运算速度加快,达到每秒几万次到几十万次。

3)提出了操作系统的概念,开始出现了汇编语言,产生了如FORTRANCOBOL等高级程序设计语言和批处理系统。

4)普遍采用磁芯作为内存储器,磁盘、磁带作为外存储器,容量大大提高。

5)计算机应用领域扩大,从军事研究、科学计算扩大到数据处理和实时过程控制等领域,并开始进入商业市场。

3.第三代(19651969年),中小规模集成电路计算机

20世纪60年代中期,随着半导体工艺的发展,已制造出了集成电路元件。集成电路可在几平方毫米的单晶硅片上集成十几个甚至上百个电子元件。计算机开始采用中小规模的集成电路元件,这一代计算机比晶体管计算机体积更小,耗电更少,功能更强,寿命更长,综合性能也得到了进一步提高。具有如下主要特征:

1)采用中小规模集成电路元件,体积进一步缩小,寿命更长。

2)内存储器使用半导体存储器,性能优越,运算速度加快,每秒可达几百万次。

3)外围设备开始出现多样化。

4)高级语言进一步发展。操作系统的出现,使计算机功能更强,提出了结构化程序的设计思想。

5)计算机应用范围扩大到企业管理和辅助设计等领域。

4.第四代(1971年至今),大规模集成电路计算机

随着20世纪70年代初集成电路制造技术的飞速发展,产生了大规模集成电路元件,使计算机进入了一个新的时代,即大规模和超大规模集成电路计算机时代。这一时期的计算机的体积、重量、功耗进一步减少,运算速度、存储容量、可靠性有了大幅度的提高。其主要特征如下:

1)采用大规模和超大规模集成电路逻辑元件,体积与第三代相比进一步缩小,可靠性更高,寿命更长。

2)运算速度加快,每秒可达几千万次到几十亿次。

3)系统软件和应用软件获得了巨大的发展,软件配置丰富,程序设计部分自动化。

4)计算机网络技术、多媒体技术、分布式处理技术有了很大的发展,微型计算机大量进入家庭,产品更新速度加快。

5)计算机在办公自动化、数据库管理、图像处理、语言识别和专家系统等各个领域得到应用,电子商务已开始进入到了家庭,计算机的发展进入到了一个新的历史时期。

1.1.2  计算机的特点

1.自动地运行程序

计算机能在程序控制下自动连续地高速运算。由于采用存储程序控制的方式,因此一旦输入编制好的程序,启动计算机后,就能自动地执行下去直至完成任务。这是计算机最突出的特点。

2.运算速度快

计算机能以极快的速度进行计算。现在普通的微型计算机每秒可执行几十万条指令,而巨型机则达到每秒几十亿次甚至几百亿次。随着计算机技术的发展,计算机的运算速度还在提高。例如天气预报,由于需要分析大量的气象资料数据,单靠手工完成计算是不可能的,而用巨型计算机只需十几分钟就可以完成。

3.运算精度高

电子计算机具有以往计算机无法比拟的计算精度,目前已达到小数点后上亿位的精度。

4.具有记忆和逻辑判断能力

人是有思维能力的。而思维能力本质上是一种逻辑判断能力。计算机借助于逻辑运算,可以进行逻辑判断,并根据判断结果自动地确定下一步该做什么。计算机的存储系统由内存和外存组成,具有存储和“记忆”大量信息的能力,现代计算机的内存容量已达到上百兆甚至几千兆,而外存也有惊人的容量。如今的计算机不仅具有运算能力,还具有逻辑判断能力,可以使用其进行诸如资料分类、情报检索等具有逻辑加工性质的工作。

5.可靠性高

随着微电子技术和计算机技术的发展,现代电子计算机连续无故障运行时间可达到几十万小时以上,具有极高的可靠性。例如,安装在宇宙飞船上的计算机可以连续几年时间可靠地运行。计算机应用在管理中也具有很高的可靠性,而人却很容易因疲劳而出错。另外,计算机对于不同的问题,只是执行的程序不同,因而具有很强的稳定性和通用性。用同一台计算机能解决各种问题,应用于不同的领域。

微型计算机除了具有上述特点外,还具有体积小、重量轻、耗电少、维护方便、可靠性高、易操作、功能强、使用灵活、价格便宜等特点。计算机还能代替人做许多复杂繁重的工作。

1.1.3  计算机的应用

进入20世纪90年代以来,计算机技术作为科技的先导技术之一得到了飞跃发展,超级并行计算机技术、高速网络技术、多媒体技术、人工智能技术等相互渗透,改变了人们使用计算机的方式,从而使计算机几乎渗透到人类生产和生活的各个领域,对工业和农业都有极其重要的影响。计算机的应用范围归纳起来主要有以下6个方面。

1.科学计算

亦称数值计算,是指用计算机完成科学研究和工程技术中所提出的数学问题。计算机作为一种计算工具,科学计算是它最早的应用领域,也是计算机最重要的应用之一。在科学技术和工程设计中存在着大量的各类数字计算,如求解几百乃至上千阶的线性方程组、大型矩阵运算等。这些问题广泛出现在导弹实验、卫星发射、灾情预测等领域,其特点是数据量大、计算工作复杂。在数学、物理、化学、天文等众多学科的科学研究中,经常遇到许多数学问题,这些问题用传统的计算工具是难以完成的,有时人工计算需要几个月、几年,而且不能保证计算准确,使用计算机则只需要几天、几小时甚至几分钟就可以精确地解决。所以,计算机是发展现代尖端科学技术必不可少的重要工具。

 

 

2.数据处理

数据处理又称信息处理,它是指信息的收集、分类、整理、加工、存储等一系列活动的总称。所谓信息是指可被人类感受的声音、图像、文字、符号、语言等。数据处理还可以在计算机上加工那些非科技工程方面的计算,管理和操纵任何形式的数据资料。其特点是要处理的原始数据量大,而运算比较简单,有大量的逻辑与判断运算。

据统计,目前在计算机应用中,数据处理所占的比重最大。其应用领域十分广泛,如人口统计、办公自动化、企业管理、邮政业务、机票订购、情报检索、图书管理、医疗诊断等。

3.计算机辅助设计

1)计算机辅助设计(Computer Aided DesignCAD)是指使用计算机的计算、逻辑判断等功能,帮助人们进行产品和工程设计。它能使设计过程自动化,设计合理化、科学化、标准化,大大缩短设计周期,以增强产品在市场上的竞争力。CAD技术已广泛应用于建筑工程设计、服装设计、机械制造设计、船舶设计等行业。使用CAD技术可以提高设计质量,缩短设计周期,提高设计自动化水平。

2)计算机辅助制造(Computer Aided ManufacturingCAM)是指利用计算机通过各种数值控制生产设备,完成产品的加工、装配、检测、包装等生产过程的技术。将CAD进一步集成形成了计算机集成制造系统CIMS,从而实现设计生产自动化。利用CAM可提高产品质量,降低成本和降低劳动强度。

3)计算机辅助教学(Computer Aided InstructionCAI)是指将教学内容、教学方法以及学生的学习情况等存储在计算机中,帮助学生轻松地学习所需要的知识。它在现代教育技术中起着相当重要的作用。

除了上述计算机辅助技术外,还有其他的辅助功能,如计算机辅助出版、计算机辅助管理、辅助绘制和辅助排版等。

4.过程控制

亦称实时控制,是用计算机及时采集数据,按最佳值迅速对控制对象进行自动控制或采用自动调节。利用计算机进行过程控制,不仅大大提高了控制的自动化水平,而且大大提高了控制的及时性和准确性。

过程控制的特点是及时收集并检测数据,按最佳值调节控制对象。在电力、机械制造、化工、冶金、交通等部门采用过程控制,可以提高劳动生产效率、产品质量、自动化水平和控制精确度,减少生产成本,减轻劳动强度。在军事上,可使用计算机实时控制导弹根据目标的移动情况修正飞行姿态,以准确击中目标。

5.人工智能

人工智能(Artificial IntelligenceAI)是用计算机模拟人类的智能活动,如判断、理解、学习、图像识别、问题求解等。它涉及到计算机科学、信息论、仿生学、神经学和心理学等诸多学科。在人工智能中,最具代表性、应用最成功的两个领域是专家系统和机    器人。

计算机专家系统是一个具有大量专门知识的计算机程序系统。它总结了某个领域的专家知识构建了知识库。根据这些知识,系统可以对输入的原始数据进行推理,做出判断和决策,以回答用户的咨询,这是人工智能的一个成功的例子。

机器人是人工智能技术的另一个重要应用。目前,世界上有许多机器人工作在各种恶劣环境,如高温、高辐射、剧毒等。机器人的应用前景非常广阔。现在有很多国家正在研制机器人。

6.计算机网络

把计算机的超级处理能力与通信技术结合起来就形成了计算机网络。人们熟悉的全球信息查询、邮件传送、电子商务等都是依靠计算机网络来实现的。计算机网络已进入到了千家万户,给人们的生活带来了极大的方便。

1.1.4  电子计算机的分类

一般情况下,电子计算机有多种分类方法,但在通常情况下采用3种分类标准。

1.按处理的对象分类

电子计算机按处理的对象分可分为电子模拟计算机、电子数字计算机和混合计算机。

电子模拟计算机所处理的电信号在时间上是连续的(称为模拟量),采用的是模拟技术。

电子数字计算机所处理的电信号在时间上是离散的(称为数字量),采用的是数字技术。计算机将信息数字化之后具有易保存、易表示、易计算、方便硬件实现等优点,所以数字计算机已成为信息处理的主流。通常所说的计算机都是指电子数字计算机。

混合计算机是将数字技术和模拟技术相结合的计算机。

2.按性能规模分类

按性能规模可分为巨型机、大型机、中型机、小型机、微型机和工作站。

1)巨型机

研究巨型机是现代科学技术,尤其是国防尖端技术发展的需要。巨型机的特点是运算速度快、存储容量大。目前世界上只有少数几个国家能生产巨型机。我国自主研发的银河I型亿次机和银河II型十亿次机都是巨型机。主要用于核武器、空间技术、大范围天气预报、石油勘探等领域。

2)大型机

大型机的特点表现在通用性强、具有很强的综合处理能力、性能覆盖面广等,主要应用在公司、银行、政府部门、社会管理机构和制造厂家等,通常人们称大型机为企业计算机。大型机在未来将被赋予更多的使命,如大型事务处理、企业内部的信息管理与安全保护、科学计算等。

3)中型机

中型机是介于大型机和小型机之间的一种机型。

4)小型机

小型机规模小,结构简单,设计周期短,便于及时采用先进工艺。这类机器由于可靠性高,对运行环境要求低,易于操作且便于维护。小型机符合部门性的要求,为中小型企事业单位所常用。具有规模较小、成本低、维护方便等优点。

 

5)微型计算机

微型机又称个人计算机(Personal ComputerPC),它是日常生活中使用最多、最普遍的计算机,具有价格低廉、性能强、体积小、功耗低等特点。现在微型计算机已进入到了千家万户,成为人们工作、生活的重要工具。

6)工作站

工作站是一种高档微机系统。它具有较高的运算速度,具有大小型机的多任务、多用户功能,且兼具微型机的操作便利和良好的人机界面。它可以连接到多种输入/输出设备。它具有易于联网、处理功能强等特点。其应用领域也已从最初的计算机辅助设计扩展到商业、金融、办公领域,并充当网络服务器的角色。

3.按功能和用途分类

按功能和用途可分为通用计算机和专用计算机。

通用计算机具有功能强、兼容性强、应用面广、操作方便等优点,通常使用的计算机都是通用计算机。

专用计算机一般功能单一,操作复杂,用于完成特定的工作任务。

1.2  计算机系统的组成

1.2.1  计算机系统概述

现在,计算机已发展成为一个庞大的家族,其中的每个成员,尽管在规模、性能、结构和应用等方面存在着很大的差别,但是它们的基本结构是相同的。计算机系统包括硬件系统和软件系统两大部分。硬件系统由中央处理器、内存储器、外存储器和输入/输出设备组成。

软件系统分为两大类,即计算机系统软件和应用软件。

计算机通过执行程序而运行,计算机工作时,软、硬件协同工作,两者缺一不可。计算机系统的组成框架如图1-1所示。

1.硬件系统概述

硬件系统是构成计算机的物理装置,是指在计算机中看得见、摸得着的有形实体。在计算机的发展史上做出杰出贡献的著名应用数学家冯·诺依曼(Von Neumann)与其他专家于1945年为改进ENIAC,提出了一个全新的存储程序的通用电子计算机方案。这个方案规定了新机器由5个部分组成:运算器、逻辑控制装置、存储器、输入和输出。并描述了这5个部分的职能和相互关系。这个方案与ENIAC相比,有两个重大改进:一是采用二进制;二是提出了“存储程序”的设计思想,即用记忆数据的同一装置存储执行运算的命令,使程序的执行可自动地从一条指令进入到下一条指令。这个概念被誉为计算机史上的一个里程碑。计算机的存储程序和程序控制原理被称为冯·诺依曼原理,按照上述原理设计制造的计算机称为冯·诺依曼机。


l   1-1  计算机的组成框架

概括起来,冯·诺依曼结构有3条重要的设计思想:

1)计算机应由运算器、控制器、存储器、输入设备和输出设备5大部分组成,每个部分有一定的功能。

2)以二进制的形式表示数据和指令。二进制是计算机的基本语言。

3)程序预先存入存储器中,使计算机在工作中能自动地从存储器中取出程序指令并加以执行。

硬件是计算机运行的物质基础,计算机的性能如运算速度、存储容量、计算和可靠性等,很大程度上取决于硬件的配置。

仅有硬件而没有任何软件支持的计算机称为裸机。在裸机上只能运行机器语言程序,使用很不方便,效率也低。所以早期只有少数专业人员才能使用计算机。

2.计算机的基本工作原理

1)计算机的指令系统

指令是能被计算机识别并执行的二进制代码,它规定了计算机能完成的某一种操作。

一条指令通常由如下两个部分组成:

1)操作码:它是指明该指令要完成的操作,如存数、取数等。操作码的位数决定了一个机器指令的条数。当使用定长度操作码格式时,若操作码位数为n,则指令条数可有2n条。

2)操作数:它指操作对象的内容或者所在的单元格地址。操作数在大多数情况下是地址码,地址码有03位。从地址代码得到的仅是数据所在的地址,可以是源操作数的存放地址,也可以是操作结果的存放地址。

2)计算机的工作原理

计算机的工作过程实际上是快速地执行指令的过程。当计算机在工作时,有两种信息在流动,一种是数据流,另一种是控制流。

数据流是指原始数据、中间结果、结果数据、源程序等。控制流是由控制器对指令进行分析、解释后向各部件发出的控制命令,用于指挥各部件协调地工作。

下面,以指令的执行过程来认识计算机的基本工作原理。计算机的指令执行过程分为如下几个步骤:

1)取指令。从内存储器中取出指令送到指令寄存器。

2)分析指令。对指令寄存器中存放的指令进行分析,由译码器对操作码进行译码,将指令的操作码转换成相应的控制电信号,并由地址码确定操作数的地址。

3)执行指令。它是由操作控制线路发出的完成该操作所需要的一系列控制信息,以完成该指令所需要的操作。

4)为执行下一条指令作准备。形成下一条指令的地址,指令计数器指向存放下一条指令的地址,最后控制单元将执行结果写入内存。

上述完成一条指令的执行过程叫做一个“机器周期”。指令的执行过程如图1-2       所示。

计算机在运行时,CPU从内存读取一条指令到CPU内执行,指令执行完,再从内存读取下一条指令到CPU执行。CPU不断地取指令,分析指令,执行指令,再取下一条指令,这就是程序的执行过程。

总之,计算机的工作就是执行程序,即自动连续地执行一系列指令,而程序开发人员的工作就是编制程序,使计算机不断地工作。

l   1-2  指令的执行过程

3.软件系统概述

软件系统是指使用计算机所运行的全部程序的总称。软件是计算机的灵魂,是发挥计算机功能的关键。有了软件,人们可以不必过多地去了解机器本身的结构与原理,可以方便灵活地使用计算机,从而使计算机有效地为人类工作、服务。

随着计算机应用的不断发展,计算机软件在不断积累和完善的过程中,形成了极为宝贵的软件资源。它在用户和计算机之间架起了桥梁,给用户的操作带来极大的方便。

在计算机的应用过程中,软件开发是个艰苦的脑力劳动过程,软件生产的自动化水平还很低。所以,许多国家投入大量人力从事软件开发工作。正是有了内容丰富、种类繁多的软件,使用户面对的不仅是一部实实在在的计算机,而且还包含许多软件的抽象的逻辑计算机(称之为虚拟机),这样,人们可以采用更加灵活、方便、有效的手段使用计算机。从这个意义上说,软件是用户与计算机的接口。

在计算机系统中,硬件和软件之间并没有一条明确的分界线。一般来说,任何一个由软件完成的操作也可以直接由硬件来实现,而任何一个由硬件执行的指令也能够用软件来完成。硬件和软件有一定的等价性,例如,如图像的解压,以前低档微机是用硬件解压,现在高档微机则用软件来实现。

软件和硬件之间的界线是经常变化的。要从价格、速度、可靠性等多种因素综合考虑,来确定哪些功能用硬件实现合适,哪些功能由软件实现合适。

1.2.2  硬件系统的组成

计算机的硬件由主机和外设组成,主机由CPU、内存储器、主板(总线系统)构成,外部设备由输入设备(如键盘、鼠标等)、外存储器(如光盘、硬盘、U盘等)、输出设备(如显示器、打印机等)组成。计算机硬件结构如图1-3所示。

l   1-3  计算机硬件的组成

微机与传统的计算机没有本质的区别,它也是由运算机、控制器、存储器、输入和输出设备等部件组成。不同之处是微机把运算器和控制器集成在一片芯片上,称之为CPU。下面以微机为例说明计算机各部分的作用。

1CPU

CPU是计算机的核心部件,它完成计算机的运算和控制功能。运算器又称算术逻辑部件(Arithmetical Logic UnitALU),主要功能是完成对数据的算术运算、逻辑运算和逻辑判断等操作。控制器(Control UnitCU)是整个计算机的指挥中心,根据事先给定的命令,发出各种控制信号,指挥计算机各部分工作。它的工作过程是负责从内存储器中取出指令并对指令进行分析与判断,并根据指令发出控制信号,使计算机的有关设备有条不紊地协调工作,在程序的作用下,保证计算机能自动、连续地工作。CPU外形如图1-4所示。

2.存储器

存储器(Memory)是计算机存储信息的“仓库”。所谓“信息”是指计算机系统所要处理的数据和程序。程序是一组指令的集合。存储器是有记忆能力的部件,用来存储程序和数据,存储器可分为两大类:内存储器和外存储器。内存储器简称内存,也叫随机存储器(RAM),这种存储器允许按任意指定地址的存储单元进行随机地读出或写入数据。由于数据是通过电信号写入存储器的,因此在计算机断电后,RAM中的信息就会随之丢失。内存条外形如图1-5所示,它的特点是存取速度快,可与CPU处理速度相匹配,但价格较贵,能存储的信息量较少。外存储器(简称外存)又称辅助存储器,主要用于保存暂时不用但又需长期保留的程序或数据。如软盘、硬盘、光盘等都叫外存储器。存放在外存中的程序必须调入内存才能运行,外存的存取速度相对来说较慢,但外存价格比较便宜,可保存的信息量大。常用的外存有磁盘、磁带、光盘等。

                  

l   1-4  CPU外形图                               1-5  内存条外形图

CPU和内存储器构成计算机主机。外存储器通过专门的输入/输出接口与主机相连。外存与其他的输入输出设备统称外部设备。如硬盘驱动器、软盘驱动器、打印机、键盘都属外部设备。

现代计算机中内存普遍采取半导体器件,按其工作方式不同,可分为动态随机存取器(DRAM)、静态随机存储器(SRAM)、只读存储器(ROM)。对存储器存入信息的操作称为写入(Write),从存储器取出信息的操作称为读出(Read)。执行读出操作后,原来存放的信息并不改变,只有执行了写入操作,写入的信息才会取代原先存入的内容。所以RAM中存放的信息可随机地读出或写入,通常用来存入用户输入的程序和数据等。计算机断电后,RAM中的内容随之丢失。DRAMSRAM两者都叫随机存储器,断电后信息会丢失,不同的是,DRAM存储的信息要不断刷新,而SRAM存储的信息不需要刷新。ROM中的信息只可读出而不能写入,通常用来存放一些固定不变的程序。计算机断电后,ROM中的内容保持不变,当计算机重新接通电源后,ROM中的内容仍可被读出。

为了便于对存储器内存放的信息进行管理,整个内存被划分成许多存储单元,每个存储单元都有一个编号,此编号称为地址(Address)。通常计算机按字节编址。地址与存储单元为一对一的关系,是存储单元的惟一标志。存储单元的地址、存储单元和存储单元的内容是3个不同的概念。地址相当于旅馆的房间编号,存储单元相当于旅馆的房间,存储单元的内容相当于房间中的旅客。在存储器中,CPU对存储器的读写操作都是通过地址来进行的。

外存储器目前使用得最多的是磁表面存储器和光存储器两大类。磁表面存储器是将磁性材料沉积在盘片基体上形成记录介质,并在磁头与记录介质的相对运动中存取信息。现代计算机系统中使用的磁表面仪器有磁盘和磁带两种。硬盘结构如图1-6所示。

用于计算机系统的光存储器主要是光盘(Optical Disk),现在通常称为CDCompact Disk)。光盘用光学方式读写信息,存储的信息量比磁盘存储器存储的信息量大得多,因此受到广大用户的青睐。所有外存的存储介质(盘片或磁带)都必须通过机电装置才能存取信息,这些机电装置称之为“驱动器”,如常用的软盘驱动器、硬盘驱动器和光盘驱动器等。目前外存储器的容量不断增大,从MB级到GB级,还有海量存储器等。

l   1-6  硬盘内部结构图

3.输入设备

输入设备是将外界的各种信息(如程序、数据、命令等)送入到计算机内部的设备。常用的输入设备有键盘、鼠标、扫描仪、条形码读入器等。

4.输出设备

输出设备是将计算机处理后的信息以人们能够识别的形式(如文字、图形、数值、声音等)进行显示和输出的设备。常用的输出设备有显示器、打印机、绘图仪等。

由于输入/输出设备大多是机电装置,有机械传动或物理移位等动作过程,相对而言,输入/输出设备是计算机系统中运转速度最慢的部件。

1.2.3  软件系统的组成

计算机软件由程序和有关的文档组成。程序由一系列的指令按一定的结构组成。文档是软件开发过程中建立的技术资料。程序是软件的主体,一般保存在存储介质中,如软盘、硬盘或光盘中,以便在计算机上使用。现在人们使用的计算机都配备了各式各样的软件,软件的功能越强,使用起来越方便。软件可分为两大类:一类是系统软件,另一类是应用软件,软件系统组成如图1-7所示。

1.系统软件

系统软件是管理、监控和维护计算机资源的软件,是用来扩大计算机的功能,提高计算机的工作效率,方便用户使用计算机的软件。系统软件是计算机正常运转所不可缺少的,是硬件与软件的接口。一般情况下系统软件分为4类:操作系统、语言处理系统、数据库管理系统和服务程序。

l   1-7  软件系统的组成

1)操作系统

系统软件的核心是操作系统。操作系统是由指挥与管理计算机系统运行的程序模板和数据结构组成的一种大型软件系统,其功能是管理计算机的硬件资源和软件资源,为用户提供高效、周到的服务。操作系统与硬件关系密切,是加在“裸机”上的第一层软件,其他绝大多数软件都是在操作系统的控制下运行的,人们也是在操作系统的支持下使用计算机的。操作系统是硬件与软件的接口。

常用的操作系统有UNIX/XenixMS-DOSWindows XPLinuxOS/2。下面简单介绍这些操作系统的发展过程和功能特点。

1DOS操作系统

DOS最初是为IBM PC开发的操作系统,因此它对硬件平台的要求很低。即使对于DOS 6.22这样的高版本,在640KB内存、60MB硬盘、80286微处理器的环境下,也能正常运行。DOS操作系统是单用户、单任务、字符界面和16位的操作系统。因此,它对于内存的管理仅局限于640KB的范围内。DOS3种不同的品牌,它们是Microsoft公司的MS-DOSIBM公司的PC-DOSNovell公司的DR-DOS。这3DOS都是兼容的,但也有一些区别。

2Windows操作系统

WindowsMicrosoft公司在198511月发布的第一代窗口式多任务系统,它使PC机开始进入了所谓的图形用户界面时代。在1995年,Microsoft公司推出了Windows 95操作系统;在1998年,Microsoft公司又推出了Windows 95的改进版Windows 98Windows 98的一个最大特点就是把Microsoft公司的Internet浏览器技术集成到了Windows 98里面,使得访问Internet资源就像访问本地硬盘一样方便,从而更好地满足了人们越来越多的访问Internet资源的需求。Windows 95Windows 98操作系统是一种单用户、多任务、32位的操作系统。

2000年到来之际,Microsoft公司又推出了Windows 2000版本。它不仅吸取了Windows 98Windows NT的许多精华之处,而且是Windows 98Windows NT的更新换代产品。此后,Windows将不会再有单用户和网络版之分,使用户能够在相同操作系统中,使用相同的、友好的操作系统界面处理不同的事务。Windows 2000是一个多用户、多任务操作系统。

现在,Microsoft公司又推出了Windows XPWindows XP采用了Windows 2000的源代码作为基础,使其有可靠的稳定性, 继续保持其安全性、可靠性的优点。对于网络时代,Windows XP更受人欢迎。

3UNIX系统

UNIX系统是1969年问世的,最初是在中小型计算机上运用。最早移植到80286微机上的UNIX系统,称为Xenix。现在Xenix已发展成十分成熟的系统,最新版本的XenixSCO UNIXSCO CDTUNIX系统的特点是短小精干、系统开销小、运行速度快。目前主要的版本是UNIX 3.2 V4.2以及ODT 3.0UNIX系统是一个受人青睐的系统。

UNIX系统是一个多用户系统,一般要求配有8MB以上的内存和较大容量的硬盘,对于高档微机也适用。

4OS/2系统

OS/2系统正是PS/2系列机开发的一个新型多任务操作系统。OS/2服了640KB主存的限制,具有多任务功能。1987IBM公司在激烈的市场竞争中推出了PS/2Personal System/2)个人计算机。PS/2系列计算机大幅度突破了现行PC机的体系,采用了与其他总线互不兼容的微通道总线MCA,并且IBM自行设计了该系统的大部分零部件,以防止其他公司的仿制。

OS/2的特点是采用图形界面,它本身是一个32位系统,不仅可以处理32OS/2系统的应用软件,也可以运行16DOS Windows软件。OS/2系统通常要求在4MB内存和100MB硬盘或更高的硬件环境下运行。如果硬件更高档,则系统运行就更加稳定。

2)语言处理系统

随着计算机技术的发展,计算机经历了由低级向高级发展的历程,不同风格的计算机语言不断出现,逐步形成了计算机语言体系。用计算机解决问题时,人们必须首先将解决该问题的方法和步骤按一定序列和规则用计算机语言描述出来,形成计算机程序,然后输入计算机,计算机就可按人们事先设定的步骤自动地执行。

语言处理系统包括机器语言、汇编语言和高级语言。这些语言处理程序除个别常驻在ROM中可独立运行外,都必须在操作系统支持下运行。

1)机器语言

计算机中的数据都是用二进制表示的,机器指令也是用一串由“0”和“1”不同组合的二进制代码表示的。机器语言是直接用机器指令作为语句与计算机交换信息的语言。

不同的机器,指令的编码不同,含有的指令条数也不同。因此,机器指令是面向机器的。指令的格式和含义是设计者规定的,一旦规定好之后,硬件逻辑电路就严格根据这些规定设计和制造,所以制造出的机器也只能识别这种二进制信息。

用机器语言编写的程序,计算机能识别,可直接运行,但程序容易出错。

2)汇编语言

汇编语言是由一组与机器语言指令一一对应的符号指令和简单语法组成的。汇编语言是一种符号语言,它将难以记忆和辨认的二进制指令码用有意义的英文单词(或缩写)作为辅助记符,使之比机器语言编程前进了一大步。例如“ADD AB”表示将AB相加后存入B中,它能与机器语言指令01001001直接对应。但汇编语言与机器语言的一一对应,仍需紧密依赖硬件,程序的可移植性差。

用汇编语言编写的程序称为汇编语言源程序。经汇编程序翻译后得到的机器语言程序称为目标程序。由于计算机只能识别二进制编码的机器语言,因此无法直接执行用汇编语言缩写的程序。汇编语言程序要由一种“翻译”程序来将它翻译为机器语言程序,这种翻译程序称为编译程序。汇编程序是系统软件的一部分。

3)高级语言

高级语言比较接近日常用语,对机器依赖性低,是适用于各种机器的计算机语言。用机器语言或汇编语言编程,因与计算机硬件直接相关,编程困难且通用性差。因此人们需创造出与具体的计算机指令无关,其表达方式更接近于被描述的问题、更易被人们掌握和书写的语言,这就是高级语言。

用高级语言编写的程序称为高级语言源程序,经语言处理程序翻译后得到的机器语言程序称为目标程序。高级语言程序必须翻译成机器语言程序才能执行,计算机无法直接执行用高级语言编写的程序。高级语言程序的翻译方式有两种:一种是编译方式,另一种是解释方式。相应的语言处理系统分别称为编译程序和解释程序。

在解释方式下,不生成目标程序,而是对源程序按语句执行的动态顺序进行逐句分析,边翻译边执行,直至程序结束。在编译方式下,源程序的执行分成两个阶段:编译阶段和运行阶段。通常,经过编译后生成的目标代码尚不能直接在操作系统下运行,还需经过连接阶段为程序分配内存后才能生成真正可运行的执行程序。

高级语言不再面向机器而是面向解决问题的过程以及面向现实世界的对象。大多数高级语言采用编译方式处理,因为编译方式执行速度快,而且一旦编译完成后,目标程序可以脱离编译程序独立存在反复使用。面向过程的高级语言种类很多,比较流行的高级语言有BasicPascalC语言等。某些适合于初学者的程序,如Basic语言及许多数据库语言则采用解释方式。

1980年左右开始提出的“面向对象(Object-Oriented)”概念是相对于“面向过程”的一次革命。专家们预测,面向对象的程序设计思想将成为今后程序设计语言发展的主流。如C++JavaVisual BasicVisual C等都是面向对象的程序设计语言。“面向对象”不仅作为一种语言,而且作为一种方法贯穿于软件设计的各个阶段。

3)数据库管理系统

数据库是将具有相互关联的数据以一定的组织方式存储起来,形成相关系列数据的集合。数据库管理系统就是在具体计算机上实现数据库技术的系统软件。随着计算机在信息管理领域中日益广泛深入的应用,产生和发展了数据库技术,随之出现了各种数据库管理系统(Data Base Management SystemDBMS)。

DBMS是计算机实现数据库技术的系统软件,它是用户和数据库之间的接口,是帮助用户建立、管理、维护和使用数据库进行数据管理的一个软件系统。

目前已有不少商品化的数据库管理系统软件,例如DBaseVisual FoxPro等都是在不同的系统中获得广泛应用的数据库管理系统。

4)服务程序

现代计算机系统提供多种服务程序,它们是面向用户的软件,可供用户共享,方便用户使用计算机和管理人员维护管理计算机。

常用的服务程序有编辑程序、连接装配程序、测试程序、诊断程序、调试程序等。

1)编辑程序(Editor):该程序能使用户通过简单的操作就可以建立、修改程序或其他文件,并提供方便的编辑环境。

2)连接装配程序(Linker):用该程序可以把几个分别编译的目标程序连接成一个目标程序,并且要与系统提供的库程序相连接,才得到一个可执行程序。

3)测试程序(Checking Program):该程序能检查出程序中的某些错误,方便用户对错误的排除。

4)诊断程序(Diagnostic Program):该程序能方便用户对计算机维护,检测计算机硬件故障并对故障定位。

5)调试程序(Debug):该程序能帮助用户在程序执行的状态下检查源程序的错误,并提供在程序中设置断点、单步跟踪等手段。

2.应用软件

应用软件是为了解决计算机各类问题而编写的程序。它分为应用软件包与用户程序。它是在硬件和系统软件的支持下,面向具体问题和具体用户的软件。随着计算机应用的日益广泛深入,各种应用软件的数量不断增加,质量日趋完善,使用更加方便灵活,通用性越来越强。有些软件已逐步标准化、模块化,形成了解决某类典型问题的较通用的软件,这些软件称为应用软件包(Package)。它们通常是由专业软件人员精心设计的,为广大用户提供方便、易学、易用的应用程序,帮助用户完成各种各样的工作。目前常用的软件包有字处理软件、表处理软件、会计电算化软件、绘图软件、运筹学软件包等。

1)用户程序

用户程序是用户为了解决特定的具体问题而开发的软件。充分利用计算机系统的种种现成的软件,在系统软件和应用软件包的支持下可以更加方便、有效地研制用户专用程序。如各种票务管理系统、事管理系统和财务管理系统等。这都属于用户程序。

2)应用软件包

应用软件包是为实现某种特殊功能,而精心设计、开发的结构严密的独立系统,是一套满足同类应用的许多用户所需要的软件。如Microsoft公司生产的Office 2003应用软件包,包含Word 2003(字处理)、Excel 2003(电子表格)、PowerPoint 2003(幻灯片)等,是实现办公自动化的很好的应用软件包。

系统软件和应用软件之间并不存在明显的界限。随着计算机技术的发展,各种各样的应用软件中有了许多共同的东西,把这些共同的部分抽取出来,形成一个通用软件,它就逐渐成为系统软件了。

1.3  微机的接口

1.3.1  微机接口概述

接口是CPUI/O设备的桥梁,它在CPUI/O设备之间起着信息转换和匹配的作用。也就是说,接口电路是处理CPU与外部设备之间数据交换的缓冲器,接口电路通过总线与CPU相连。由于CPU同外部设备的工作方式、工作速度、信号类型等都不相同,必须通过接口电路的变换作用,使两者匹配起来。

1.接口的作用

接口就是微处理器与外部设备的连接部件(电路),它是CPU与外部设备进行信息交换的中转站。例如,原始数据或源程序要通过接口从输入设备进入微机,而运算结果要通过接口向输出设备送出去,控制命令也是通过接口发出去的,这些来往的信息都是通过接口进行交换与传递。用户从键盘输入的信息只有通过计算机的处理才能在显示器、打印机中显示或打印。只有通过接口电路,软磁盘和硬盘才可以极大地扩充计算机的存储空间。

接口电路的作用,就是计算机以外的信息转换成与计算机匹配的信息,使计算机能够有效地传递和处理。

由于计算机的应用越来越广泛,要求与计算机接口的外围设备越来越多,信息的类型也越来越复杂。微机接口本身已不是一些逻辑电路的简单组合,而是采用硬件与软件相结合的方法,因而接口技术是硬件和软件的综合技术。

2.总线

总线是连接计算机CPU、主存储器、辅助存储器、各种输入/输出设备的一组物理信号线及其相关的控制电路,它是计算机中传输各部件信息的公共通道。

微型计算机系统大都采用总线结构,这种结构的特点是采用一组公共的信号线作为微机各部件之间的通信线。

各类外部设备和存储器,都是通过各自的接口电路连接到微机系统总线上的。因此,用户可以根据自己的需要,选用不同类型的外部设备配置相应的接口电路,把它们连接到系统总线上,从而构成不同用途、不同规模的系统。

微机系统的总线大致可分为如下几种。

1)地址总线(Address Bus

地址总线(AB)是微机用来传送地址的信号线。地址总线的数目决定了直接寻址的范围,例如16根地址线,可以构成216=65536个地址,可直接寻址64KB地址空间,24根地址线可直寻址16MB地址空间。

2)数据总线(Data Bus

数据总线(DB)是微机用来传送数据和代码的总线,一般为双向信号线,可以进行两个方向的数据传送。

数据总线可以从CPU送到内存或其他部件,也可以从内存或其他部件送到CPU。通常,数据总线的位数与微机的字长相等。例如,32位的CPU芯片,其数据总线也是32位。

3)控制总线(Control Bus

控制总线(CB)用来传送控制器发出的各种控制信号。其中包括用来实现命令、状态传送、中断请求、直接对存储器存取的控制,以及提供系统使用的时钟和复位信号等。

当前微型计算机系统普遍采用总线结构的连接方式,各部分都以同一形式排在总线上,结构简单,易于扩充。微型计算机的总线结构如图1-8所示。

l   1-8  微型计算机的总线结构

1.3.2  标准接口

微机中一般提供的接口有标准接口和扩展槽接口。标准接口操作系统一般都认识,插上有关的外部设备,马上可以使用,真正做到“即插即用”。在微机中标准接口一般有:键盘与显示器接口,并行接口,两个串行COM1COM2端口,TS/2接口和USB接口等。

1.键盘与显示器接口

在微型计算机系统中,键盘和显示器是必不可少的输入/输出设备。微机主板上提供键盘与显示器的标准接口。

2.并行接口

由于现在常用的微机系统均以并行方式处理数据,所以并行接口也是最常用的接口电路。将一个字符的n个数位用n条线同时传输的机制称为并行通信。例如一次同时传送8位、16位或32位,实现并行通信的接口就是并行接口。在实际应用中,凡在CPU与外设之间需要两位以上信息传送时,就要采用并行口。例如,打印机接口、A/DAnalog To Digit)、D/ADigit To Analog)转换器接口、开关量接口、控制设备接口等都是并行接口。

并行接口具有传输速度快、效率高等优点,适合于数据传输率要求较高而传输距离较近的场合。

3.串行接口

许多I/O设备与CPU交换信息,或计算机与计算机之间交换信息,是通过一对导线或通信通道来传送信息的。这时,每一次只传送一位信息,每一位都占据一个规定长度的时间间隔,这时数据一位一位按顺序传送的通信方式称为串行通信,实现串行通信的接口就是串行接口。

与并行通信相比,串行通信具有传输线少、成本低的特点,特别适合于远距离传送,其缺点是速度慢,若并行传送n位数据需要时间t,则串行传送需要的时间至少为nt

串行通信之所以被广泛采用,其中一个主要原因是可以使用现有的电话网进行信息传送,即主要增加调制解调器,远程通信就可以在电话线上进行。这不但降低了通信成本,而且免除了架设线路维护的繁杂工作。

微机主板上提供了COM1COM2两个现成的串行口。早期的鼠标、终端就是连接在这种串行口上,而目前流行的PS/2鼠标是连接在主板的PS/2接口上。

4USB接口

通用串行总线(USB)是一种新型接口标准。随着计算机应用的发展,外设越来越多,使得计算机本身所带的接口不够使用。USB可以简单地解决这一问题,计算机只需通过一个USB接口,即可串接多种外设(如数码相机、扫描仪等)。用户现在经常使用的优盘(或称闪盘)就是连接在USB接口上的。

1.3.3  扩展槽接口

微机中一般提供的接口有标准接口和扩展槽接口。扩展槽接口操作系统一般不认识,需要安装对应外设的驱动程序。若是同一种外部设备,在不同的操作系统中有时需要安装不同的驱动程序,该外设才能正常工作。在微机中扩展槽接口一般有:显示卡、声卡、网卡、Modem卡、视频卡、多功能卡等。

在主板上一般有多个扩充插槽,用于插入各种接口板(也称适配器)。适配器是为了驱动某种外设而设计的控制电路。通常,适配器插在主板的扩展槽内,通过总线与CPU相连。适配器一般做成电路板的形式,所以又称“插卡”、“扩展卡”或“适配卡”。

l   显示卡适配器(显示卡):显示卡是用于与显示器的连接,如VGA卡、SVGA卡、AGP卡等,还有GetForce2GetForce2 GTS显示卡。

l   存储器扩充卡:存储器扩充卡是用于扩充微机的存储容量。

l   串行通信适配器:它是用于与计算机通信有关的设备的连接,如绘图仪等。

l   多功能卡:为了简化系统接口,多功能卡是将多种功能的电路做在一块电路板上的复合插卡。多功能卡的品种很多,现在PC机上流行的多功能卡可以将软盘适配器电路,硬盘适配器电路,并行打印口,串行通信口COM1COM2,以及游戏口这五大电路集成为一个接口,称为“超级多功能卡”。

l   其他卡:例如声卡、Modem卡、网卡、视频卡等。

1.3.4  计算机外设简介

1.键盘

键盘是计算机最常用的输入设备之一。其作用是向计算机输入命令、数据和程序。它由一组按阵列方式排列在一起的按键开关组成,按下一个键,相当于接通一个开关电路,把该键的位置码通过接口电路送入计算机。

键盘根据按键的触点结构分为机械触点式键盘、电容式键盘和薄膜式键盘几种。键盘由导电橡胶和电路板的触点组成。

机械键盘的工作原理是:按键按下时,导电橡胶与触点接触,开关接通;当松开按键时,导电橡胶与触点分开,开关断开。

目前,微机上使用的键盘都是标准键盘(101键、103键等),键盘分为4个区:功能键区、标准打字键区、数字键区和编辑键区,如图1-9所示。

l   1-9  101键盘

键盘上各键符号及其组合所产生的字符和功能在不同的操作系统和软件支持下有所不同。在主键盘和小键盘上,大部分键面上,上下标有两个字符,这两个字符分别称为该键的上档符和下档符。主键盘第四排左右侧各有一个称为换档符的Shift键(或箭头符号),用来控制上档符与下档符的输入。在按下Shift键不放的同时按下有上档符的某键时,则输入的是该键的上档符,否则输入的是该键的下档符。字母的大小写亦可由Shift键控制,例如单按字母键A则输入小写字母a,同时按下Shift键和A键则输入的是大写字母A。小键盘上下档键由NumLock键控制。下面列出几个常用键的功能:

l   ←(Backspace——退格键,光标退回一格,即光标左移一个字符的位置,同时删除原光标左边位置上的字符,用于删除当前行中刚输入的字符。

l   Enter——回车键,不论光标处在当前行中什么位置,按此键后光标将移至下行行首。也表示结束一个数据或命令的输入。

l   Space——空格键,它位于键盘中下方的长条键,按下此键输入一个空格,光标右移一个字符的位置。

l   Ctrl——控制键,用于与其他键组合成各种复合控制键。

l   Alt——交替换档键,用于与其他键组合成特殊功能键或控制键。

l   Esc——强行退出键,按此键可强行退出程序。

l   Print Screen——屏幕复制键,在Windows系统下按此键可以将当前屏幕内容复制到剪贴板。

2.鼠标

鼠标是一种输入设备。由于它使用方便,几乎取得了和键盘同等重要的地位。常见的鼠标有机械式和光电式两种。机械式鼠标底部有一个小球,当手持鼠标在桌面上移动时,小球也相对转动,通过检测小球在两个垂直的方向上移动的距离,并将其转换为数字量送入计算机进行处理。光电式鼠标的底部装有光电管,当手持鼠标在特定的反射板上移动时,光源发出的光经反射板反射后被鼠标接收为移动信号,并送入计算机,从而控制屏幕光标的移动。机械式鼠标的移动精度一般不如光电式。根据鼠标的工作原理,鼠标分为机械鼠标、光电鼠标、光学机械鼠标、轨迹球和无线鼠标等。鼠标有3个按键或两个按键,各按键的功能可以由所使用的软件来定义,在不同的软件中使用鼠标,其按键的作用可能不相同。一般情况下最左边的按键定义为拾取。使用鼠标时,通常是先移动鼠标,使屏幕上的光标固定在某一位置上,然后再通过鼠标上的按键来确定所选项目或完成指定的功能。

3.打印机

打印机是各种计算机的主要输出设备。它能将计算机的信息以单色和彩色字符、汉字、表格、图像等形式打印在纸上。

打印机的种类很多,目前常见的有点阵击打式和点阵非击打式两种。非击打式又分为喷墨打印机和激光打印机。针式打印机由打印头、字车机构、色带机构、输纸机构和控制电路组成。打印头由若干根钢针构成,通过它们击打色带,从而在同步旋转的打印纸上打印出点阵字符。在汉字的输入中一般用24针打印机。

喷墨式打印机是通过向打印机的相应位置喷射墨水点来实现图像和文字的输出。其特点是噪声低、速度快。激光打印机是利用电子成像技术进行打印。当调制激光束在硒鼓下沿轴向进行扫描时,按点阵组字的原理,使鼓面感光,构成负电荷阴影。当鼓面经过带正电荷的墨粉时,感光部分就吸附上墨粉,然后将墨粉转印到纸上,纸上的墨粉经加热熔化形成永久性的字符和图形。它的特点是速度快、无噪声、分辨率高。喷墨式打印机和激光打印机的输出质量都比较高。

4.扫描仪

扫描仪是计算机的图像输入设备。随着性能的不断提高和价格的大幅度降低,越来越多地使用于广告设计、出版印刷、网页设计等领域。按感光模式分可分为滚筒式扫描仪(CIS)和平板扫描仪(CCD)。扫描仪是利用光学扫描原理从纸介质上“读出”照片、文字或图形,把信息送入计算机进行分析处理。

平板式扫描仪的工作原理是:将原图放置在一块很干净的有机玻璃平板上,原图不动,而光源系统通过一个传动机构水平移动,发射出的光线照射在原图上,以反射或透射后,由接收系统接收并生成模拟信号,通过模数转换器(ADC)转换成数字信号后,直接传送至计算机,由后者进行相应的处理,完成扫描过程。

5.数码相机

数码相机是一种能够进行拍摄,并通过内部处理把拍摄到的景物转换成以数字格式存放图像的特殊照相机。数码相机可以直接连接到计算机、电视机或者打印机上。在一定条件下,数码相机还可以直接连接到移动式电话机或者手持PC机上。数码相机的种类很多,大致可分为3种:普通数码相机、高档数码相机和专业数码相机。比之传统相机,数码相机的特点是:基于胶片的传统相机的分辨率是无穷的,数码相机的分辨率是有限的,传统相机的使用成本较高,需要购买胶卷、冲洗,而数码相机不需要这些,它采用完全不同的成像技术,数码相机能够生成计算机直接处理的图像。

6MODEM

MODEMModulator(调制器)与Demodulator(解调器)的简称,中文称为调制解调器,也有人根据MODEM的谐音,亲昵地称为“猫”。MODEM由发送、接收、控制、接口、操纵面板及电源等部分组成。数据终端设备以二进制串行信号形式提供发送的数据,经接口转换为内部逻辑电平送入发送部分,经调制电路调制成线路要求的信号后向线路发送。接收部分接收来自线路的信号,经滤波、解调、电平转换后还原成数字信号送入终端设备,计算机内的信息是由“0和“1组成的数字信号,而在电话线上传递的却只能是模拟电信号。于是,当两台计算机要通过电话线进行数据传输时,就需要一个设备负责数模的转换,这个数模转换器就是MODEM

MODEM根据外形和安装方式可分为4种,即外置式MODEM、内置式MODEMPCMCIA插卡式MODEM和机架式MODEM

1.4  信息在计算机中的存储形式

人类用文字、图表、数字表达和记录着世界上各种各样的信息,便于人们用来处理和交流。现在可以把这些信息都输入到计算机中,由计算机来保存和处理。前面提到,当代冯·诺依曼型计算机都使用二进制来表示数据,本节所要讨论的就是用二进制来表示这些  数据。

1.4.1  计算机中的数据

经过收集、整理和组织起来的数据,能成为有用的信息。数据是指能够输入计算机并被计算机处理的数字、字母和符号的集合。平常所看到的景象和听到的事实,都可以用数据来描述。可以说,只要计算机能够接受的信息都可叫数据。

1.计算机中数据的单位

计算机数据的表示经常用到以下几个概念。在计算机内部,数据都是以二进制的形式存储和运算的。

1)位

二进制数据中的一个位(bit)简写为b,音译为比特,是计算机存储数据的最小单位。一个二进制位只能表示01两种状态,要表示更多的信息,就要把多个位组合成一个整体,一般以8位二进制组成一个基本单位。

2)字节

字节是计算机数据处理的最基本单位,并主要以字节为单位解释信息。字节(Byte)简记为B,规定一个字节为8位,即1B=8bit。每个字节由8个二进制位组成。一般情况下,一个ASCII码占用一个字节,一个汉字国际码占用两个字节。

3)字

一个字通常由一个或若干个字节组成。字(Word)是计算机进行数据处理时,一次存取、加工和传送的数据长度。由于字长是计算机一次所能处理信息的实际位数,所以,它决定了计算机数据处理的速度,是衡量计算机性能的一个重要指标,字长越长,性能越好。

 

4)数据的换算关系

1Byte=8bit1KB=1024B1MB=1024KB1GB=1024MB

计算机型号不同,其字长是不同的,常用的字长有8163264位。一般情况下,IBM PC/XT的字长为8位,80286微机字长为16位,80386/80486微机字长为32位,Pentium系列微机字长为64位。

例如,一台微机,内存为256MB,软盘容量为1.44MB,硬盘容量为80GB,则它实际的存储字节数分别为:

内存容量=256×1024×1024B=268435456B

软盘容量=1.44×1024×1024B=1509949.44B

硬盘容量=80×1024×1024×1024B=85899345920B

如何表示正负和大小,在计算机中采用什么计数制,是学习计算机的一个重要问题。数据是计算机处理的对象,在计算机内部,各种信息都必须通过数字化编码后才能进行存储和处理。

由于技术原因,计算机内部一律采用二进制,而人们在编程中经常使用十进制,有时为了方便还采用八进制和十六进制。理解不同计数制及其相互转换是非常重要的。

2.进位计数制

在计算机中,二进制并不符合人们的习惯,但是计算机内部却采用二进制表示信息,其主要原因有如下4点:

1)电路简单

在计算机中,若采用十进制,则要求处理10种电路状态,相对于两种状态的电路来说,是很复杂的。而用二进制表示,则逻辑电路的通、断只有两个状态。例如:开关的接通与断开,电平的高与低等。这两种状态正好用二进制的01来表示。

2)工作可靠

在计算机中,用两个状态代表两个数据,数字传输和处理方便、简单、不容易出错,因而电路更加可靠。

3)简化运算

在计算机中,二进制运算法则很简单。例如:相加减的速度快,求积规则有3个,求和规则也只有3个。

4)逻辑性强

二进制只有两个数码,正好代表逻辑代数中的“真”与“假”,而计算机工作原理是建立在逻辑运算基础上的,逻辑代数是逻辑运算的理论依据。用二进制计算具有很强的逻   辑性。

1.4.2  计算机中常用的几种计数制

用若干数位(由数码表示)的组合去表示一个数,各个数位之间是什么关系,即逢“几”进位,这就是进位计数制的问题。也就是数制问题。数制,即进位计数制,是人们利用数字符号按进位原则进行数据大小计算的方法。通常是以十进制来进行计算的。另外,还有二进制、八进制和十六进制等。

在计算机的数制中,要掌握3个概念,即数码、基数和位权。下面简单地介绍这3个概念。

数码:一个数制中表示基本数值大小的不同数字符号。例如,八进制有8个数码:01234567

基数:一个数值所使用数码的个数。例如,八进制的基数为8,二进制的基数为2

位权:一个数值中某一位上的1所表示数值的大小。例如,八进制的1231的位权是642的位权是83的位权是1

1.十进制(Decimal notation

十进制的特点如下:

1)有10个数码:0123456789

2)基数:10

3)逢十进一(加法运算),借一当十(减法运算)。

4)按权展开式。对于任意一个n位整数和m位小数的十进制数D,均可按权展      开为:

D=Dn-1·10n-1Dn-2·10n-2+…+D1·101D 0·10 0D -1·10 1+…+D –m·10 –m

例:将十进制数456.24写成按权展开式形式为:

456.24=4×10 25×1016×1002×10-14×10-2

2.二进制(Binary notation

二进制有如下特点:

1)有两个数码:01

2)基数:2

3)逢二进一(加法运算),借一当二(减法运算)。

4)按权展开式。对于任意一个n位整数和m位小数的二进制数D,均可按权展      开为:

D=Bn-1·2n-1Bn-2·2n-2B1·21B0·20B-1·2–1B–m·2-m

例:把(11001.1012写成展开式,它表示的十进制数为:

1×2 41×2 30×220×211×201×2-10×2-21×2-3=25.62510

3.八进制(Octal notation

八进制的特点如下:

1)有8个数码:01234567

2)基数:8

3)逢八进一(加法运算),借一当八(减法运算)。

4)按权展开式。对于任意一个n位整数和m位小数的八进制数D,均可按权展      开为:

D=On-1·8n-1O1·81O0·80O-1·8 1O–m·8-m

例:(53468相当于十进制数为:

5×833×824×816×80=(279010

4.十六进制(Hexadecimal notation

十六进制有如下特点:

1)有16个数码:0123456789ABCDEF

2)基数:16

3)逢十六进一(加法运算),借一当十六(减法运算)。

4)按权展开式。对于任意一n位整数和m位小数的十六进制数D,均可按权展     开为:

D=Hn-1·16n-1H1·161H 0·16 0H -1·16 1H –m·16 -m

16个数码中,ABCDEF6个数码分别代表十进制的101112131415,这是国际上通用的表示法。

例:十六进制数(4C4D16代表的十进制数为:

4×163C×16 24×161D×160=1953310

二进制数与其他数之间的对应关系如表1-1所示。

1-1  几种常用进制之间的对照关系

   

   

   

   

0

0000

0

0

1

0001

1

1

2

0010

2

2

3

0011

3

3

4

0100

4

4

5

0101

5

5

6

0110

6

6

7

0111

7

7

8

1000

10

8

9

1001

11

9

10

1010

12

A

11

1011

13

B

12

1100

14

C

13

1101

15

D

14

1110

16

E

15

1111

17

F

1.4.3  常用计数制之间的转换

不同数进制之间进行转换应遵循转换原则。转换原则是:两个有理数如果相等,则有理数的整数部分和分数部分一定分别相等。也就是说,若转换前两数相等,转换后仍必须相等,数制的转换要遵循一定的规律。

1.二、八、十六进制数转换为十进制数

1)二进制数转换成十进制数

将二进制数转换成十进制数,只要将二进制数用计数制通用形式表示出来,计算出结果,便得到相应的十进制数。

例:(1101100.1112=1×261×251×231×221×2-11×2-21×2-3

=6432840.50.250.125

 =108.87510

2)八进制数转换为十进制数

八进制数→十进制数:以8为基数按权展开并相加。

例:把(652.348转换成十进制。

解:(652.348=6×825×812×803×8-14×8-2

=3844020.3750.0625

=426.437510

3)十六进制数转换为十进制数

十六进制数→十进制数:以16为基数按权展开并相加。

例:将(19BC.816转换成十进制数。

解:(19BC.816=1×1639×162B×161C×1608×16-1

 =40962304176120.5

 =6588.510

2.十进制转换为二进制数

1)整数部分的转换

整数部分的转换采用的是除2取余法。其转换原则是:将该十进制数除以2,得到一个商和余数(K0),再将商除以2,又得到一个新商和余数(K1),如此反复,得到的商是0时得到余数(Kn-1),然后将所得到的各位余数,以最后余数为最高位,最初余数为最低位依次排列,即Kn-1Kn-2K1K0,这就是该十进制数对应的二进制数。这种方法又称为“倒    序法”。

例:将(12610转换成二进制数。

结果为:(12610=(11111102

2)小数部分的转换

小数部分的转换采用乘2取整法。其转换原则是:将十进制数的小数乘以2,取乘积中的整数部分作为相应二进制数小数点后最高位K-1,反复乘2,逐次得到K-2K-3、…、K-m,直到乘积的小数部分为01的位数达到精确度要求为止。然后把每次乘积的整数部分由上而下依次排列起来(K-1K-2K-m),即是所求的二进制数。这种方法又称为“顺序法”。

例:将十进制数(0.53410转换成相应的二进制数。

结果为:(0.53410=(0.100012

例:将(50.2510转换成二进制数。

分析:对于这种既有整数又有小数部分的十进制数,可将其整数和小数分别转换成二进制数,然后再把两者连接起来即可。

因为(5010=1100102,(0.2510=0.012

所以(50.2510=(110010.012

3.八进制与二进制数之间的转换

1)八进制转换为二进制数

八进制数转换成二进制数所使用的转换原则是“一位拆三位”,即把一位八进制数对应于三位二进制数,然后按顺序连接即可。

例:将(64.548转换为二进制数。

   6      4     .      5       4

                   

  110    100    .      101     100

结果为:(64.548=(110100.1011002

2)二进制数转换成八进制数

二进制数转换成八进制数可概括为“三位并一位”,即从小数点开始向左右两边以每三位为一组,不足三位时补0,然后每组改成等值的一位八进制数即可。

例:将(110111.110112转换成八进制数。

   110    111    .     110     110

                 

    6      7     .      6       6

结果为:(110111.110112=(67.668

4.二进制数与十六进制数的相互转换

1)二进制数转换成十六进制数

二进制数转换成十六进制数的转换原则是“四位并一位”,即以小数点为界,整数部分从右向左每4位为一组,若最后一组不足4位,则在最高位前面添0补足4位,然后从左边第一组起,将每组中的二进制数按权数相加得到对应的十六进制数,并依次写出即可;小数部分从左向右每4位为一组,最后一组不足4位时,尾部用0补足4位,然后按顺序写出每组二进制数对应的十六进制数。

例:将(1111101100.00011012转换成十六进制数。

   0011  1110    1100   .   0001   1010

                         

     3     E       C    .    1       A

结果为:(1111101100.00011012=(3EC.1A16

2)十六进制数转换成二进制数

十六进制数转换成二进制数的转换原则是“一位拆四位”,即把1位十六进制数写成对应的4位二进制数,然后按顺序连接即可。

例:将(C41.BA716转换为二进制数。

    C       4        1        .        B        A       7

                                           

    1100   0100     0001       .       1011    1010    0111

结果为:(C41.BA716=(110001000001.1011101001112

在程序设计中,为了区分不同进制,常在数字后加一英文字母作为后缀以示区别。

l   十进制数,在数字后面加字母D或不加字母也可以,如6659D6659

l   二进制数,在数字后面加字母B,如1101101B

l   八进制数,在数字后面加字母O,如1275O

l   十六进制数,在数字后面加字母H,如CFE7BH

1.4.4  二进制数的运算

二进制数的运算包括算术运算和逻辑运算。

1.二进制数的算术运算

二进制数的算术运算包括加法、减法、乘法和除法运算。

1)二进制数的加法运算

二进制数的加法运算法则是:000011011110(向高位进位)。

例:求(101101.100012+(1011.110012的值。

解:      1  0  1  1  0  1  .  1  0  0  0   1

              1  0  1  1  .  1  1  0  0   1

          1  1  1  0  0  1  .  0  1  0  1   1

结果为:(101101.100012+(1011.110012 =111001.010112

总结:从以上加法的过程可知,当两个二进制数相加时,每一位是3个数相加,对本位则是把被加数、加数和来自低位的进位相加(进位可能是0,也可能是1)。

2)二进制数的减法运算

二进制数的减法运算法则是:00110101011(借1当二)。

例:求(110000.112-(001011.012的值。

解:        1   1  0  0  0   0  .  1  1

          0   0  1  0  1   1  .  0  1

            1   0  0  1  0   1  .  1  0

结果为:(110000.112-(001011.012=(100101.102

总结:从以上运算过程可知,当两数相减时,有的位会发生不够减的情况,要向相邻的高位借12。所以,在做减法时,除了每位相减外,还要考虑借位情况,实际上每位有3个数参加运算。

3)二进制数的乘法运算

二进制数的乘法运算法则是:0×000×11×001×11

例:求(10102×(10112的值。

解:           1   0    1    0

        ×     1   0    1    1

               1   0    1    0

           1   0   1    0

        0  0   0   0

 1   0  1   0

    1   1  0   1   1    1    0

结果为:(10102×(10112=(11011102

总结:由以上运算过程可知,当两数相乘时,每个部分积都取决于乘数。乘数的相应位为1时,该次的部分积等于被乘数;为0时,部分积为0。每次的部分积依次左移一位,将各部分积累起来,就得到了最终结果。

4)二进制数的除法运算

二进制数除法运算规则是:0÷000÷101÷0无意义),1÷11

例:求(1111012÷(11002的值。

解:             1  0  1

    1100 1  1  1  1  0  1

         1  1  0  0

                 1  1  0  1

               1  1  0  0

                          1

结果为:商为101,余数为1

总结:在计算机内部,二进制的加法是基本运算,利用加法可以实现二进制数的减法、乘法和除法运算。在计算机的运算过程中,应用了“补码”进行运算。

2.二进制数的逻辑运算

在计算机中,除了能表示正负、大小的“数量数”以及相应的加、减、乘、除等基本算术运算外,还能表示事物逻辑判断,即“真”、“假”、“是”、“非”等“逻辑数”的运算。能表示这种数的变量称为逻辑变量。在逻辑运算中,都是用“1”或“0”来表示“真”或“假”,由此可见,逻辑运算是以二进制数为基础的。

计算机的逻辑运算区别于算术运算的主要特点是:逻辑运算是按位进行的,位与位之间不像加减运算那么有进位或借位的关系。

逻辑运算主要包括的运算有:逻辑加法(又称“或”运算)、逻辑乘法(又称“与”运算)和逻辑“非”运算。此外,还有“异或”运算。

1)逻辑与运算(乘法运算)

逻辑与运算常用符号“×”、“∧”或“&”来表示。如果ABC为逻辑变量,则AB的逻辑与可表示成A×B=CAB=C或A&B=C,读作“AB等于C”。一位二进制数的逻辑与运算规则如表1-2所示。

1-2  与运算规则

A

B

ABC

0

0

0

0

1

0

1

0

0

1

1

1

 

由表1-2可知,逻辑与运算表示只有当参与运算的逻辑变量都取值为1时,其逻辑乘积才等于1,即一假必假,两真才真。

这种逻辑与运算在实际生活中有许多应用,例如,计算机的电源要想接通,必须把实验室的电源总闸、USP电源开关以及计算机机箱的电源开关都接通才行。这些开关是串在一起的,它们按照“与”逻辑接通。为了书写方便,逻辑与运算的符号可以略去不写(在不致混淆的情况下),即A×B=AB=AB

例:设A1110011B1010101,求AB

解:

1   1  1  0  0  1  1

   1   0  1  0  1  0  1

     1   0  1  0  0  0  1

结果为:AB1010001

2)逻辑或运算(加法运算)

逻辑或运算通常用符号“+”或“ ”来表示。如果ABC为逻辑变量,则AB的逻辑或可表示成AB=CA B=C,读作“AB等于C”。其运算规则如表1-3      所示。


1-3  或运算规则

A

B

A V BC

0

0

0

0

1

1

1

0

1

1

1

1

 

由表1-3可知,逻辑或运算是:在给定的逻辑变量中,AB只要有一个为1,其逻辑或的值为1;只有当两者都为0,逻辑或才为0。即一真必真,两假才假。

这种逻辑或运算在实际生活中有许多应用,例如,房间里有一盏灯,装了两个开关,这两个开关是并联的。显然,任何一个开关接通或两个开关同时接通,电灯都会亮。

例:设A=11001110B=10011011,求A B

解:      1  1  0  0  1  1  1  0

        1  0  0  1  1  0  1  1

          1  1  0  1  1  1  1  1

结果为:A B11011111

3)逻辑非运算(逻辑否定、逻辑求反)

A为逻辑变量,则A的逻辑非运算记作 。逻辑非运算的规则为:如果不是0,则惟一的可能性就是1;反之亦然。逻辑非运算的真值表如表1-4所示。

1-4  非运算规则

A

0

1

1

0

例如,室内的电灯,不是亮,就是灭,只有两种可能性。

例:设A111011001B=110111101,求

解: 000100110 001000010

4)逻辑异或运算(半加运算)

逻辑异或运算符为“ ”。如果ABC为逻辑变量,则A和B的逻辑异或可表示成A BC,读作“A异或B等于C”。逻辑异或的运算规则如表1-5所示。

1-5  逻辑异或的运算规则

A

B

A BC

0

0

0

0

1

1

1

0

1

1

1

0

由表1-5可知,在给定的两个逻辑变量中,只有两个逻辑变量取值相同,异或运算的结果就为0;只有相异时,结果才为1。即一样时为0,不一样才为1

例:设A11010011B10110111,求A B

解:         1  1  0  1  0  0  1  1

           1  0  1  1  0  1  1  1

             0  1  1  0  0  1  0  0

结果为:A B01100100

当两个变量之间进行逻辑运算时,只在对应位之间按上述规律进行逻辑运算,不同位之间没有任何关系,当然,也就不存在算术运算中的进位或借位问题。

1.5  计算机中数据的表示

1.5.1  数值数据的表示

1.机器数和真值

在计算机中,使用的二进制只有01两种值。一个数在计算机中的表示形式,称为机器数。机器数所对应的原来的数值称为真值,由于采用二进制必须把符号数字化,通常是用机器数的最高位作为符号位,仅用来表示数符。若该位为0,则表示正数;若该位为1,则表示负数。机器数也有不同的表示法,常用的有3种:原码、补码和反码。

机器数的表示法:用机器数的最高位代表符号(若为0,则代表正数;若为1,则代表负数),其数值位为真值的绝对值。假设用8位二进制数表示一个数,如图1-10所示。

l   1-10  8位二进制表示一位数

在数的表示中,机器数与真值的区别是:真值带符号如-0011100,机器数不带数符,最高位为符号位,如10011100,其中最高位1代表符号位。

例如:真值数为-0111001,其对应的机器数为10111001,其中最高位为1,表示该数为负数。

2.原码、反码、补码的表示

在计算机中,符号位和数值位都是用01表示,在对机器数进行处理时,必须考虑到符号位的处理,这种考虑的方法就是对符号和数值的编码方法。常见的编码方法有原码、反码和补码3种方法。下面分别讨论这3种方法的使用。

1)原码的表示

一个数X的原码表示为:符号位用0表示正,用1表示负;数值部分为X的绝对值的二进制形式。记X的原码表示为[X]原。

例如:当X=+1100001时,则[X]原=01100001

X=-1110101时,则[X]原=11110101

在原码中,0有两种表示方式:

X=+0000000时,[X]原=00000000

X=-0000000时,[X]原=10000000

2)反码的表示

一个数X的反码表示方法为:若X为正数,则其反码和原码相同;若X为负数,在原码的基础上,符号位保持不变,数值位各位取反。记X的反码表示为[X]反。

例如:当X=+1100001时,则[X]原=01100001[X]反=01100001

X=-1100001时,则[X]原=11100001[X]反=10011110

在反码表示中,0也有两种表示形式:

X=+0时,则[X]反=00000000

X=-0时,则[X]反=10000000

3)补码的表示

一个数X的补码表示方式为:当X为正数时,则X的补码与X的原码相同;当X为负数时,则X的补码,其符号位与原码相同,其数值位取反加1。记X的补码表示为[X] 补。

例如:当X=+1110001[X]原=01110001[X]补=01110001

 

X=-1110001[X]原=11110001[X]补=10001111

3BCD

在计算机中,用户和计算机的输入和输出之间要进行十进制和二进制的转换,这项工作由计算机本身完成。在计算机中采用了输入/输出转换的二~十进制编码,即BCD码。

在二~十进制的转换中,采用4位二进制表示1位十进制的编码方法。最常用的是8421BCD码。“8421”的含义是指用4位二进制数从左到右每位对应的权是8421BCD码和十进制之间的对应关系如表1-6所示。

1-6  BCD码和十进制数的对照表

十进制数

0

1

2

3

4

5

6

7

8

9

BCD

0000

0001

0010

0011

0100

0101

0110

0111

1000

1001

 

例如:十进制数765BCD码表示的二进制数为:0111  0110  0101

1.5.2  非数值数据的表示

计算机中使用的数据有数值型数据和非数值型数据两大类。数值数据用于表示数量意义;非数值数据又称为符号数据,包括字母和符号等。计算机除处理数值信息外,大量处理的是字符信息。例如,将用高级语言编写的程序输入到计算机时,人与计算机通信时所用的语言就不再是一种纯数字语言而是字符语言。由于计算机中只能存储二进制数,这就需要对字符进行编码,建立字符数据与二进制串之间的对应关系,以便于计算机识别、存储和处理。这里介绍两种符号数据的表示。

1.字符数据的表示

计算机中用得最多的符号数据是字符,它是用户和计算机之间的桥梁。用户使用计算机的输入设备,输入键盘上的字符键向计算机内输入命令和数据,计算机把处理后的结果也以字符的形式输出到屏幕或打印机等输出设备上。对于字符的编码方案有很多种,但使用最广泛的是ASCII码(American Standard Code for Information Interchange)。ASCII码开始时是美国国家信息交换标准字符码,后来被采纳为一种国际通用的信息交换标准代码。

ASCII码由0910个数符,52个大、小写英文字母,32个符号及34个计算机通用控制符组成,共有128个元素。因为ASCII码总共为128个元素,故用二进制编码表示需用7位。任意一个元素由7位二进制数表示,从00000001111111共有128种编码,可用来表示128个不同的字符。ASCII码表的查表方式是:先查列(高三位),后查行(低四位),然后按从左到右的书写顺序完成,如BASCII码为1000010。在ASCII码进行存放时,由于它的编码是7位,因1个字节(8位)是计算机中常用单位,故仍以1字节来存放1ASCII字符,每个字节中多余的最高位取0。如表1-7所示为7ASCII字符编码表。

1-7  ASCII字符编码表

     d6d5d4

d3d2d1d0

000

001

010

011

100

101

110

111

0000

NUL

DEL

SP

0

@

P

P

0001

SOH

DC1

1

A

Q

a

q

0010

STX

DC2

2

B

R

b

r

0011

EXT

DC3

3

C

S

c

s

0100

EOT

DC4

4

D

T

d

t

0101

ENQ

NAK

5

E

U

e

u

0110

ACK

SYN

&

6

F

V

f

v

0111

BEL

ETB

7

G

W

g

w

1000

BS

CAN

(

8

H

X

h

x

1001

HT

EM

)

9

I

Y

i

y

1010

LF

SUB

*

:

J

Z

j

z

1011

VT

ESC

+

;

K

[

k

{

1100

FF

FS

<

 

L

\

l

1101

CR

GS

-

=

M

]

m

}

1110

SD

RS

>

 

N

n

1111

SI

US

O

_

o

DEL

 

由表1-7可知,ASCII码字符可分为两大类:

1)打印字符:即从键盘输入并显示的95个字符,如大小写英文字母各26个,数字0910个数字字符的高3位编码(D6D5D4)为011,低4位为00001001。当去掉高3位时,低4位正好是二进制形式的09

2)不可打印字符:共33个,其编码值为03100000000011111)和(1111111),不对应任何可印刷字符。不可打印字符通常为控制符,用于计算机通信中的通信控制或对设备的功能控制。如编码值为1271111111),是删除控制DEL码,它用于删除光标之后的字符。

ASCII码字符的码值可用7位二进制代码或2位十六进制来表示。例如字母DASCII码值为(1000100284H,数字4的码值为(0110100234H等。

2.汉字的存储与编码

英语文字是拼音文字,所有文字均由26个字母拼组而成,所以使用一个字节表示一个字符足够了。但汉字是象形文字,汉字的计算机处理技术比英文字符复杂得多,一般用两个字节表示一个汉字。由于汉字有一万多个,常用的也有六千多个,所以编码采用两字节的低7位共14个二进制位来表示。一般汉字的编码方案要解决4种编码问题。

1)汉字交换码

汉字交换码主要是用作汉字信息交换的。以国家标准局1980年颁布的《信息交换用汉字编码字符集基本集》(代号为GB2312-80)规定的汉字交换码作为国家标准汉字编码,简称国标码。

国标GB 2312-80规定,所有的国际汉字和符号组成一个94×94的矩阵。在该矩阵中,每一行称为一个“区”,每一列称为一个“位”,这样就形成了94个区号(0194)和94个位号(0194)的汉字字符集。国标码中有6763个汉字和628个其他基本图形字符,共计7445个字符。其中规定一级汉字3755个,二级汉字3008个,图形符号682个。一个汉字所在的区号与位号简单地组合在一起就构成了该汉字的“区位码”。在汉字区位码中,高两位为区号,低两位为位号。因此,区位码与汉字或图形符号之间是一一对应的。一个汉字由两个字节代码表示。

2)汉字机内码

汉字机内码又称内码或汉字存储码。该编码的作用是统一了各种不同的汉字输入码在计算机内的表示。汉字机内码是计算机内部存储、处理的代码。计算机既要处理汉字,又要处理英文,所以必须能区别汉字字符和英文字符。英文字符的机内码是最高位为08ASCII码。为了区分,把国标码每个字节的最高位由0改为1,其余位不变的编码作为汉字字符的机内码。

一个汉字用两个字节的内码表示,计算机显示一个汉字的过程首先是根据其内码找到该汉字字库中的地址,然后将该汉字的点阵字型在屏幕上输出。

汉字的输入码是多种多样的,同一个汉字如果采用的编码方案不同,则输入码就有可能不一样,但汉字的机内码是一样的。有专用的计算机内部存储汉字使用的汉字内码,用以将输入时使用的多种汉字输入码统一转换成汉字机内码进行存储,以方便机内的汉字处理。在汉字输入时,根据输入码通过计算机或查找输入码表完成输入码到机内码的转换。如汉字国际码(H)+8080H)=汉字机内码(H)。

3)汉字输入码

汉字输入码也叫外码,是为了通过键盘字符把汉字输入计算机而设计的一种编码。

英文输入时,想输入什么字符便按什么键,输入码和内码是一致的。而汉字输入规则不同,可能要按几个键才能输入一个汉字。汉字和键盘字符组合的对应方式称为汉字输入编码方案。汉字外码是针对不同汉字输入法而言的,通过键盘按某种输入法进行汉字输入时,人与计算机进行信息交换所用的编码称为“汉字外码”。对于同一汉字而言,输入法不同,其外码也是不同的。例如,对于汉字“啊”,在区位码输入法中的外码是1601,在拼音输入中的外码是a,而在五笔字型输入法中的外码是KBSK。汉字的输入码种类繁多,大致有4种类型,即音码、形码、数字码和音形码。

4)汉字字形码

汉字在显示和打印输出时,是以汉字字形信息表示的,即以点阵的方式形成汉字图形。汉字字形码是指确定一个汉字字形点阵的代码(汉字字形码)。一般采用点阵字形表示字符。

目前普遍使用的汉字字型码是用点阵方式表示的,称为“点阵字模码”。所谓“点阵字模码”,就是将汉字像图像一样置于网状方格上,每格是存储器中的一个位,16×16点阵是在纵向16点、横向16点的网状方格上写一个汉字,有笔画的格对应1,无笔画的格对应0。这种用点阵形式存储的汉字字型信息的集合称为汉字字模库,简称汉字字库。

通常汉字显示使用16×16点阵,而汉字打印可选用24×24点阵、32×32点阵、64×64点阵等。汉字字形点阵中的每个点对应一个二进制位,1字节又等于8个二进制位,所以16×16点阵字形的字要使用32个字节(16×16÷8字节=32字节)存储,64×64点阵的字形要使用512个字节。

16×16点阵字库中的每一个汉字以32个字节存放,存储一、二级汉字及符号共8836个,需要282.5KB磁盘空间。而用户的文档假定有10万个汉字,却只需要200KB的磁盘空间,这是因为用户文档中存储的只是每个汉字(符号)在汉字库中的地址(内码)。


这篇文章对你多有用?

用户评语

添加评语
当前还没有评语.


.: .: .: .: .:
[ 登陆 ]
北京护航科技有限公司 2006

Novots Technologies Limited