




版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、r计算机组成原理 数字媒体技术系 2011-2012第一学期 教学目标:教学目标: 数据是计算机加工和处理的对象,数据数据是计算机加工和处理的对象,数据 的机器层次表示将直接影响到计算机的的机器层次表示将直接影响到计算机的 结构和性能。本章主要介绍无符号数和结构和性能。本章主要介绍无符号数和 带符号数的表示方法、数的定点与浮点带符号数的表示方法、数的定点与浮点 表示方法、字符和汉字的编码方法、数表示方法、字符和汉字的编码方法、数 据校验码等。熟悉和掌握本章的内容,据校验码等。熟悉和掌握本章的内容, 是学习计算机原理的最基本要求。是学习计算机原理的最基本要求。 本章学习要求本章学习要求 了解:了
2、解:无符号数与带符号数,真值和机器数等概念;无符号数与带符号数,真值和机器数等概念; 掌握:原码、补码、反码表示法以及三种码制与真值掌握:原码、补码、反码表示法以及三种码制与真值 之间的转换方法之间的转换方法 ; 掌握:定点数和浮点数的表示范围;掌握:定点数和浮点数的表示范围; 理解:浮点数阶码的移码;理解:浮点数阶码的移码; 了解了解:IEEE754浮点数标准;浮点数标准; 掌握:常见的字符编码方法(掌握:常见的字符编码方法(ASCII码);汉字国标码);汉字国标 码、区位码、机内码;码、区位码、机内码; 掌握:掌握:8241码、码、2421码和余码和余3码;码; 掌握:奇偶校验位及其形成方
3、法;掌握:奇偶校验位及其形成方法; 理解:海明校验码和循环冗余校验码理解:海明校验码和循环冗余校验码 。 本章教学内容导航本章教学内容导航 数值数据的表示数值数据的表示 机器数的定点表示和浮点表示机器数的定点表示和浮点表示 非数值数据的表示非数值数据的表示 十进制数和数串的表示十进制数和数串的表示 数据校验码数据校验码 2.1 数值数据的表示数值数据的表示 在计算机中,采用数字化方式来表在计算机中,采用数字化方式来表 示数据,数据有示数据,数据有无符号数无符号数和和带符号带符号 数数之分;之分; 其中带符号数根据其编码的不同又其中带符号数根据其编码的不同又 有有原码、补码和反码原码、补码和反码
4、3种基本形式。种基本形式。 学习要求学习要求:复习巩固数制、数码、基、复习巩固数制、数码、基、 权等概念权等概念 返回返回 2.1.1 计算机中的数值数据计算机中的数值数据 二进制数(Binary): 后缀B 八进制数(Octal): 后缀Q 十进制数(Decimal): 后缀D或省略 十六进制数(Hexadecimal): 后缀H 【例例】 (10010001)2 或 10010001B (7654)8 或 7654Q (EFA9)16 或 EFA9H (98761)10 或 98761D 或 98761 返回返回 2.1.2 无符号数和带符号数无符号数和带符号数 无符号数:无符号数:整个机
5、器字长的全部二进制位均整个机器字长的全部二进制位均 是是 数值位(没有符号位),相当于数的绝对数值位(没有符号位),相当于数的绝对 值。值。 【例例】N1=(01001)2 ; 表示无符号数表示无符号数9 N2=(11001)2 ; 表示无符号数表示无符号数25 l 机器字长为机器字长为n+1位的无符号数的表示范围位的无符号数的表示范围 是是0(2n+1 - 1)。此时二进制的最高位也是数此时二进制的最高位也是数 值位,值位, 其权值等于其权值等于2n。 字长为字长为8位,表数范围位,表数范围 0 255; 字长为字长为16位,表数范围位,表数范围 065535。 返回返回 2.1.2 无符号
6、数和带符号数(续)无符号数和带符号数(续) 带符号数:带符号数:即正、负数。在日常生活中,即正、负数。在日常生活中,用用“+” 、“-”号加绝对值来表示数值的大小号加绝对值来表示数值的大小。 真值:真值:用数符加绝对值表示的数值形式。用数符加绝对值表示的数值形式。 机器数:机器数:在计算机中需将数的符号数码化。约定在计算机中需将数的符号数码化。约定 二进制数的最高位为符号位,二进制数的最高位为符号位,“0”表示正号,表示正号, “1”表示负号。表示负号。 【例例】设机器的字长为设机器的字长为8位,则:位,则: 真值为真值为+98的机器数:的机器数:(01100010)2 真值为真值为-98的机
7、器数:的机器数:(11100010)2 返回返回 2.1.2 无符号数和带符号数(续)无符号数和带符号数(续) 常见的机器数有常见的机器数有原码、反码、补码原码、反码、补码等等3种不种不 同的表示形式。同的表示形式。 带符号数的最高位被用来表示符号位,而不带符号数的最高位被用来表示符号位,而不 再表示数值位。再表示数值位。 【例例】有两个带符号数有两个带符号数N1,N2 N1=01001,表示,表示+9。 N2=11001,根据机器数的不同形式表示不同,根据机器数的不同形式表示不同 的值:的值: 原码:原码:- 9 补码:补码:-7 反码:反码:-6 返回返回 2.1.3 原码表示法原码表示法
8、 原码:原码:用最高位表示符号位:符号位为用最高位表示符号位:符号位为“0”表表 示该数为正,符号位为示该数为正,符号位为“1”表示该数为负;数表示该数为负;数 值部分与真值(绝对值)相同。值部分与真值(绝对值)相同。 二进制二进制纯小数纯小数的原码形式为:的原码形式为: Xs . X1X2Xn,字长字长n+1位,其中位,其中Xs表示符号表示符号 位。位。 【例例】 X1=0.0110, X1原 原= (0.0110 )2 X2=-0.0110, X2原 原= (1.0110)2 F计算机中并没有小数点,约定纯小数的符号计算机中并没有小数点,约定纯小数的符号 位后隐含小数点。位后隐含小数点。
9、返回返回 2.1.3 原码表示法(续)原码表示法(续) 二进制二进制纯整数纯整数的原码形式为:的原码形式为: XsX1X2Xn,其中其中Xs表示符号位。表示符号位。 【例例】 X1=1101, X1原 原=01101 X2=-1101, X2原 原=11101 l在原码表示中,在原码表示中,0有两种不同的表示形式:有两种不同的表示形式: +0原 原=00000 -0原 原= 10000 F “0”的原码表示不唯一!的原码表示不唯一! 返回返回 2.1.4 补码表示法补码表示法 (1)模和同余模和同余 模:模:一个计量器的容量,可用一个计量器的容量,可用M表示。表示。 【例例】一个一个4位的二进
10、制计数器,当计数器从位的二进制计数器,当计数器从0计到计到15之之 后,再加后,再加1,计数值又变为,计数值又变为0。该计数器的容量。该计数器的容量=24=16, 即模即模M=16。 l纯小数的模为纯小数的模为2,一个字长为,一个字长为n+1位的纯整数的位的纯整数的 模为模为2n+1。 同余:同余:两整数两整数A、B除以同一正整数除以同一正整数M,所得余所得余 数相同,则称数相同,则称A、B对对M同余,即同余,即A、B在以在以M为为 模时是相等的,记为:模时是相等的,记为: A=B (mod M) 返回返回 方法:方法:补码的符号位表示方法与原码相同,其数补码的符号位表示方法与原码相同,其数
11、值部分的表示与数的正负有关:值部分的表示与数的正负有关: 正数正数: : 数值部分与真值形式相同;数值部分与真值形式相同; 负数负数: : 将真值的数值部分按位取反将真值的数值部分按位取反, ,末位加末位加1 1。 l 若真值为纯小数,它的补码形式为:若真值为纯小数,它的补码形式为: Xs .X1X2Xn,其中其中Xs表示符号位。表示符号位。 (2 2)补码表示)补码表示 【例例】 X1=0.0110, X1补 补= ( (0.0110)2 X2=-0.0110, X2补 补= ( (1.1010)2 返回返回 l 若真值为纯整数,它的补码形式为:若真值为纯整数,它的补码形式为: XsX1X2
12、Xn,其中其中Xs表示符号位。表示符号位。 【例例】 X1=1101, X1补 补=01101 X2=-1101, X2补 补=10011 F在补码表示中,真值在补码表示中,真值“0”的表示形式是唯一的:的表示形式是唯一的: +0补 补=-0补补=( (00000)2 (3)纯整数的补码表示纯整数的补码表示 返回返回 l 当当X为正数时,为正数时,X补 补=X原原=X ; ; 即正数补码与原码一致。即正数补码与原码一致。 l 当当X为负数时,由为负数时,由X原转换为原转换为X补的方法:补的方法: 方法方法1:X原 原除符号位外的各位取反,末尾加 除符号位外的各位取反,末尾加“1”。 方法方法2
13、:自低位向高位,尾数的第一个自低位向高位,尾数的第一个“1”及其右部及其右部 的的“0”保持不变,左部的各位取反,符号位保持不变保持不变,左部的各位取反,符号位保持不变 。 【例例】 X原 原 =1.1110011000 X补 补 =1.0001101000 (4)由真值、原码转换为补码由真值、原码转换为补码 不变不变不变不变变反变反 返回返回 2.1.5 反码表示法反码表示法 方法:方法:与补码表示法有许多类似之处:与补码表示法有许多类似之处: l对于正数,其反码就是原码;对于正数,其反码就是原码; l对于负数,将真值的数值部分按位取反(符对于负数,将真值的数值部分按位取反(符 号位保持不变
14、)。号位保持不变)。 r 纯小数的反码形式为:纯小数的反码形式为: Xs . X1X2Xn,其中其中Xs表示符号位。表示符号位。 【例例】 X1=0.0110, X1反 反=(0.0110)2 X2=-0.0110, X2反 反=(1.1001)2 返回返回 2.1.5 反码表示法(续)反码表示法(续) r 若真值为纯整数,它的反码形式为:若真值为纯整数,它的反码形式为: XsX1X2Xn,其中其中Xs表示符号位。表示符号位。 【例例】 X1=1101, X1反 反= (01101)2 X2=-1101, X2反 反=(10010)2 0 0的反码表示不唯一:的反码表示不唯一:真值真值0也有两
15、种不同的也有两种不同的 反码表示形式:反码表示形式: +0反 反=( (00000)2 -0反 反= (11111)2 返回返回 例例6.11 00000000 00000001 00000010 01111111 10000000 10000001 11111101 11111110 11111111 128 129 -0 -1 -128 -127 -127 -126 二进制代码二进制代码 无符号数无符号数 对应的真值对应的真值 原码对应原码对应 的真值的真值 补码对应补码对应 的真值的真值 反码对应反码对应 的真值的真值 0 1 2 127 253 254 255 -125 -126 -1
16、27 -3 -2 -1 -2 -1 -0 +0 +1 +2 +127 +0 +1 +2 +127 +0 +1 +2 +127 +0 :设机器数字长为设机器数字长为 8 位(其中位为符号位(其中位为符号 位)对于整数,当其分别代表无符号数、原码、补码和反位)对于整数,当其分别代表无符号数、原码、补码和反 码时,对应的真值范围各为多少?码时,对应的真值范围各为多少? 7 真值与真值与3种机器数间的对照种机器数间的对照(4位机器数)位机器数) 返回返回 (1 1)比较)比较 (对(对n+1位机器数)位机器数) 对于正数它们都等于真值本身,而对于负数各有不同对于正数它们都等于真值本身,而对于负数各有不
17、同 的表示。的表示。 最高位均为符号位,补码和反码的符号位可和数值位最高位均为符号位,补码和反码的符号位可和数值位 一起参加运算;但原码的符号位不允许和数值一起参一起参加运算;但原码的符号位不允许和数值一起参 与,必须分开进行处理。与,必须分开进行处理。 对于真值对于真值0,原码和反码各有两种不同的表示形式,原码和反码各有两种不同的表示形式, 而补码表示唯一。而补码表示唯一。 原码、反码表示的正、负数范围以原码、反码表示的正、负数范围以“0”对称分布;但对称分布;但 补码负数表示范围较正数表示范围宽,能多表示一个补码负数表示范围较正数表示范围宽,能多表示一个 最负的数(最负的数(绝对值最大的负
18、数:绝对值最大的负数:纯整数为纯整数为-2n ;纯小;纯小 数为数为-1.0)。)。 2.1.6 三种码制的比较与转换三种码制的比较与转换 返回返回 (2 2)转换)转换 F 如果已知机器的字长,则机器数的位数应补够如果已知机器的字长,则机器数的位数应补够 相应的位。(相应的位。(整数前补,小数后补整数前补,小数后补) 【例例】设机器字长为设机器字长为8位,则:位,则: 返回返回 X1=1011 X1原 原=00001011 X1补 补=00001011 X1反 反=00001011 X2=0.1011 X2原 原=0.1011000 X2补 补=0.1011000 X2反 反=0.10110
19、00 X3=-1011 X3原 原=10001011 X3补 补=11110101 X3反 反=11110100 X4=-0.1011 X4原 原=1.1011000 X4补 补=1.0101000 X4反 反=1.0100111 算术移位规则算术移位规则 1 右移右移 添添 1 左移左移 添添 0 0 反反 码码 补补 码码 原原 码码 负数负数 0原码、补码、反码原码、补码、反码正数正数 添补代码添补代码码码 制制 符号位不变符号位不变 求补运算求补运算:对一个二进制数的数值部分按位求反、末位加对一个二进制数的数值部分按位求反、末位加 “1”1” (3)如何由一个补码来求真值)如何由一个补
20、码来求真值? 根据机器码的符号位判断正根据机器码的符号位判断正 , ,负负? ? 正数的原码就是其补码正数的原码就是其补码, ,负数采用求补运算得到原码(符号位不变)。负数采用求补运算得到原码(符号位不变)。 把原码的数值部分转换成十进制数把原码的数值部分转换成十进制数, ,再加上正、负号后就是其真值。再加上正、负号后就是其真值。 解解: :将将7F7F和和D2 D2 转换成二进制数为转换成二进制数为: 01111111 : 01111111 和和11010010,11010010,从最高位从最高位( (符符 号位号位) )看出前一个是正数看出前一个是正数, ,后一个是负数后一个是负数. .
21、正数的原码正数的原码, ,反码和补码都是其本身反码和补码都是其本身, ,因此因此7FH7FH的真值是的真值是+127D+127D 对对 11010010 11010010 作求补运算作求补运算: : 取反取反 1 101011010101101 +1 00000001 +1 00000001 = = 1 10101110 0101110 把数值部分转换成把数值部分转换成2EH=46D, 2EH=46D, 真值为真值为-(46)-(46)10 10 【例例】已知字长为已知字长为8bit8bit的数的补码是的数的补码是7FH 7FH 和和D2H,D2H,分别求出其真值分别求出其真值? ? 返回返回
22、 作业 (1)寻址)寻址4G的内存,需要多少条地址线?的内存,需要多少条地址线? (2)已知补码为)已知补码为(10010111)2 求其真值?求其真值? (3) 字长为字长为8位,求位,求 - 39/128 的补码?的补码? 返回返回 2.2 机器数的定点表示与浮点表示机器数的定点表示与浮点表示 引出:引出:计算机在进行算术运算时,需要指出小计算机在进行算术运算时,需要指出小 数点的位置。根据小数点的位置是否固定,数点的位置。根据小数点的位置是否固定, 在计算机中有两种数据格式:在计算机中有两种数据格式: 定点表示:定点表示:fixed-point representation 浮点表示:浮
23、点表示:floating-point representation 2.2.1 定点表示法定点表示法 约定:约定:所有数据的小数点位置固定不变。所有数据的小数点位置固定不变。 返回返回 2.2.1 定点表示法定点表示法(设(设n+1n+1位机器数)位机器数) (1)定点小数)定点小数 小数点的位置固定在最高小数点的位置固定在最高 有效数位之前,符号位之有效数位之前,符号位之 后,记为:后,记为:Xs .X1X2Xn 是一个纯小数;是一个纯小数; 小数点位置隐含约定;小数点位置隐含约定; 小数点不需要真正占据小数点不需要真正占据 一个二进制位。一个二进制位。 n位数值位位数值位 数数 符符 小数
24、点位置(隐含) XsX1 Xn-1Xn (2)定点整数)定点整数 即纯整数,小数点位置隐即纯整数,小数点位置隐 含固定在最低有效数位后,含固定在最低有效数位后, 记为:记为: Xs . X1X2Xn 是一个纯整数;是一个纯整数; 小数点位置隐含约定;小数点位置隐含约定; 小数点不需要真正占据一小数点不需要真正占据一 个二进制位。个二进制位。 XsX1Xn-1 n位数值位 数符 小数点位置(隐含) Xn 返回返回 7 n+1位机器数的定点数的表数范围位机器数的定点数的表数范围 整数整数小数小数 原码原码 (值值) 111110111 -(2n-1)(2n-1) 1.11110.111 -(1-2
25、-n)(1-2-n) 反码反码 (值值) 100000111 -(2n-1)(2n-1) 1.00000.111 -(1-2-n)(1-2-n) 补码补码 (值值) 100000111 -(2n)(2n-1) 1.00000.111 - 1(1-2-n) 返回返回 8、16位机器数的定点数的表数范围位机器数的定点数的表数范围 位位 整数整数 小数小数 1616位位 整数整数 小数小数 原码原码 -127+127 -32767 +32767 反码反码 -127+127 同上 -32767 +32767 同上 补码补码 -128+127-1 -32768 -1 +32767 128 127 128
26、 127 128 127 32768 32767 32768 32767 32768 32767 返回返回 浮点数浮点数: :小数点的位置根据需要而浮动。小数点的位置根据需要而浮动。 【例例】1345 =134.5101=13.45102=1.345103 浮点数的真值:浮点数的真值: E为阶码,为阶码,M为尾数;均为带符号数;为尾数;均为带符号数; r为浮点数阶码的底(基),常与尾数的基数相同为浮点数阶码的底(基),常与尾数的基数相同 通常通常r =(二进制);二进制); 在大多数计算机中,尾数为纯小数,常用补码或在大多数计算机中,尾数为纯小数,常用补码或 原码表示;阶码为纯整数,常用移码或
27、补码表示。原码表示;阶码为纯整数,常用移码或补码表示。 2.2.2 浮点表示法浮点表示法 E rMN 返回返回 浮点数的底基是隐含的,在整个机器数中不出现浮点数的底基是隐含的,在整个机器数中不出现; 阶码的符号位(阶符)为阶码的符号位(阶符)为es,阶码阶码e的大小反映了在的大小反映了在 数数N中小数点的实际位置和数值的范围;中小数点的实际位置和数值的范围; 尾数的符号位为尾数的符号位为ms,它是整个浮点数的符号位,表它是整个浮点数的符号位,表 示该浮点数的正负;尾数示该浮点数的正负;尾数m体现浮点数据的精度体现浮点数据的精度。 7 浮点数用机器数表示的一般格式浮点数用机器数表示的一般格式 尾
28、数部分M阶码部分E esemsm k位n位1位1位 阶码阶码 MsMs Es EEs E1 1 EEk M M1 MMn 尾数尾数 阶符阶符数符数符 返回返回 (1)浮点数的表示范围)浮点数的表示范围 最大正数:最大正数:当当es=0,ms=0,阶码和尾数的数值位各位全阶码和尾数的数值位各位全 为为1时,该浮点数为最大正数:时,该浮点数为最大正数: X最大正数 最大正数=(1-2 -n) 最小正数:最小正数:当当es=1,ms=0,尾数的最低位尾数的最低位mn=1,其余各其余各 位为位为0(即阶码为绝对值最大的负数,尾数为最小正(即阶码为绝对值最大的负数,尾数为最小正 数)时,该浮点数为:数)
29、时,该浮点数为: X最小正数 最小正数=2 -n 12 2 k k 2 2 尾数部分M阶码部分E esemsm k位n位1位1位 返回返回 最小负数:最小负数:当当es=0,阶码的数值位为全阶码的数值位为全1;ms=1, 用补码表示的尾数的用补码表示的尾数的数值位为全数值位为全0(即阶码为最大(即阶码为最大 正数,尾数为绝对值最大的负数)时,该浮点数正数,尾数为绝对值最大的负数)时,该浮点数 为绝对值最大负数:为绝对值最大负数: X绝对值最大负数 绝对值最大负数= 12 21 k 尾数部分M阶码部分E esemsm k位n位1位1位 (1)浮点数的表示范围(续)浮点数的表示范围(续) 返回返回
30、 规格化:规格化:为了提高运算的精度,需要充分地利用尾数为了提高运算的精度,需要充分地利用尾数 的有效数位,通常采取浮点数规格化形式,即规定尾的有效数位,通常采取浮点数规格化形式,即规定尾 数的最高数位必须是一个有效值。数的最高数位必须是一个有效值。 1/2 |M| 1 (2)浮点数的规格化)浮点数的规格化 规格化的要求:规格化的要求:在尾数用补码表示时,规格化浮点数在尾数用补码表示时,规格化浮点数 应满足尾数最高数位与符号位不同(应满足尾数最高数位与符号位不同(ms m1 =1): 当当1/2M1时,应有时,应有0.1xxx形式形式 当当-1M-1/2时,应有时,应有1.0 xxx形式。形式
31、。 当当M=-1/2,其补码(其补码(1.100.00) 不是规格化数不是规格化数; M=-1, 补码(补码(1.000.00) 是规格化的。是规格化的。 返回返回 规格化的最小正数:规格化的最小正数:当当es=1,ms=0,尾数的最高尾数的最高 位位m1=1,其余各位为其余各位为0时,该浮点数为:时,该浮点数为: X规格化的最小正数 规格化的最小正数 = k 21 22 (2)浮点数的规格化(续)浮点数的规格化(续) 规格化的最小正数大于非规格化的最小正数。规格化的最小正数大于非规格化的最小正数。 尾数部分 M阶码部分 E esemsm k位n位1位1位 返回返回 7 浮点数的典型值浮点数的
32、典型值 返回返回 【例】将将13/128转换成浮点数。浮点数长为转换成浮点数。浮点数长为12位,位, 其中阶码用补码表示,阶符其中阶码用补码表示,阶符1位,数值为位,数值为3位;尾数位;尾数 用补码表示,尾符用补码表示,尾符1位位, 尾数为尾数为7位。位。 0 1 101 1101000 数符阶符数符阶符 阶码阶码 尾数尾数 其浮点数表示为:其浮点数表示为: 分析:分析:本小数的尾数的最高有效位与符位相同,本小数的尾数的最高有效位与符位相同, 需需规格化规格化。 处理:处理:将尾数左移将尾数左移3 3位,同时将阶码减位,同时将阶码减3 3,调整后,调整后 的浮点数为:的浮点数为: (0. 11
33、01000)2 2-3 解:解: = (0.0001101)2 754 7 023 222 2 222 128 ) 148( 128 13 返回返回 2.2.3 移码表示法移码表示法 移码移码: : 就是在真值就是在真值X上加一个常数(偏置值),相上加一个常数(偏置值),相 当于当于X在数轴上向正方向平移了一段距离。在数轴上向正方向平移了一段距离。 X移 移=偏置值 偏置值+X 对于字长对于字长8位的定点整数,偏置值为位的定点整数,偏置值为27 【例例】 X=+(1011101)2 X移 移=27+X=10000000+1011101=11011101 X补 补=01011101 【例例】 X
34、=-(1011101)2 X移 移= 27 +X=10000000-1011101=00100011 X补 补=10100011 返回返回 7 偏置值为偏置值为27的移码、补码和真值之间的关系的移码、补码和真值之间的关系 从小到大顺序编码从小到大顺序编码 返回返回 q 偏置值为偏置值为2 2n n的移码的特点的移码的特点 在移码中,最高位为在移码中,最高位为“0”表示负数,最高位为表示负数,最高位为 1”表示正数。表示正数。 移码为全移码为全“0”时,它所对应的真值最小,为全时,它所对应的真值最小,为全 “1”时,它所对应的真值最大。时,它所对应的真值最大。 真值真值0在移码中的表示形式是唯一
35、的,即在移码中的表示形式是唯一的,即+0移 移=- 0移 移=1000。 。 移码把真值映射到一个正数域,所以可将移码视移码把真值映射到一个正数域,所以可将移码视 为无符号数,直接按无符号数规则比较大小为无符号数,直接按无符号数规则比较大小; 同一数值的移码和补码除最高位相反外,其他各同一数值的移码和补码除最高位相反外,其他各 位相同。位相同。 返回返回 q 偏置值为偏置值为2 2n n的移码的特点(续)的移码的特点(续) 浮点数的阶码常采用移码的原因:浮点数的阶码常采用移码的原因: 便于比较浮点数的大小。阶码大的,其对便于比较浮点数的大小。阶码大的,其对 应的真值就大,阶码小的,对应的真值就
36、应的真值就大,阶码小的,对应的真值就 小。小。 简化机器中的判零电路。当阶码全为简化机器中的判零电路。当阶码全为0, 尾数也全为尾数也全为0时,表示机器零。时,表示机器零。 返回返回 l 定点、浮点表示法的区别定点、浮点表示法的区别 r 数值的表示范围数值的表示范围 设字长相同,则浮点表示设字长相同,则浮点表示 法所能表示的数值范围将法所能表示的数值范围将 远远大于定点数。远远大于定点数。 r 精度精度 字长相同,浮点数虽扩大字长相同,浮点数虽扩大 了数的表示范围,是以降了数的表示范围,是以降 低精度为代价,数轴排列低精度为代价,数轴排列 更稀疏。更稀疏。 2.2.4 定点、浮点表示法定点、浮
37、点表示法 和定点、浮点计算机和定点、浮点计算机 r数的运算数的运算 浮点运算要比定点运算复浮点运算要比定点运算复 杂得多。(相对慢!)杂得多。(相对慢!) r溢出处理溢出处理 在定点运算时,当运算结果在定点运算时,当运算结果 超出数的表示范围,就发生超出数的表示范围,就发生 溢出;而在浮点运算时,运溢出;而在浮点运算时,运 算结果超出尾数的表示范围算结果超出尾数的表示范围 却并不一定溢出,只有当阶却并不一定溢出,只有当阶 码超出所能表示的范围时,码超出所能表示的范围时, 才发生溢出。才发生溢出。 返回返回 7 IEEE 754 IEEE 754标准的浮点数格式标准的浮点数格式 2.2.6 实用
38、浮点数举例:实用浮点数举例:IEEE754 Emsm 阶码部分,用移码表示尾符尾数数值位 尾数部分,用原码表示 返回返回 类型类型 数符数符 m ms s 阶码阶码 E E 尾数尾数 m m 总位数总位数 偏偏置值置值 短浮点数短浮点数 1 1 8 8 2323 3232 7FH7FH 127127 长浮点数长浮点数 1 1 1111 5252 6464 3FFH3FFH 10231023 临时浮点数临时浮点数 1 1 1515 6464 8080 3FFFH3FFFH 1638316383 【例】 IEEE754标准的短浮点数标准的短浮点数 总总32位,称单精度浮点数。位,称单精度浮点数。
39、最高位为数符位(将尾数的符号位做数符);最高位为数符位(将尾数的符号位做数符); 其后是其后是8位阶码(位阶码(1位阶符位阶符+7位数值位),以位数值位),以2为底;阶码用为底;阶码用 移码移码表示,偏置值为表示,偏置值为127; 其余其余23位是尾数的数值位、纯小数、用位是尾数的数值位、纯小数、用原码原码表示;表示; 隐含尾数处理:隐含尾数处理:为了使尾数部分能多表示一位有效值,隐为了使尾数部分能多表示一位有效值,隐 含尾数最高数位含尾数最高数位1(即这一位(即这一位1不表示出来),尾数实际上不表示出来),尾数实际上 是是24位。位。注意:注意:隐含的隐含的“1”是一位整数(即位权为是一位整
40、数(即位权为20),), 实际的尾数是实际的尾数是 “1.xxx.x” 。 Emsm 阶码部分,用移码表示尾符尾数数值位 尾数部分,用原码表示 返回返回 【例例】将将(100.25)10转换成转换成IEEE754短浮点数格式。短浮点数格式。 十进制数十进制数二进制数二进制数 (100.25)10=(1100100.01)2 非规格化数非规格化数规格化数规格化数 1100100.01=1.1001000126 (隐含(隐含20位)位) 计算阶码的移码:计算阶码的移码:阶码真值偏置值阶码真值偏置值 (00000110)2+ (01111111)2=(10000101)2 以短浮点数格式存储该数。以
41、短浮点数格式存储该数。 (0 10000101 10010001000000000000000)2 42C88000H 返回返回 Emsm 阶码部分,用移码表示尾符尾数数值位 尾数部分,用原码表示 【例例】把短浮点数把短浮点数C1C90000H转换成为十进制数转换成为十进制数 十六进制十六进制二进制形式,并分离出符号位、阶码和尾数二进制形式,并分离出符号位、阶码和尾数 C1C90000H= ( 1;10000011;10010010000000000000000 )2 阶码阶码符号位符号位 尾数尾数 计算阶码真值:计算阶码真值:移码偏置值移码偏置值 (10000011)2 - (1111111
42、)2=(100)2 位数还原:位数还原:加上隐含的权加上隐含的权20 ( 1+0.1001001)24 = 1.100100124 写成非规格化二进制数形式写成非规格化二进制数形式 11001.001 转换成十进制数,并加上符号位。转换成十进制数,并加上符号位。 (11001.001)2=(25.125)10 结果:该浮点数结果:该浮点数= - 25.125 返回返回 【例例】 将将-(0.11)2用用IEEE754短浮点格式表示短浮点格式表示 阶码:阶码:=阶码真值阶码真值+127= -1+127=126=(01111110)2 尾数:尾数: 0.100 0 解:解:- -(0.11) =
43、-0.11) = -(1 1 + 0.1 + 0.1) 2 2 -1 数符数符: 1 1 该浮点代码为该浮点代码为 1,01111110,100 0 阶码阶码8位位尾数尾数23位位 隐含隐含1 1处理处理 返回返回 2.3 非数值数据的表示非数值数据的表示 m 非数值数据,非数值数据,又称为字符数据,又称为字符数据, 通常是指字符、字符串、图形符号通常是指字符、字符串、图形符号 和汉字等各种数据,它们不用来表和汉字等各种数据,它们不用来表 示数值的大小,一般情况下不对它示数值的大小,一般情况下不对它 们进行算术运算。们进行算术运算。 ACII码码 字符串字符串 汉字汉字 返回返回 (1)ASC
44、IIASCII码码 F美国国家信息交换标准代码美国国家信息交换标准代码。 一个字符的一个字符的ASCIIASCII码采用码采用位编码位编码在最高位在最高位加上加上1bit1bit的奇偶校的奇偶校 验位验位,占用主存的一个字节单元,字符序列(串)则占用连续的,占用主存的一个字节单元,字符序列(串)则占用连续的 主存单元。主存单元。 09共共10个数字字符:个数字字符:30H39H 26个大写英文字母:个大写英文字母:41H5AH 一些专用符号和控制符号(如:一些专用符号和控制符号(如:NUL、BEL、 LF、CR等)等) 34+32个个 8128个个ASCII码码 字符包括字符包括 26个小写英
45、文字母:个小写英文字母:61H7AH 英文字母和数字字符有序排列,小写字母比大写字母的英文字母和数字字符有序排列,小写字母比大写字母的ASCIIASCII码码 的值大的值大20H 20H (32D32D);); 2.3.1 字符和字符串的表示字符和字符串的表示 计算机存储的计算机存储的ASCIIASCII码的最高位均为码的最高位均为0 0。 返回返回 7 ASCII字符编码表字符编码表 返回返回 (2)字符串的存放字符串的存放 字符串:字符串:一串连续的字符。一串连续的字符。 【例例】 “IF X0 THEN READ (C) ”。 向量存放法:向量存放法: 在存储器中占用一片连续的空在存储器
46、中占用一片连续的空 间,每个字节存放一个字符的间,每个字节存放一个字符的 ASCII码;码; 字符串的所有元素(字符)在字符串的所有元素(字符)在 物理上是邻接的;物理上是邻接的; 在字长为在字长为32位的存储器,每一位的存储器,每一 个主存单元可存放个主存单元可存放4个字符,整个个字符,整个 字符串需字符串需5个主存单元。个主存单元。 8字符串的向量存放方案字符串的向量存放方案 54 494620 20 20 20 30 45 454144 48 52 43 3E 2928 58 4E IFX 0T HEN REA ( C ) D 返回返回 (1 1)汉字国标码)汉字国标码 亦称为汉字交换码
47、,主要用于汉字信息处亦称为汉字交换码,主要用于汉字信息处 理系统之间或者通信系统之间交换信息使理系统之间或者通信系统之间交换信息使 用,简称用,简称GB码码。 该标准共收集常用汉字该标准共收集常用汉字6763个,另外还有个,另外还有 各种图形符号各种图形符号682个,共计个,共计7445个。个。 GB码规定每个汉字、图形符号都用码规定每个汉字、图形符号都用两个两个 字节表示字节表示,每个字节只使用,每个字节只使用低七位编码低七位编码, 故最多能表示出故最多能表示出128128=16384个汉字。个汉字。 2.3.2 汉字的表示汉字的表示 返回返回 区位码:区位码:将汉字编码中的将汉字编码中的
48、6763个汉字分为个汉字分为 94 个个 区,每个区中包含区,每个区中包含94个汉字(位),区和位组成个汉字(位),区和位组成 一个二维数组,每个汉字在数组中对应一个唯一一个二维数组,每个汉字在数组中对应一个唯一 的区位码。的区位码。 汉字的区位码定长汉字的区位码定长4位十进制数,前位十进制数,前2位表示区位表示区 号,后号,后2位表示位号;位表示位号; 区号和位号用十进制数表示,区号从区号和位号用十进制数表示,区号从01到到94, 位号也从位号也从01到到94。 (2 2)汉字区位码)汉字区位码 【例例】 “中中”字在字在5454区的区的4848位上,其区位码为位上,其区位码为 “5448”
49、“5448” “ “国国”字在字在2525区的区的9090位上,其区位码为位上,其区位码为 “2590”“2590” 返回返回 注意:注意:汉字区位码不等于汉字国标码,它们之间汉字区位码不等于汉字国标码,它们之间 的关系为:的关系为: 国标码区位码(十六进制)国标码区位码(十六进制)2020H 【例例】已知汉字已知汉字“春春”的区位码为的区位码为“2026”,计,计 算它的国标码。算它的国标码。 区位码:区位码:第第1字节字节 第第2字节字节 20 26 十进制十进制 14H 1AH 十六进制十六进制 +20H +20H 国标码国标码: 34H 3AH (2)汉字区位码(续)汉字区位码(续)
50、返回返回 l汉字在计算机内部其内码是唯一的。汉字处理汉字在计算机内部其内码是唯一的。汉字处理 系统要保证中西文的兼容,当系统中同时存在系统要保证中西文的兼容,当系统中同时存在 ASCII码和汉字国标码时,将会产生二义性。码和汉字国标码时,将会产生二义性。 【例例】有两个字节的内容为有两个字节的内容为30H和和21H,它既可表示它既可表示 汉字汉字“啊啊”的国标码,又可表示西文的国标码,又可表示西文 “0” 和和 “!”的的ASCII码。码。 lGBGB码的机内码:码的机内码:二字节长的代码,将相应二字节长的代码,将相应GB码码 的每个字节最高位置的每个字节最高位置“1”,即:,即: 汉字机内码
51、汉字国标码汉字机内码汉字国标码8080H 【例例】 “啊啊”字的国标码是字的国标码是3021H,其汉字机内其汉字机内 码则是码则是B0A1H。 (3 3)汉字机内码)汉字机内码 返回返回 2.4 十进制数和数串的表示十进制数和数串的表示 十进制十进制是人们最常用的数据表示方是人们最常用的数据表示方 法,一些通用性较强的计算机上设有十法,一些通用性较强的计算机上设有十 进制数据的表示,可以直接对十进制数进制数据的表示,可以直接对十进制数 进行运算和处理。进行运算和处理。 BCD码码 十进制数串十进制数串 返回返回 2.4.1 十进制数十进制数的编码的编码(BCDBCD码)码) BCD码:码:用用
52、四位二进制数来表示一位十进制数,四位二进制数来表示一位十进制数, 称为称为二进制编码的十进制数。二进制编码的十进制数。 编码冗余:编码冗余:四位二进制数可以组合出四位二进制数可以组合出16种代码,种代码, 只需使用其中的只需使用其中的10种状态就可以表示种状态就可以表示09十个数十个数 码,而其他的六种状态为冗余状态。码,而其他的六种状态为冗余状态。 多种多种BCD码:码:可以取任意的可以取任意的10种代码来表示十个种代码来表示十个 数码,故可能产生多种数码,故可能产生多种BCD编码。编码。 特性:特性:BCD编码既具有二进制数的形式,又保持编码既具有二进制数的形式,又保持 了十进制数的特点。
53、了十进制数的特点。 【例例】39 =(0011 1001) 8421 返回返回 返回返回 7 常见的几种常见的几种BCD码码 (1)8421码码 8421码:码: 又称为又称为NBCD码,码, 其主要特点:其主要特点: 它是一种有权码,四位二进它是一种有权码,四位二进 制代码的位权从高到低分别制代码的位权从高到低分别 为为8、4、2、1。 简单直观。每个代码与它所简单直观。每个代码与它所 代表的十进制数之间符合二代表的十进制数之间符合二 进制数和十进制数相互转换进制数和十进制数相互转换 的规则。的规则。 不允许出现不允许出现 10101111。 属属8421码中的非法码。码中的非法码。 返回返
54、回 (2)2421码码 2421码的主要特点:码的主要特点: 它也是一种它也是一种有权码有权码,四位二进制,四位二进制 代码的位权从高到低分别为代码的位权从高到低分别为2、4、 2、1。 是一种对是一种对 9 的的自补码自补码。已知某数。已知某数 的的2421码,只要将其按位取反,就码,只要将其按位取反,就 能得到该数对能得到该数对9之补的之补的2421码。码。 例:例:3 的的2421码是码是0011。3 对对 9 之补是之补是6,而,而 6的的2421码是码是1100。 5及其以后数据的编码时,用最及其以后数据的编码时,用最 高位作高位作2的权位;的权位; 01011010 为非法码。为非
55、法码。 返回返回 (3)余余3 3码码 余余3 3码的主要特点:码的主要特点: 这是一种这是一种无权码无权码(特殊的有(特殊的有 权码),即在权码),即在8421码的基础上码的基础上 加加+3(+0011)而形成。)而形成。 在这种编码中各位的在这种编码中各位的“1” 不表示一个固定的十进制数值不表示一个固定的十进制数值 ,因而不直观。,因而不直观。 它也是一种对它也是一种对9的自补码。的自补码。 00000010、11011111为为 非法码。非法码。 2.4.2 十进制数串十进制数串 (1)非压缩的十进制数串)非压缩的十进制数串 规定:规定:一个字节存放一个十进制数或符号的一个字节存放一个
56、十进制数或符号的ASCII码。码。 分为:分为:前分隔式数字串和后嵌入式数字串前分隔式数字串和后嵌入式数字串。 前分隔式数字串:前分隔式数字串:符号位占用单独一个字节,符号位占用单独一个字节, 放在放在 数值位之前,正号对应的数值位之前,正号对应的ASCII码为码为2BH,负号对应负号对应 的的ASCII码为码为2DH。 后嵌入式数字串:后嵌入式数字串:符号位不单独占用一个字节,而是符号位不单独占用一个字节,而是 嵌入到最低一位数字里边去。嵌入到最低一位数字里边去。 若数串为正,则最低一位数字若数串为正,则最低一位数字09的的ASCII码不变(码不变(30H 39H);); 若数串为负,将最低
57、数值加若数串为负,将最低数值加40H ,此时数字,此时数字09的的ASCII 码变为码变为70H79H。 返回返回 (2)压缩的十进制数串)压缩的十进制数串:一个字节可存放两位一个字节可存放两位BCD 码表示的十进制数,既节省了存储空间,又便于直码表示的十进制数,既节省了存储空间,又便于直 接进行十进制算术运算。接进行十进制算术运算。 主存中,一个压缩的十进制数串占用连续的多个字节,主存中,一个压缩的十进制数串占用连续的多个字节, 每位数字仅占半个字节,其值常用每位数字仅占半个字节,其值常用8421码表示。码表示。 符号位也占半个字节,并存放在最低数值位之后,通常符号位也占半个字节,并存放在最
58、低数值位之后,通常 用用CH(1100)表示正号,表示正号,DH(1101)表示负号。表示负号。 规定:规定:数字的个数加符号位之和必须为偶数;当和为奇数字的个数加符号位之和必须为偶数;当和为奇 数时,应在最高数值位之前补数时,应在最高数值位之前补0H(即第一个字节的高半即第一个字节的高半 字节为字节为“0000”)。)。 【例例】-39 =(0000 0011 1001 1101)8421 【例例】+123 =(0001 0010 0011 1100)8421 返回返回 2.4.2 十进制数串(续)十进制数串(续) 2.6 数据校验码数据校验码 数据校验码:数据校验码:能够发现能够发现 错误
59、或能够自动纠正错错误或能够自动纠正错 误的数据编码,又称之误的数据编码,又称之 为为“检错纠错编码检错纠错编码”。 码距:码距:任何一种编码都任何一种编码都 由许多由许多“码字码字”构成,构成, 任意两个码字之间最少任意两个码字之间最少 变化的二进制位数为数变化的二进制位数为数 据校验码的码距。据校验码的码距。 返回返回 【例例】用位二进制表示用位二进制表示 16种状态,则有种状态,则有16个不同个不同 的码字,此时码距为的码字,此时码距为1, 即两个码字之间最少仅有即两个码字之间最少仅有 一个二进制位不同,如一个二进制位不同,如 0000与与0001之间。之间。 该编码没有检错能力,该编码没
60、有检错能力, 因为当某一个合法码字中因为当某一个合法码字中 有一位或几位出错,就变有一位或几位出错,就变 成为另一个合法码字了。成为另一个合法码字了。 2.6.1 奇偶校验码奇偶校验码 (Odd Even Parity) (1)奇偶校验奇偶校验 奇偶校验码:奇偶校验码:是一种最简单的数据校验码,它是一种最简单的数据校验码,它 的码距等于的码距等于2,可以检测出一位错误(或奇数个,可以检测出一位错误(或奇数个 码错误)、但不能确定出错的位置;不能检测码错误)、但不能确定出错的位置;不能检测 出偶数个码的错误。出偶数个码的错误。 校验码:校验码:由若干位有效信息(如一个字节),由若干位有效信息(如
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 服务营销学大纲与教案(第3版) 课程教学实施计划2学分
- 2025年泰州货运资格证考试题库
- 环境科学中的水污染控制试题集及答案解析
- 2025年陇南货运资格证考试题
- 2025年黄冈道路货运输从业资格证模拟考试题库
- 化学工程与工艺专业理论试题集萃
- 2025年长沙货运从业资格证模拟考试试题及答案大全
- 七年级生物上册 1.2.2《生物学研究的基本方法》教学设计1 (新版)北师大版
- 农业技术与现代农业发展题库
- 2025届山东省济南市一模生物试题(原卷版+解析版)
- 2024年云南省中考物理真题含解析
- 后勤岗位招聘面试题及回答建议
- 完整初一历史上学期记忆时间轴
- 二零二四年度美团共享单车服务协议
- 《农村普惠金融发展研究的国内外文献综述》4500字
- 渔光互补光伏发电项目反事故及预防措施
- 农业昆虫学-形考测试四-国开(ZJ)-参考资料
- 中式烹调师理论知识测试题与参考答案
- 家园的治理:环境科学概论学习通超星期末考试答案章节答案2024年
- 2022年高中学业水平考试政治历史地理试题及答案
- 人工肩关节置换(反肩)
评论
0/150
提交评论