计算机组成原理教学课件 马辉 第3章 一

上传人:w****i 文档编号:94557497 上传时间:2019-08-08 格式:PPT 页数:158 大小:466KB
返回 下载 相关 举报
计算机组成原理教学课件 马辉 第3章 一 _第1页
第1页 / 共158页
计算机组成原理教学课件 马辉 第3章 一 _第2页
第2页 / 共158页
计算机组成原理教学课件 马辉 第3章 一 _第3页
第3页 / 共158页
计算机组成原理教学课件 马辉 第3章 一 _第4页
第4页 / 共158页
计算机组成原理教学课件 马辉 第3章 一 _第5页
第5页 / 共158页
点击查看更多>>
资源描述

《计算机组成原理教学课件 马辉 第3章 一 》由会员分享,可在线阅读,更多相关《计算机组成原理教学课件 马辉 第3章 一 (158页珍藏版)》请在金锄头文库上搜索。

1、第3章 计算机中信息的表示和数值运算,本章导读,本章首先介绍数制与信息编码的知识,具体内容包括各种进位计数制及其相互转换方法;BCD编码、字符编码、汉字编码和校验编码等编码方案与技术。,本章导读,然后讲述计算机中各种数值数据的表示和运算方法,具体内容包括定点数的原码、反码、补码等表示方法和移位、加减、乘除运算方法,浮点数的表示和加减、乘除运算方法。最后介绍算术逻辑单元ALU的设计原理与基本结构情况。,本章要点,进位计数制及其相互转换 BCD编码 字符编码与字符串 校验码 真值和机器数 定点数的表示,本章要点,定点数的各种运算方法与溢出的概念 浮点数的表示和加减运算 IEEE754标准 串行加法

2、器和并行加法器 ALU的功能和结构,3.1 数制与编码,3.1.1 进位计数制及其相互转换 3.1.2 十进制数的编码 3.1.3 字符与字符串编码 3.1.4 汉字及其他信息的编码表示 3.1.5 校验码,3.1.1 进位计数制及其相互转换,1、进位计数制 在日常生活中,人们广泛使用十进制数,任意一个十进制数(N)10可表示为: (N)10=Dm10m+Dm-110m-1+D1101 +D0100+D-110-1+D-210-2+D-k10-K,Di可以是09十个数码中的任意一个,根据Di在式中所处位置而赋以一个固定的单位值10i,称之为权。式中的10称为基数或“底”。任意一种进位计数制都具

3、有基数和位权两个重要参数。 在计算机中,十进制数的存储和运算都不太方便,于是二进制计数制应运而生。,任意一个二进制数可表示为: (N)2=Dm2m+Dm-12m-1+D121 +D020+D-12-1+D-22-2+D-k2-K 该式中整数部分有m+1位,小数部分有k位,基数(或底)为2。 二进制数(N)2按公式展开,可计算得该数的十进制表示。,例如(1101.0101)2=(123+122+021+120+02-1+12-2 +02-3+12-4)10 =(8+4+0+1+0+0.25+0+0.0625)10 =(13.3125)10 对人们来说,二进制数位数较多,无论是书写或阅读均很不方便

4、,为此经常在表示计算机内的数据时采用八进制数或十六进制数。,任意一个八进制数可表示为: (N)8=Dm8m+Dm-18m-1+D181+D080 +D-18-1+D-28-2+D-k8-K 其中Di可为07八个数码中的任意一个。 任意一个十六进制数可表示为: (N)16=Dm16m+Dm-116m-1+D1161+ D0160+D-116-1+D-216-2+D-k16-K,其中Di可以是015共十六个数中的任一个。为书写和辨认方便,通常用09和AF分别表示十六进制数09和1015。 例如: (0D.5)16=(0161+13160+516-1)10 =(0+13+0.3125)10 =(13

5、.3125)10,表3-1 二、八、十六和十进制数的对应关系,各进制数据在书写表示时,除了可以给数加上括号,然后用下标表示采用的是几进制外,还可用后缀来区分。如可在十六进制数据的后面加上“H”,如17DBH;在二进制数据的后面加上“B”,如110101B;在十进制数据后面可加上“D”,如78D,通常也可省略“D”;在八进制数据后面加上 “O”(大写字母O)或“Q”,如17Q。,2、各种进位制的相互转换 (1)二进制数、八进制数和十六进制数之间的转换 八进制数和十六进制数是从二进制数演变而来的,由3位二进制数组成1位八进制数,4位二进制数组成1位十六进制数。,对于一个兼有整数和小数部分的数,以小

6、数点为界,对小数点前后的数位分别分组进行处理,不足的位数用0补足,对整数部分将0补在数的左侧,对小数部分将0补在数的右侧。这样数值不会发生差错。,假如从二进制数转换到八进制数,则以3位为1组。 例如:(1 101.010 1)2=(001 101.010 100)2=(15.24)8 假如从二进制数转换到十六进制数,则以4位为1组。 例如:(1 1101.0101)2=(0001 1101.0101)2=(1D.5)16,从八进制数或十六进制数转换到二进制数,只要按顺序将每一位数写成对应的3位或4位二进制数即可。 例如:(15.37)8=(001 101.011 111)2=(1101.011

7、111)2 八进制数与十六进制数之间的转换,可用二进制数作为中间媒介进行转换。,(2)二进制数转换成十进制数 可把二进制数写成按权展开的形式,然后求和。 (3)十进制数转换成二进制数 通常要对一个十进制数的整数部分和小数部分分别进行处理。,对整数部分,一般采用除2取余数法,其运算规则如下:将十进制数除以2,所得余数(0或1)即为对应二进制数最低位的值。然后对上次所得的商除以2,所得余数即为二进制数次低位的值,如此进行下去,直到商等于0为止,最后得出的余数是所求二进制数最高位的值。,对小数部分,一般用乘以2取整数法,其运算规则如下:将十进制数乘以2,所得乘积的整数部分即为对应二进制小数最高位的值

8、,然后对所余的小数部分乘以2,所得乘积的整数部分为次高位的值,如此进行下去,直到乘积的小数部分为0,或结果已满足所需精度要求为止。,例:将(105)10转换成二进制。 例:将(0.3125)10转换成二进制数。(要求保留4位有效位) 当一个数既有整数部分又有小数部分时,分别进行转换后再进行拼接,如(105.3125)10 ,则根据前面的计算,得出:(105.3125)10=(1101001.0101)2。,(4)十进制数转换成八进制数、十六进制数 参照十进制数转换成二进制数的方法,将基数2改为8或16,采用除以基数取余和乘以基数取整的方法,即可实现转换。 例:将(13.3125)10转换成八进

9、制数:,3.1.2 十进制数的编码,在计算机中也常采用4位二进制码对每个十进制数位进行编码,这样可加快十进制数据表示转换为计算机能识别的二进制表示的速度。4位二进制码有16种不同的组合,从中选出10种来表示十进制数位的09十个基本符号,尚余6个编码,因此可有多种编码方案供选择。,(1)有权码 如果表示一位十进制数的二进制码的每一位有确定的权值,称为有权码。一般用8421编码,其4个二进制码位的权值从高到低分别为8、4、2和1。用0000,0001,1001分别表示0,1,9,每个数位内部满足二进制规则,而数位之间满足十进制规则,故称这种编码为“以二进制编码的十进制(简称BCD)码”。,在计算机

10、内部实现BCD码算术运算时,要对运算结果进行修正,这是因为运算是按二进制规则进行的,4位二进制位符合“逢十六进一”规则,但实际的4位代表一个十进制位,应按“逢十进一”规则处理。,对加法运算的修正规则是:如果两个一位BCD码相加之和小于或等于(1001)2,即(9)10,不需要修正;如相加之和大于或等于(10)10,要进行加6修正,并向高位进位,进位可以在首次相加或修正时产生。,另外还有几种有权码,如2421,5211,4311码,也是用4位二进制码表示一个十进制数位,但4位二进制码之间不符合二进制规则。这几种有权码都具有一特点,即任何两个相加之和等于(9)10的二进制码互为反码。,表3-2 4

11、位有权码,(2)无权码 如果表示一个十进制数位的二进制码的每一位没有确定的权值,称为无权码。用得较多的是余3码(Excess-3 Code)和格雷码(Gray Code),格雷码又称“循环码”。,表3-3 4位无权码,余3码是在8421码基础上,把每个编码都加上0011而形成的,其运算规则是:当两个余3码相加不产生进位时,应从结果中减去0011;产生进位时,应将进位信号送入高位,本位加0011。,格雷码的编码规则是任何两个相邻数的编码只有1个二进制位不同,而其余3个二进制位相同。其优点是从一个编码变到下一个相邻数编码时,只有1位发生变化,用它构成计数器时可得到更好的译码波形。,3.1.3 字符

12、与字符串编码,字符在计算机内部也要表示成二进制位串的形式,现在国际上使用最广泛的字符编码是美国国家标准委员会颁布的美国信息交换标准编码(ASCII码)。 该编码每个字符用7个二进制位来表示,共包括128个字符,其中95个可输出显示。,表3-4 ASCII字符编码表,一个字符的ASCII编码在存储的时候用一个字节,通常规定最高位为0,但有时也用最高位作奇偶校验位。 字符串是指连续的一串字符,通常情况下,它们占用主存中连续的字节,每个字节存一个字符的ASCII编码。如“12B”占用3个字节,内容为:“00110001 00110010 01000010”,3.1.4 汉字及其他信息的编码表示,1、

13、汉字的编码表示 汉字是世界上使用人数最多的文字,在计算机中对汉字也要进行二进制编码才能处理。汉字的字数多,重音多,字形复杂,要在计算机内进行表示处理的话牵涉到录入、存储表示、输出等一系列复杂的过程。,(1)汉字的输入 1981年,我国的国家技术监督局公布了国家标准:GB2312信息交换用汉字编码字符集基本集,收录了常用汉字6763个,其中一级常用汉字3755个,二级常用汉字3008个。,在该标准中收录的所有汉字和符号按区位编排,共设94个区,每区含94个汉字或符号。其中,一级汉字按拼音顺序排列,占据16区至55区;二级汉字按部首顺序排列,占据56区至87区; 对每一个汉字来说,在该标准中都有一

14、个区号(0194)和一个位号(0194),两者合在一起就形成了汉字的区位码。,同一个汉字在不同计算机系统中可以是不一样的表示,但在不同系统之间要交换信息时,必须采用同一标准表示。GB2312标准中提出了统一的规格标准,被称为国标码。它是在区位码的基础上得到的。具体做法是:把十六进制的区位码用两个字节表示,在两个字节值的基础上各加上20H就得到了国标码。,对GB2312收录的汉字来说,都人为规定的对应了一个惟一的区位码,我们可以按区号和位号来输入汉字,称为数字编码输入。但实际中很少采用。现实中常用的输入方法有字音编码、字形编码或形音编码。 字音编码是基于汉字拼音的编码方法,具有汉语拼音能力的人很

15、容易学会,但汉字有很多的同音字,给这种输入方法带来了麻烦。,字形编码是根据汉字的字形分类而给出的编码方法。它把汉字分解成字根、部首、偏旁、笔形、笔画等基本单位,每一种基本单位与键盘上的一个键相对应,从而构成一个汉字的编码,通过在标准键盘上按某个顺序依次按键来实现输入汉字,如五笔字形法。,形音编码法吸取字音编码和字形编码两种编码方法的优点,使编码规则简单,重码少,但也必须掌握这两种编码的基本知识才能使用。,(2)汉字的存储 汉字在计算机内的存储通常采用汉字内码,这是汉字信息处理系统在计算机内部存储和处理汉字信息时使用的编码。现在常用的方案是把两字节国标码的每个字节最高位的0变成1,其他7位的信息

16、位保持不变。,区位码、国标码和内码的关系可表示为: 国标码=区位码+2020H 机内码=国标码+8080H,在一个处理汉字信息系统的计算机内部,区分计算机内部信息是一个ASCII编码的字符还是汉字的编码字符,只要判别连续的两个字节的最高位是否为1。若为1,这连续的两个字节构成了一个汉字内码;若为0,则字节的低7位是ASCII编码的字符。,(3)汉字的输出 在计算机中的汉字内码不可能直接在屏幕上显示和在打印机上输出,要想输出汉字的话必须要有汉字的字形笔画信息,这就需要将汉字的内码转换为汉字字形码,或叫字模码。计算机早期一般通过点阵表示汉字字形代码。,图3-1 汉字字形点阵及编码,字模点阵的信息量是很大的,所占存储空间也很大,以1616点阵为例,每个汉字就要占用32个字节,两级常用汉字大约占用256KB。因此字模点阵只能用来构成“字库”。字库中存储了每个汉字的点阵代码,当显示输出时检索字库,输出字模点阵,得到字形。,汉字点阵的大小决定了汉

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 高等教育 > 大学课件

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号