微型计算机技术第一章微型计算机基础_第1页
微型计算机技术第一章微型计算机基础_第2页
微型计算机技术第一章微型计算机基础_第3页
微型计算机技术第一章微型计算机基础_第4页
微型计算机技术第一章微型计算机基础_第5页
已阅读5页,还剩119页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

相。识。第/章微型行窜机基砒

第/章微型行事机基砒

L1微型计算机概述

1.2微型计算机系统

L3计算机中的数制及其转换

1・4计算机中数与字符的编码

习题1

相。识。第/章微型材算机基砒

L1微型计算机概述

1.1.1计算机的发展

20世纪40年代,无线电技术和无线电工业的发展为电子计算

机的研制准备了物质基础,1943年〜1946年,美国宾夕法尼亚大

学研缶U的ENIAC(ElectronicNumericalIntegratorAndComputer,

电子数字积分器和计算机)是世界上第一台电子计算机。当时,

第二次世界大战正在进行,为了完成新武器在弹道问题中许多复

杂的计算,在美国陆军部的资助下开展了这项研究工作,ENIAC

计算机于1945年年底完成,1946年2月正式交付使用。

相。识。第/章微型材算机基砒

因为ENIAC计算机是最早问世的一台电子数字计算机,所

以人们认为它是现代计算机的始祖。ENIAC计算机共用18000多

个电子管,1500个继电器,重达30吨,占地170平方米,耗电

140kW,每秒钟能进行5000次加法计算,领导研制的是宾夕法

尼亚大学的莫克利(J.W.Mauchly)和埃克特(J.P.Eckert)。该计算机

存在两个主要缺点,一是存储容量太小,只能存20个字长为10

位的十进制数;二是用线路连接的方法来编排程序,因此每次

解题都要依靠人工改接连线,准备时间大大超过实际计算时间。

相。识。第/章微型材算机基砒

在研制ENIAC计算机的同时,冯•诺依曼(VonNeumann)与莫

尔小组合作研制了EDVAC计算机,该计算机采用了存储程序方

案,其后开发的计算机都采用这种方式,称为冯・诺依曼计算机。

冯・诺依曼计算机具有如下基本特点:

(1)计算机由运算器、控制器、存储器、输入设备和输出设

备五部分组成。

(2)采用存储程序的方式,程序和数据放在同一个存储器中,

指令和数据一样可以送到运算器中运算,即由指令组成的程序

是可以修改的。

相。识。第/章微型材算机基砒

(3)数据以二进制码表示。

(4)指令由操作码和地址码组成。

(5)指令在存储器中按执行顺序存放,由指令计数器(即程序

计数器PC)指明要执行的指令所在的单元地址,一般按顺序递增,

也可按运算结果或外界条件而改变。

(6)机器以运算器为中心,输入/输出设备与存储器间的数据

传送都通过运算器。

冯・诺依曼计算机开辟了“存储程序自动控制”现代计算机

的先河,目前的计算机基本是基于冯・诺依曼计算机的模型和原

理研制的。

川识,占第7章微型必算机基砒

根据电子计算机所采用的逻辑器件的发展,一般把电子计

算机的发展分成四个阶段,习惯上称为四代,相邻两代计算机

之间在时间上有一定的重叠。

第一代:电子管计算机时代(从1946年第一台计算机研制成

功到20世纪50年代后期)。这一时期的计算机采用电子管作为基

本器件。在这一时期,主要为军事与国防尖端技术的需要而研

制计算机,其研究成果逐步扩展到民用,并转为工业产品,形

成了计算机工业。

相。识。第/章微型材算机基砒

第二代:晶体管计算机时代(从20世纪50年代中期到60年代

后期)。这一时期计算机的主要器件逐步由电子管改为晶体管,

因而缩小了体积,降低了功耗,提高了速度和可靠性,而且价

格不断下降。后来又采用了磁心存储器,使速度得到进一步提

高。不仅使计算机在军事与尖端技术上的应用范围进一步扩大,

而且在气象、工程设计、数据处理以及其他科学研究等领域内

也应用起来。在这一时期开始重视计算机产品的继承性,形成

了适应一定应用范围的计算机“族”,这是系列化思想的萌芽,

从而缩短了新机器的研制周期,降低了生产成本,实现了程序

兼容,方便了新机器的使用。

川识,占第7章微型必算机基砒

第三代:集成电路计算机时代(从20世纪60年代中期到70年

代前期)。这一时期的计算机采用集成电路作为基本器件,因此

功耗、体积、价格等进一步下降,而速度及可靠性相应地提高,

使计算机的应用范围进一步扩大。正是由于集成电路成本的迅

速下降,产生了成本低而功能不是太强的小型计算机供应市场,

占领了许多数据处理的应用领域。

相。识。第/章微型材算机基砒

第四代:大规模集成电路计算机时代。20世纪70年代初,

半导体存储器问世,迅速取代了磁芯存储器,并不断向大容量、

高速度发展。此后,存储器芯片集成度大体上每三年翻两番

(1971年每片1Kb,到1984年达到每片256Kb,1992年16Mb动

态随机存储器芯片上市),这就是著名的摩尔定律,从1971年内

含2300个晶体管的Intel4004芯片问世,至I」1999年包含了750万个

晶体管的PentiumII处理器,都证实了摩尔定律的正确性。后来

摩尔定律用来描述微处理器的工作速度,在一定成本下,大体

上也是每18个月翻一番。专家预计,芯片性能呈指数增长将在

今后几年放缓,有关人士认为摩尔定律能再适用10年左右。

川识,占第7章微型必算机基砒

自从1981年IBM公司推出了第一代16位微型计算机(IBM-

PC)以来,微机的生产和应用得到了迅速的发展。目前,以

Pentium(奔腾)微处理器为标志的微型计算机已广泛地应用于生

产、经营、管理和办公自动化等各个方面。

■相力“识第/章微型行鬻机基砒

1.1.2微型计算机的特点

微型计算机与其他类型计算机相比具有如下特点:

(1)功能强。微型计算机的设计参考了其他类型计算机的优

点,它的运算速度快、计算精度高,具有记忆功能和逻辑判断能

力,而且每种微处理器都配有一整套支持相应微型计算机工作的

软件。硬件和软件的配合相辅相成,使微型计算机的功能大大增

强,适合各行各业不同的应用。

(2)可靠性高。由于在微处理器及其配套系列芯片上可做出

几千、几万甚至几千万个元件,这就减少了大量的焊点、连线、

接插件等不可靠因素,使可靠性大大增加。据某些资料估计,芯

片集成度增加100倍,系统的可靠性也可增加100倍。目前,微处

理器及其系列射的平均无故障町则达107〜108小时

相。识。第/章微型材算机基砒

(3)价格低。微处理器及其配套系列芯片采用集成电路工艺,

集成度高,适合工厂大批量生产,因此,产品造价十分低廉。

据报道认为,集成度增加100倍其价格也可降为同功能分立元件

的百分之一。很显然,低价格对于微型计算机的推广和普及是

极为有利的。

(4)适应性强。在微型计算机中,硬件扩展是很方便的,而

且系统的软件是很容易改变的。因此,在相同的配置情况下,

只要对硬件和软件稍作某些变动,就能适应不同用户的要求。

相。识。第/章微型材算机基砒电

(5)周期短,见效快。微处理器制造厂家除生产微处器芯片

外,还生产各种配套的支持芯片,同时也提供许多有关的支持

软件,这就为构成一个微型计算机应用系统创造了十分有利的

条件。从而可节省研制时间,缩短研制周期,使研制的系统很

快地投入运行,取得明显的经济效益。

(6)体积小,重量轻,耗电省。微处理器及其配套支持芯片

的尺寸均较小,最大也不过几百平方毫米。另外,近几年在微

型计算机中还大量地采用了ASIC(大规模集成专用芯片)和

GAL(通用可编程门阵列)器件,使得微型计算机的体积明显缩小。

川识,占第7章微型必算机基砒

(7)维护方便。现在用微处器及其系列产品所构成的微型计

算机已逐渐趋于标准化、模块化和系列化,从硬件结构到软件

配置都作了较全面的考虑。一方面,微机一般都可用自检诊断

及测试发现系统故障;另一方面,发现故障以后,排除故障也

比较容易。例如,迅速更换标准化模块或芯片。

II川"识第7章微型材算机基砒I

1.1.3微型计算机的指标

1.字长

微机的字长是指微处理器内部一次可以并行处理二进制代

码的位数。它与微处理器内部寄存器以及CPU内部数据总线宽

度是一致的,字长越长,所表示的数据精度就越高。在完成同

样精度的运算时,字长较长的微处理器比字长较短的微处理器

运算速度快。大多数微处理器内部的数据总线与微处理器的外

部数据引脚宽度是相同的,但也有少数例外,如Intel8088微处理

器内部数据总线为16位,而芯片外部数据引脚只有8位,

Intel80386sx微处理器内部为32位数据总线,而外部数据引脚为

16位。对这类芯片仍然以它们的内部数据总线宽度为字长,但

把它们称作“准XX位”芯片。例如,8088被称为“准16位”

微处理器芯片,80386sx被称作“准32位”微处理器芯片。

川识,占第7章微型必算机基砒

2.存储容量

存储容量是衡量微机内部存储器能存储二进制信息量大小的

一个技术指标。通常把8位二进制代码称为一个字节(Byte),16

位二进制代码称为一个字(Word),把32位二进制代码称为一个双

字(DWord)。存储器容量一般以字节为最基本的计量单位。一个

字节记为1B,1024个字节记为1KB,1024KB记为1MB,1024

MBt己为1GB,而1024GBt己为1TB。

相。识。第/章微型材算机基砒

3.指令执行时间

指令执行时间是指计算机执行一条指令所需的平均时间,

其长短反映了计算机执行一条指令运行速度的快慢。它一方面

决定于微处理器工作时钟频率,另一方面又取决于计算机指令

系统的设计、CPU的体系结构等。微处理器工作时钟频率指标

可表示为多少兆赫兹,即MHz;微处理器指令执行速度指标则

表示为每秒运行多少百万条指令(MIPS,MillionsofInstructions

PerSecond)o

相。识。第/章微型材算机基砒

4.系统总线

系统总线是连接微机系统各功能部件的公共数据通道,其

性能直接关系到微机系统的整体性能。系统总线的性能主要表

现为它所支持的数据传送位数和总线工作时钟频率。数据传送

位数越宽,总线工作时钟频率越高,则系统总线的信息吞吐率

就越高,微机系统的性能就越强。目前,微机系统采用了多种

系统总线标准,如ISA、EISA、VESA、PCI等。

川识,占第7章微型必算机基砒

5.外部设备配置

在微机系统中,外部设备占据了重要的地位。计算机信息输

入、输出、存储都必须由外设来完成,微机系统一般都配置了

显示器、打印机、网卡等外设。微机系统所配置的外设,其速

度快慢、容量大小、分辨率高低等技术指标都影响着微机系统

的整体性能。

川识,占第7章微型必算机基砒

6.系统软件配置

系统软件也是计算机系统不可缺少的组成部分。微机硬件

系统仅是一个裸机,它本身并不能运行,若要运行,必须有基

本的系统软件支持,如DOS、Windows等操作系统。系统软件

配置是否齐全,软件功能的强弱,是否支持多任务、多用户操

作等都是微机硬件系统性能能否得到充分发挥的重要因素。

川识,占第7章微型必算机基砒

LL4微型计算机的分类

微型计算机的品种繁多,系列各异,最常见的有以下几种

分类方法。

1.按微处理器的位数分类

按微处理器的位数分为4位机、8位机、16位机、32位机、

64位机,即分别以4位、8位、16位、32位、64位处理器为核心

组成的微型计算机。

2.按微型计算机的用途分类

按微型计算机的用途分为通用机和专用机两类。

川识,占第7章微型必算机基砒

3.按微型计算机的档次分类

按微型计算机的档次可分为低档机、中档机和高档机。计

算机的核心部件是它的微处理器,也可以根据所使用的微处理

器档次将微型计算机分为8086机、286机、386机、486机、

586(Pentium)机、PentiumII机、PentiumlH机和Pentium4机等。

相。识。第/章微型材算机基砒*

4.按微型计算机的组装形式和系统规模分类

按微型计算机的组装形式和系统规模可分为单片机、单板

机、个人计算机。

单片机是将微型计算机的主要部件:微处理器、存储器、

输入/输出接口等集成在一片大规模集成电路芯片上形成的微型

计算机,它具有完整的微型计算机功能。单片机具有体积小、

可靠性高、成本低等特点,广泛应用于智能仪器、仪表、家用

电器、工业控制等领域。

1和关5识第7章微型必算机基砒

单板机是将微处理器、存储器、输入/输出接口、简单外设

等部件安装在一块印刷电路板上形成的微型计算机。单板机具

有结构紧凑、使用简单、成本低等特点,常常应用于工业控制

和实验教学等领域。

个人计算机也就是人们常说的PC机,它是将一块主机板(包

括微处理器、内存储器、输入/输出接口等芯片)和若干接口卡、

外部存储器、电源等部件组装在一个机箱内,并配置显示器、

键盘、鼠标等外部设备和系统软件构成的微型计算机系统。PC

机具有功能强、配置灵活、软件丰富、使用方便等特点,是最

普及、应用最广泛的微型计算机。

i相关“识,第7率微型材算机基砒L

1.2微型计算机系统

1.2.1微型计算机

微型计算机是以微处理器芯片为核心,配以存储器、I/O接

口、输入/输出设备以及相应的辅助电路而构成的裸机,简称微

机。从结构上讲,它以微处理器为中心,通过总线把I/O设备、

存储器等连接成一个整体。根据总线使用方法的不同,微型计

算机可以有不同的组织方式。图1.1给出了微型计算机组成框图。

川识;第/章微型行嗜机基砒

存储器

运算器临

接接

1111出

控制器设

微处理器

主机一

输入/输出芯片

图1.1计算机硬件系统组成

相。识。第/章微型材算机基砒

1.运算器

运算器是对数据信息进行加工处理的部件,它主要由算术

逻辑运算单元(ALU)组成,在控制器的指挥下可以完成各种算术

运算、逻辑运算和其他操作。

2.控制器

控制器是统一指挥和有效控制计算机各部件协调工作的关键

部件,是微型计算机的指挥控制神经中枢。它从存储器中逐条

地取出指令、分析指令,并向各部件发出相应的控制信号,使

它们一步步地执行指令所规定的操作。另一方面,它又接收运

算器、存储器以及输入/输出设备的反馈信息,以确定程序的执

相。识。第/章微型材算机基砒皆

3.存储器

存储器是存放程序和数据的部件,它是一个记忆装置,是

计算机能够实现存储程序工作原理的基础,存储器分为主存储

器和辅助存储器。主存储器又称内存,通常由半导体存储器组

成。它可由CPU直接访问,存取速度较快,但容量不大,一般

用来存放当前运行的程序和数据。辅助存储器又称为外存,通

常由磁盘与光盘组成。它由CPU通过I/O接口进行访问,存取速

度较慢,但容量大,一般用来存放历史数据与软件。

相。识。第/章微型材算机基砒

4.输入/输出设备

输入/输出(I/O)设备又称外设,通过I/O接口与CPU相连,它

是计算机与外部世界联系的桥梁。

(1)输入设备用于把数字、字符、图形、图像和声音等转换

成计算机能识别和接受的信息表示方式,如电信号、二进制编

码等,然后把它们放入存储器中。典型的输入设备有键盘、鼠

标、扫描仪、光学字符识别设备(OCR)、模/数(A/D)转换装置以

及其他声像输入设备等。

川识,占第7章微型必算机基砒

(2)输出设备把计算机处理信息的结果转换成人们习惯接受

的形式(如字符、曲线、图像、表格和声音等)送出,或变换成

与其他设备相匹配的信号形式输出。常见的输出设备有显示器、

打印机、绘图仪和数/模(D/A)转换装置等。

计算机硬件的五大部件是通过总线连接起来的,所谓总线

是一组公共信号线,它能分时地发送和接收各部件的信息。

相。识。第/章微型材算机基砒

1.2.2微型计算机系统

微型计算机的硬件系统称为裸机,裸机不能做任何事情。裸

机配上系统软件,加上电源和合适的外部设备,就构成了一个可

以使用的微型计算机系统。这里的系统软件是指用来实现对计算

机资源进行管理,便于人们使用计算机而配置的软件。由此可见,

微型计算机系统由作为裸机的硬件系统和用来管理计算机资源的

软件系统两大部分组成。其中,硬件是构成计算机系统的物理实

体或物理装置。例如,微处理器、存储器、主板、机箱、键盘、

显示器和打印机等。软件是指为运行、维护、管理和应用计算机

所编制的所有程序的集合。软件一般分为系统软件和应用软件两

大类,如图1.2所示。

相。识。第/章微型行窜机基砒智

「单用户操作系统

多用户操作系统

「操作系统1网络操作系统

「汇编程序

语言处理程序1解释程序

「系统软件《编译程序

数据库管理系统

诊断与维护程序

软件《调试程序

I工具软件<

编辑程序

I装配链接程序

软件包

I应用软件

用户程序

图L2软件系统的分类

1和关5识第7章微型必算机基砒

系统软件是指管理、控制和维护计算机的各种资源,以及扩

大计算机功能和方便用户使用计算机的各种程序集合。它是构成

计算机系统必备的软件,通常又分为操作系统、语言处理程序、

工具软件和数据库管理系统四类。应用软件是为了解决各种实际

问题而设计的计算机程序,通常由计算机用户或专门的软件公司

开发。

现代计算机硬件和软件之间的分界线并不十分明显,软件与

硬件在逻辑上有着某种等价的意义。在一个计算机系统中,硬件

与软件之间的功能分配及相互配合是设计的关键性问题之一,通

常需要综合考虑价格、速度、存储容量、灵活性、适应性以及可

靠性等诸多因素。

相。识。第/章微型材算机基砒

1.3计算机中的数制及其转换

计算机内部的信息分为两大类:控制信息和数据信息。控

制信息是一系列的控制命令,用于指挥计算机如何操作;数据

信息是计算机操作的对象,一般又可分为数值数据和非数值数

据。数值数据用于表示数量的大小,它有确定的数值;非数值

数据没有确定的数值,它主要包括字符、汉字、逻辑数据等等。

对计算机而言,不论是控制命令还是数据信息,它们都要

用“0”和”:r两个基本符号(即基2码)来编码表示,这是由于以

下三个原因:

相。识。第/章微型材算机基砒

(1)基2码在物理上最容易实现。例如,用“1”和“0”表示高、

低两个电位,或表示脉冲的有无,还可表示脉冲的正、负极性

等等,可靠性都较高。

(2)基2码用来表示二进制数,其编码、加减运算规则简单。

(3)基2码的两个符号“1”和“0”正好与逻辑数据“真”与

“假”相对应,为计算机实现逻辑运算带来了方便。

因此,不论是什么信息,在输入计算机内部时,都必须用

基2码编码表示,以方便存储、传送和处理。

川识,占第7章微型必算机基砒

1.3.1数与数制

进位计数制是一种计数的方法。在日常生活中,人们使用

各种进位计数制。例如,六十进制(1小时=60分,1分=60秒),十

二进制(1英尺=12英寸,1年=12月)等。但最熟悉和最常用的是

十进制计数。

相。识。第/章微型材算机基砒

如前所述,在计算机中使用的是二进制计数。另外,为便

于人们阅读及书写,常常还要用到八进制计数及十六进制计数

来表示二进制计数。十进制数的特点是“逢十进一,借一当

十”,需要用到的数字符号为10个,分别是0〜9。二进制数的

特点是“逢二进一,借一当二”,需要用到的数字符号为2个,

分别是0、1。八进制数的特点是“逢八进一,借一当八”,需

要用到的数字符号为8个,分别是0〜7。十六进制数的特点是

“逢十六进一,借一当十六”,需要用到的数字符号为16个,

分别是0〜9、A-Fo

相。识。第/章微型材算机基砒

任意一个十进制数可以用位权表示,位权就是某个固定位置

上的计数单位。在十进制数中,个位的位权为100,十位的位权

为101,百位的位权为102,千位的位权为103,而在小数点后第

一位上的位权为10—1,小数点后第二位的位权为10—2等等。因

此,如果有十进制数234.13,则百位上的2表示两个100,十位上

的3表示三个10,个位上的4表示四个1,小数点后第一位上的1表

示一个0.1,小数点后第二位上的3表示三个0.01,用位权表示为

(234.13)io=2X102+3X10-4X100+1XW1+3X10-2

川识,占第7章微型必算机基砒

同理,任意一个二进制数、八进制数和十六进制数也可用

位权表示。例如:

(101.11)2=1X22+0X21+1X20+lX2—1+1*2-2

(124.36)8=1X82+2X81+4X80+3X8-"6X8-2

(ACB5)i6=AX16"CX160+BX16T+5X16-2

根据上述概念,可推广出表示任意进制数的通式:

n/n-m\

N±>N/x.ir=±VN/x.ir+>N/x.ir

i=-m\i=0z=-1J

相。识。第/章微型行窜机基砒

n—m

其中为整数部分,Z%/为小数部分,「为基数。每一

z=0

项的数字可用0〜r—1数字中的一个数字来表示。

相。识。第/章微型材算机基砒

1.3.2不同数制之间的转换

1.十进制数与二进制数之间的转换

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

方法:除2取余法。

具体做法:将十进制数除以2,得到一个商和一个余数;再

将商除以2,又得到一个商和一个余数;继续这一过程,直到商

等于0为止。每次得到的余数(必定是0或1)就是对应的二进制数

的各位数字。

注意:第一次得到的余数为二进制数的最低位,最后得到

的余数为二进制数的最高亿

川识,占第7章微型必算机基砒

【例1-1】将十进制数97转换成二进制数。其过程如下:

297余数为1,即A0=l

2|4夕余数为0,即A[=0

2124余数为0,即八2=0

2|12余数为0,即八3二0

2|6

余数为0,BPA4=O

2|3余数为1,即A§=1

2|1余数为1,即A$=l

0余数为0,结束

最后结果为

(97)1。=仆6A5A4A3A2A1AO)2=(11OOOO1)2

相。识。第/章微型材算机基砒

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

方法:乘2取整法。

具体做法:用2乘以十进制小数,得到整数和小数部分;再

用2乘以小数部分,又得到一个整数和一个小数部分;继续这

一过程,直到余下的小数部分为0或满足精度要求为止;最后

将每次得到的整数部分(必定是0或1)按先后顺序从左到右排列,

即得到所对应的二进制小数。

I4扪文打第/章微型新尊机基砒

【例1-2】将十进制小数0.6875转换成二进制小数。其过程如下:

0.6875

X2

1.3750整数部分为1,即A_]=l

0.3750余下的小数部分

X2

0.7500整数部分为0,即A_2=O

0.7500余下的小数部分

X2

1.5000整数部分为1,即A_3=I

0.5000余下的小数部分

X2

1.0000整数部分为1,即A_4=I

0.0000余下的小数部分为0,结£

川识,占第7章微型必算机基砒

最后结果为

(0.6875)10=(0.A_1A_2A_3A_4)2=(0.1011)2

为了将一个既有整数又有小数部分的十进制数转换成二进

制数,可以将其整数部分和小数部分分别进行转换,然后再组

合起来。例如:

(97)1O=(11OOOO1)2

(O.6875)IO=(O.1011)2

由此可得:

(97.6875)10=(1100001.1011)2

相。识。第/章微型行窜机基砒

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

方法:按位权展开后相加。

【例1-3】将二进制数ni.n转换成十进制数。其过程如下:

(ni.n)2=lX22+1义2】+1X20+lX2—1+1X2—2

=4+2+1+0.5+0.25

=(7.75)10

相。识。第/章微型材算机基砒

2.十进制与八进制之间的转换

1)十进制整数转换成八进制整数

方法:除8取余法。

具体做法:将十进制数除以8,得到一个商和一个余数;再

将商除以8,又得到一个商和一个余数;继续这一过程,直到商

等于0为止。每次得到的余数(必定是小于8的数)就是对应八进制

数的各位数字。第一次得到的余数为八进制数的最低位,最后一

次得到的余数为八进制数的最高位。

II相美皿第/章微型必落机基砒*

【例1-4】将十进制数97转换成八进制数。其过程如下:

8197余数为1,即A0=l

8|12余数为4,即A]=4

8|1余数为1,即A2=l

商为0余数为0,结束

最后结果为

(97)1。=(A2A]A0)8=(14〉

相。识。第/章微型材算机基砒

2)十进制小数转换成八进制小数

方法:乘8取整法。

具体做法:用8乘以十进制小数,得到一个整数和一个小数

部分;再用8乘以小数部分,又得到一个整数和一个小数部分;

继续这一过程,直到余下的小数部分为0或满足精度要求为止;

最后将每次得到的整数部分(必定是小于8的数)按先后顺序从左

到右排列,即得到所对应的二进制小数。

川识,占第7章微型必算机基砒

【例1-5】将十进制小数0.6875转换成八进制小数。其过程如下:

0.6875

X8

5.5000整数部分为5,即A_尸5

0.5000余下的小数部分

X8

4.0000整数部分为4,即A—2=4

0.0000余下的小数部分为0,结束

最后结果为

(0.6875)10=(0.A_1A_2)8=(0.54)8

同理,一个八进制数可分解成整数和小数部分,分别转换后合

成即可。

川识,占第7章微型必算机基砒

3)八进制数转换成十进制数

方法:按位权展开后相加

【例1・6】将八进制数141.54转换成十进制数。其过程如下:

(141.54卜1X82+4X81+1X8°+5X8T+4X8-2

=64+32+1+0.625+0.0625

=97,6875

最后结果为

(141.54)8=(97.6875)10

相。识。第/章微型材算机基砒

3.十进制与十六进制之间的转换

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

方法:除16取余法。

具体做法:将十进制数除以16,得到一个商和一个余数;

再将商除以16,又得到一个商和一个余数;继续这一过程,直

到商等于0为止。每次得到的余数(必定是小于F的数)就是对应

十六进制数的各位数字。第一次得到的余数为十六进制数的最

低位,最后一次得到的余数为十六进制数的最高位。

川识,占第7章微型必算机基砒

【例1-7】将十进制数97转换成十六进制数。其过程如下:

16I______97余数为1,即A°=l

161_____6余数为6,即A]=6

商为0余数为0,结束

最后结果为

(97)10=(A2A1A0)16=(61)16

相。识。第/章微型材算机基砒

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

方法:乘16取整法。

具体做法:用16乘以十进制小数,得到一个整数和一个小数

部分;再用16乘以小数部分,又得到一个整数和一个小数部分;

继续这一过程,直到余下的小数部分为0或满足精度要求为止;

最后将每次得到的整数部分(必定是小于F的数)按先后顺序从左

到右排列,即得到所对应的十六进制小数。

川识,占第7章微型必算机基砒

【例1-8】将十进制小数0.6875转换成十六进制小数。其过

程如下:

0.6875

16

11.0000整数部分为H,即Af=B

0.0000余下的小数部分为0,结束

最后结果为

(O.6875)lo=(O.A_1)16=(0.B)16

川识,占第7章微型必算机基砒

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

方法:按位权展开后相加。

【例1-9】将十六进制数61.B转换成十进制数。其过程如下:

(61.B)8=6X16i+lX160+BXl6T

=96+1+11X16-

=97+0.6875

=97.6875

最后结果为

(61.B)16=(97.6875)10

相。识。第/章微型材算机基砒

4.二进制与八进制、十六进制数之间的转换

因为23=8,所以每三位二进制数对应一位八进制数;24=16,

所以每四位二进制数对应一位十六进制。表1-1列出了十进制、二

进制、八进制、十六进制最基本数字的对应关系,这些对应关系

在后面的二进制、八进制、十六进制相互转换中要经常用到。

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

方法:从小数点所在位置分别向左向右每三位一组进行划分。

若小数点左侧的位数不是3的整数倍,在数的最左侧补零;若小数

点右侧的位数不是3的整数倍,在数的最右侧补零。然后参照表1-

1,将每三位二进制数转换成对应的一位八进制数,即为二进制数

对应的八进制数。

相。识。第/章微型行窜机基砒

表1・1十、二、八、十六进制数码的对应关系

十进制二进制八进制十六进制

0000000

1000111

2001022

3001133

4010044

5010155

6011066

7011177

相。识。第/章微型行窜机基砒

表1・1十、二、八、十六进制数码的对应关系

81000108

91001119

10101012A

11101113B

12110014C

13110115D

14111016E

15111117F

相。识。第/章微型行窜机基砒

【例1-10】直接将二进制数niio.ii转换成八进制数。其

过程如下:

011110.110

36.6

所以

(1H1O.11)2=(36.6)8

川识,占第7章微型必算机基砒

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

方法:参照表1-1,将每一位八进制数分解成对应的三位二

进制数,即为八进制数对应的二进制数。

【例1-11】直接将八进制数35.6转换成二进制数。其过程

如下:

35.6

011101.110

所以

(35.6)8=(11101.11)2

相美5识,占第7章微型材算机基砒

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

方法:从小数点所在位置分别向左向右每四位一组进行划

分。若小数点左侧的位数不是4的整数倍,在数的最左侧补零;

若小数点右侧的位数不是4的整数倍,在数的最右侧补零。然

后参照表1-1,将每四位二进制数转换成对应的一位十六进制数,

即为二进制数对应的十六进制数。

【例1-12】直接将二进制11H0.11转换成十六进制数。其

过程如下:

000111101100

1

川识,占第7章微型必算机基砒

4)十六进制数转换二进制数

方法:参照表1-1,将每一位十六进制数转换成对应的四位

二进制数,即为十六进制数对应的二进制数。

【例1-13】直接将十六进制数EF.C转换成二进制数。其过

程如下:

EF.C

11101111.1100

所以

(EF.C)16=(I1101111.11)2

相。识。第/章微型材算机基砒

由以上方法可以看出,(25)10=(11001)2=(19)16=(31)8,

(0.5)10=(0.1)2=(0.8)16=(0.4)8o在计算机里,通常用数字后面跟

一个英文字母来表示该数的数制,十进制数用D(Decimal)、二

进制数用B(Binary)、八进制数用O(Octal)、十六进制数用

H(Hexadecimal)来表示。由于英文字母0容易和零误会,所以也

可以用Q来表示八进制数。另外,在计算机操作中一般默认使

用十进制数,所以十进制数可以不标进制。

1和关5识第7章微型必算机基砒

例如,25D=H00B=19H=31Q,0.5D=0.1B=0.8H=0.4Q。当

然,也可以用这些字母的小写形式来表示数制。例如:

25d=H00b=19h=31q,0.5d=0.1b=0.8h=0.4q。本书约定采用大写

字母形式。

八进制数和十六进制数主要用来简化二进制数的书写,因

为具有23=8,24=16的关系,所以使用八进制数和十六进制数表

示的二进制数较短,便于记忆。IBM-PC机中主要使用十六进制

数表示二进制数和编码,所以必须十分熟悉二进制数与十六进

制数的对应关系。

相。识。第/章微型材算机基砒

1.4计算机中数与字符的编码

1.4.1数值数据的编码及其运算

1.二进制数的编码及运算

数据的正负号可以用一位二进制的“0”和“1”两个状态来表

示,这样,二进制数值数据在计算机中就能方便表示了。为了

尽可能简化对二进制数值数据实现算术运算所用到的规则,机

器将二进制数值数据进行编码表示,常用的编码有原码、反码

和补码。由于补码编码有许多优点,因此大多数微机数字与字

符采用补码进行编码。

川识,占第7章微型必算机基砒

为了讨论方便,有必要引入两个概念:机器数和机器数的

真值(简称真值)。

机器数:带符号的二进制数值数据在计算机内部的编码。

真值:机器数所代表的实际值。

一般机器数的最高有效位用来表示数的正负号,“0”表示

正数,“1”表示负数。

川识,占第7章微型必算机基砒

1)二进制数原码编码方法

原码编码的方法如下:

设真值为X,机器字长为n位,则当XK)时,[X]原的最高位

填3其余n—1位填X的各数值位的位值。例如,n=8时,[+0]原

=0ooooooo,[+1]原=00000001,[+127]原=0innn。当xso时,

[X]原的最高位填1,其余n—1位填X的各数值位的位值。例如,

n=8时,

[—0]原=10000000,[-1]^=10000001,[—127]原=11111111。

结论:二进制正、负数的原码就是符号化的机器数真值本身。

I第7章微型材算机基砒I

注意:在原码的表示中,真值0的原码可表示为两种不同的

形式,+0和一0。

原码表示法的优点是简单易于理解,与真值间的转换较为

方便。它的缺点是进行加减运算时较麻烦,既要考虑是做加法

还是做减法运算,还要考虑数的符号和绝对值的大小。这不仅

使运算器的设计较为复杂,而且降低了运算器的运算速度。

若有二进制数X=XnfXn_2…X1X。,则原码表示法的定义为

X2nT〉XN0

[刘原

n1

2"一—X=2"7+|X|0>X>-2-

川识,占第7章微型必算机基砒

2)二进制数反码编码方法

反码编码的方法如下:

设真值为X,机器字长为n位,则当XNO时,[X]反的最高位

填0,其余n—1位填X的各数值位的位值,即采用符号一绝对值

表示。例如,n=8时,[+0]反=00000000,[+1];-00000001,

[+127]反=01111111。当X0O时,[X]反=2n—1+X(MOD2»例

如,n=8时,[—0]反=11111111,[—1]反=11111110,[—127]反

=10000000o

结论:二进制正数的反码就是其原码。二进制负数的反码

就是机器数符号位保持不变,其余按位取反。

川识,占第7章微型必算机基砒

注意:在反码的表示中,真值0的反码也可表示为两种不同

的形式,+0和一0。

若二进制数X=Xn—iXn.2…X1X。,则反码表示法的定义为

X2n_1>X>0

[x]反=<

(2〃-1)+X0>X>-2n-!

川识,占第7章微型必算机基砒

3)二进制数补码编码方法

补码编码的方法如下:

设真值为X,机器字长为n位,则当XNO时,[X]补的最高位

填0,其余n—1位填X的各数值位的位值,即采用符号—绝对值

表示。例如,n=8时,[+0]补=00000000,[+1]补=00000001,

[+127]补=01111111。当X0O时,[X]补=2n—凶(MOD2n)。例

如,n=8时,[—0]补=00000000,[―1]补=1HH1H,[-127]

补=10000001o

结论:二进制正数的补码就是其原码。二进制负数的补码

就是机器数符号位保持不变,其余位取反码后末位加1。

川识,占第7章微型必算机基砒

求负数的补码有一种更简便的方法:当XSO时,[X]补的最

高位填1,其余n—1位填X的各数值位按位取反(0变1,1变0)后

在末位加1的数值。

注意:

①在补码表示法中,0只有一种表示,即000...000。

②对于10000000这个补码编码,其真值被定义为一128。

1第/章微型材算机基砒F

【例1・14】机器字长n=8位,X=+48D,求[X]补。

首先将+48D转换为二进制数:+110000Bo

因为机器字长是8位,其中符号占了1位,所以数值只占7位。

将+110000B写成+OHOOOOB,[+48]补=00110000B,写成十六进

制数为30H,即[+48]补=30H。

川识,占第7章微型必算机基砒

【例1-15】机器字长n=8位,X=-48D,求[X]补。

首先将一48D转换为二进制数:一HOOOOB。

因为机器字长是8位,其中符号占了1位,所以数值只占7位。

将一nooooB写成-lonooooB。再将数值位OHOOOOB按位求反

后为1001H1B,末位加1后为1010000B。所以,[—48]补=1

1010000B,写成十六进制数为0D0H,即[―48]补=0D0H。

上相。识,第7章微型材算机基砒1

【例1-16】机器字长n=16位,X=+48D,求[X]补

+48D转换为二进制数:+110000Bo

因为机器字长是16位,其中符号占了一位,所以数值占十

五位。将+1100008写成+0000000001100008,[+48]补=0000

000000110000B,写成十六进制数为0030H,即[+48]补=0030H。

川识,占第7章微型必算机基砒

【例1・17】机器字长n=16位,X=-48D,求[X]补。

—48D转换为二进制数:一110000B。

因为机器字长是16位,其中符号占了1位,所以数值占15位。

将一H0000B写成-000000000110000Bo000000000110000B

按位求反后为1HlUH11001111B,末位加1后为1HlUH

11010000Bo所以,[-48]#=1111111111010000B,写成十

六进制数为0FFD0H,即[―48]补=0FFD0H。

相。识。第/章微型材算机基砒

注意:在汇编语言中,为了区别指令码和数据,规定以A〜

F开始的数据前面加零。

由此可看出,补码数要扩展时,正数是在符号的前面补0,

负数是在符号的前面补1。也就是说,补码数扩展实际上是符号

扩展。

已知补码求真值的方法是:当机器数的最高位(符号位)为0

时,表示真值是正数,其值等于其余n—1位的值;当机器数的

最高位(符号位)为1时,表示真值是负数,其值等于其余n—1位

按位取反后末位加1的值。

I第7章微型材算机基砒I

例如:若[X]补=0若11111,则X=(如111111)2=(+127)10。

若[X]补=11111111,则x=(—0000001)2=(—1)10。

下面讨论补码表示数的范围。

一般来说,如果机器字长为n位,则补码能表示的整数范围

是一2nTgNW2nT—1。

例如,当n=8时,-128<N<+127,其二进制补码数范围如

表1-2所示。

表1・28位二进制补码数范围

补码编码(机器数)十进制数(真值)

01111111+127

01111110+126

00000010+2

00000001+1

000000000

11111111—1

11111110-2

10000010—126

10000001-127

10000000-128

____________▲____________________________________________________

川识,占第7章微型必算机基砒

4)二进制数补码的运算

补码的运算规则是:

[X+Y.=[X]补+[Y]补

[X—丫]补=[X]补+LY]补

已知[Y]补,求[—Y]补的方法是将[Y]补各位按位取反(包括符

号位在内)末位加1。

现举例说明以上两个公式的正确性。

相。识。第/章微型行窜机基砒

【例1-18】设Xl=+0001100X2=-0001100

Y1=+0000101Y2=-0000101

[XI]补=00001100[X2]#=11110100

[Y1]补=00000101[Y2]补=11111011

相。识。第/章微型行窜机基砒

①计算XI+Ylo

+0001100XI00001100[XI]补

+)+0000101Y1+)00000101[Y1]补

+0010001X1+Y100010001[XI]补+[Y1]补

因为:

[X1+Y1]#=[+0010001]#=00010001=[XI]补+[Y1]补

所以:

[X1+Y1]#=[X1]^+[Y1]#

川识,占第7章微型必算机基砒

②计算XI—Y1。

+0001100XI00001100[XI]补

-)+0000101Yl+)11111011[―Y1]补

+0000111X1-Y1100000111[XI]补+[—Y1]补

iL

自然丢失-----

因为:

丫补补+[―补

[XI—1]=[+0000111]#=00000111=[XI]Y1]

所以:

[XI—丫1]补=凶]补+LY1]补

川识,占第7章微型必算机基砒

③计算X2+Y2。

-0001100X211110100[X2]补

+)-0000101Y2+)11111011[Y2]补

补补

-0010001X2+Y21▲1101111[X2]+[Y2]

自然丢失

因为:

江2+丫2]补=[—0010001]补=1H0H11=[X2]补+[Y2]补

所以:

[X2+Y2]#=[X2]#+[Y2]#

川识,占第7章微型必算机基砒

④计算X2-Y2。

-0001100X211110100[X2]补

-)-0000101Y2+)00000101LY2]补

-0000111X2-Y211111001[X2]补+[—Y2]补

因为:

[X2-丫2]补=[—0000111]补=11111001=[X2]补+[―Y2]补

所以:

江2-丫2]补=区2]补+[—丫2]补

川识,占第7章微型必算机基砒

由此可看出,计算机引入了补码编码后,带来了以下几个

优点:

(1)减法转化成了加法,这样大大简化了运算器硬件电路的

设计,加减法可用同一硬件电路进行处理。

(2)运算时,符号位与数值位同等对待,都按二进制数参加

运算,符号位产生的进位丢掉不管,其结果是正确的。这大大

简化了运算规则。

川识,占第7章微型必算机基砒

运用以上两个公式时,要注意以下两点:

(1)公式成立有个前提条件,就是运算结果不能超出机器数

所能表示的范围,否则运算结果不正确,按“溢出”处理。

例如,设机器字长为8位,则一1280NW+127,计算

(+64)+(+65)o

+6401000000

+)+65+)01000001

+12910000001——>-127

川识,占第7章微型必算机基砒

显然这个结果是错误的。究其原因是:(+64)+(+65尸+129〉

+127,超出了字长为8位所能表示的最大值,产生了“溢出”,

所以结果值出错。

再如,计算(一125)+(—10)。

-12510000011

+)-10+)11110110

-135101111001——>+121

显然,计算结果也是错误的。其原因是:(—125)+(一10尸一135

<-128,超出了字长为8位所能表示的最小值,产生了“溢

出工所以n错。——

相。识。第/章微型行窜机基砒

(2)采用补码运算后,结果也是补码,欲得运算结果的真

值,还需进行转换。

相M识,占第7率微型必算机基砒

2.无符号整数的编码及运算规则

在某些情况下,计算机要处理的数据全是正数,此时机器

数再保留符号位就没有意义了。这时,将机器数最高有效位也

作为数值位处理,也就是说,假设机器字长为n位,则有符号整

数的编码可表示为

符号位|数值位

YY

1位n—l位

无符号整数的编码可表示为

相。识。第/章微型材算机基砒

无符号整数的表示范围是:0<N<2n-lo

例如,当n=8位时,表示范围是:0<N<255;当n=16位时,

表示范围是:0SNS65535。

计算机中最常见的无符号整数是地址,另外,双字长数据

的低位字也是无符号整数。

要注意的是,计算机本身不论是对有符号数还是无符号数,

总是按照补码的运算规则做运算。例如,机器做这样一个运算:

相。识。第/章微型行窜机基砒

10001010

+)00000111

10010001

可以把它看作是两个无符号整数相加:

138

+)7

0145

也可以把它看作是两个有符号整数相加:

川识,占第7章微型必算机基砒

也就是说,不论把二进制数解释成有符号数还是无符号数,

其结果都是

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论