版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、西华师范大学西华师范大学1第第2章章 数据的机器层次表示数据的机器层次表示 数据是计算机加工和处理的对象,数数据是计算机加工和处理的对象,数据的机器层次表示将直接影响到计算机据的机器层次表示将直接影响到计算机的结构和性能。本章主要介绍无符号数的结构和性能。本章主要介绍无符号数和带符号数的表示方法、数的定点与浮和带符号数的表示方法、数的定点与浮点表示方法、字符和汉字的编码方法、点表示方法、字符和汉字的编码方法、数据校验码等。熟悉和掌握本章的内容,数据校验码等。熟悉和掌握本章的内容,是学习计算机原理的最基本要求。是学习计算机原理的最基本要求。 西华师范大学西华师范大学本章学习内容本章学习内容 2.
2、1 2.1 数值数据的表示数值数据的表示 2.2 2.2 机器数的定点表示和浮点表示机器数的定点表示和浮点表示 2.3 2.3 非数值数据的表示非数值数据的表示 2.4 2.4 十进制数和数串的表示十进制数和数串的表示 2.5 2.5 不同类型的数据表示举例不同类型的数据表示举例 2.6 2.6 数据校验码数据校验码2西华师范大学西华师范大学本章学习要求本章学习要求 了解:了解:无符号数与带符号数,真值和机器数等概念无符号数与带符号数,真值和机器数等概念 掌握:原码、补码、反码表示法以及三种码制与真掌握:原码、补码、反码表示法以及三种码制与真值之间的转换方法值之间的转换方法 掌握:定点数和浮点
3、数的表示范围掌握:定点数和浮点数的表示范围 理解:浮点数阶码的移码理解:浮点数阶码的移码 了解了解:IEEE754IEEE754浮点数标准浮点数标准 掌握:常见的字符编码方法(掌握:常见的字符编码方法(ASCIIASCII码)、汉字国标码)、汉字国标码、区位码、机内码码、区位码、机内码 掌握:掌握:82418241码、码、24212421码和余码和余3 3码码 掌握:奇偶校验位及其形成方法掌握:奇偶校验位及其形成方法 了解:海明校验码和循环冗余校验码了解:海明校验码和循环冗余校验码 3西华师范大学西华师范大学2022-3-254 1. 1.各种信息在计算机用数字代码表示。各种信息在计算机用数字
4、代码表示。2. 2.用数字型电信号表示数字代码。用数字型电信号表示数字代码。信息的数字化表示信息的数字化表示西华师范大学西华师范大学2022-3-255比如:比如:1.学生的学号,在没有计算机的时代管学生的学号,在没有计算机的时代管理人员为了管理方便,就会把学生进行编理人员为了管理方便,就会把学生进行编制学号。把人抽象为数字。制学号。把人抽象为数字。2.平面与立体空间。人们为了描述事物在空平面与立体空间。人们为了描述事物在空间中的位置,人们将空间进行了数字化,间中的位置,人们将空间进行了数字化,这就是坐标。这就是坐标。上述人们进行的编码,不管有意无意,上述人们进行的编码,不管有意无意,都属于都
5、属于“数字化数字化”的范畴。的范畴。西华师范大学西华师范大学2022-3-256用数字组成的代码(二进制代码)用数字组成的代码(二进制代码)例例1 用数字代码表示数值型数据用数字代码表示数值型数据 5 - 5 表示为表示为 0 101 表示为表示为 1 101 1. 在计算机中用在计算机中用数字代码数字代码表示各种信息表示各种信息 西华师范大学西华师范大学2022-3-257例例2 用数字代码表示字符用数字代码表示字符A B 表示为表示为 1000001 表示为表示为 1000010 例例3 用数字代码表示图像用数字代码表示图像西华师范大学西华师范大学2022-3-25例例4 用数字代码表示机
6、器指令用数字代码表示机器指令加法加法 从寄存器从寄存器取数取数 结果结果存入存入存储器存储器0001 000 001 例例5 用数字代码表示命令、状态用数字代码表示命令、状态 启动启动 停止停止 正在工作正在工作 工作结束工作结束 表示为表示为 00 表示为表示为 01 表示为表示为 10 表示为表示为 11 西华师范大学西华师范大学2022-3-25 计算机内部流动的电信号很单纯计算机内部流动的电信号很单纯( (二进制特点二进制特点) ),它不象无线电波或水波那样连绵不绝、大小不,它不象无线电波或水波那样连绵不绝、大小不一。在计算机内部的电信号如果测量一下的话,在一。在计算机内部的电信号如果
7、测量一下的话,在不同的时间内,它要么是最大值不同的时间内,它要么是最大值 、要么是最小值、要么是最小值(高电平和低电平),这好像我们猜一枚硬币的正(高电平和低电平),这好像我们猜一枚硬币的正反面一样,不是正就是反。而与水波类似的正弦波反面一样,不是正就是反。而与水波类似的正弦波在一点测量的话,它的值可能在最大值与最小值之在一点测量的话,它的值可能在最大值与最小值之间的任何一个数字上。就像一艘漂在海上的小木船间的任何一个数字上。就像一艘漂在海上的小木船上,木船不停地随着波浪上上下下。如果让您猜一上,木船不停地随着波浪上上下下。如果让您猜一下木船现在的非常精确的海拔高度,您会那么有把下木船现在的非
8、常精确的海拔高度,您会那么有把握吗?握吗?9西华师范大学西华师范大学2022-3-2510 2. 在物理机制上用数字信号表示数字代码在物理机制上用数字信号表示数字代码 数字型电信号数字型电信号例例1 用电平信号表示数字代码用电平信号表示数字代码 高电平高电平 1 低电平低电平 高电平高电平 0 1 例例2 用脉冲信号表示数字代码用脉冲信号表示数字代码 有脉冲有脉冲无脉冲无脉冲 有脉冲有脉冲101实现实现并行并行操作操作实现实现串行串行操作操作+5V0V+5V西华师范大学西华师范大学2.1 数值数据的表示数值数据的表示 在计算机中,采用数字化方式来表示数在计算机中,采用数字化方式来表示数据,数据
9、有无符号数和带符号数之分,其据,数据有无符号数和带符号数之分,其中带符号数根据其编码的不同又有原码、中带符号数根据其编码的不同又有原码、补码和反码补码和反码3 3种形式。种形式。11西华师范大学西华师范大学2.1.1 计算机中的数值数据计算机中的数值数据 二进制数:后缀二进制数:后缀B B 八进制数:后缀八进制数:后缀Q Q 十进制数:后缀十进制数:后缀D D或省略后缀或省略后缀 十六进制数:后缀十六进制数:后缀H H12西华师范大学西华师范大学数制转换原则: 两个有理数相等两个有理数相等= 这两个有理数的整数部分、小数部这两个有理数的整数部分、小数部分分别相等,分分别相等, 因此,因此,20
10、22-3-2513 整数部分、小数部分分别进行转换整数部分、小数部分分别进行转换西华师范大学西华师范大学1. 任意进制数转换为十进制数 方法:方法:按权相加按权相加。即利用按位展开公式将。即利用按位展开公式将系数与位权值相乘后求和。系数与位权值相乘后求和。 例例1. 1. 2022-3-2514西华师范大学西华师范大学2.十进制数转换为任意进制数 整数部分:除基取余整数部分:除基取余 把被转换的十进制整数除以基数把被转换的十进制整数除以基数R R,取其余数即为,取其余数即为R R进进制整数的制整数的最低位最低位的数字。的数字。 再用基数再用基数R R去除前次所得的商,所得余数即为去除前次所得的
11、商,所得余数即为R R进制整进制整数相应位的数字。数相应位的数字。 重复,直到商为重复,直到商为0 0为止。为止。 小数部分:乘基取整小数部分:乘基取整 把被转换的十进制小数乘以基数把被转换的十进制小数乘以基数R R,取乘积的整数部,取乘积的整数部分作为分作为R R进制小数的进制小数的最高位最高位的数字。的数字。 再用基数再用基数R R乘前一步乘积的小数部分,取新的乘积的乘前一步乘积的小数部分,取新的乘积的整数部分为整数部分为R R进制小数相应位的数字。进制小数相应位的数字。 重复,直到乘积的小数部分为重复,直到乘积的小数部分为0,0,或求得所要求的位或求得所要求的位数为止。数为止。2022-
12、3-2515西华师范大学西华师范大学3. 二、八、十六进制数之间的转换因为因为16162 24 4,8 82 23 3 二转八:从小数点向左右二转八:从小数点向左右, ,三位一分组。三位一分组。 (10 011 101.0110 011 101.01)B =(235.2)QB =(235.2)Q 二转十六:从小数点向左右,四位一分组。二转十六:从小数点向左右,四位一分组。 (101 0111 1001. 01)B =(579.4)H(101 0111 1001. 01)B =(579.4)H说明:进行转换时:说明:进行转换时: 整数位数不足,不影响转换结果。整数位数不足,不影响转换结果。 小数
13、位数不足,必须补足再转换,否则出错。小数位数不足,必须补足再转换,否则出错。 2022-3-2516西华师范大学西华师范大学2.1.2 无符号数和带符号数 无符号数,就是整个机器字长的全部无符号数,就是整个机器字长的全部二进制位均表示数值位(没有符号位),二进制位均表示数值位(没有符号位),相当于数的绝对值。例如:相当于数的绝对值。例如: N N1 1=01001 =01001 表示无符号数表示无符号数9 9 N N2 2=11001 =11001 表示无符号数表示无符号数2525 机器字长为机器字长为n+1n+1位的无符号数的表示位的无符号数的表示范围是范围是0 0(2(2n+1n+1-1)
14、-1),此时二进制的最高位此时二进制的最高位也是数值位,其权值等于也是数值位,其权值等于2 2n n。若字长为若字长为8 8位,则数的表示范围为位,则数的表示范围为0 0255255。 17西华师范大学西华师范大学2.1.2 无符号数和带符号数(续) 带符号数,即正、负数。在日常生活带符号数,即正、负数。在日常生活中,我们用中,我们用“+”“+”、“-”“-”号加绝对值来号加绝对值来表示数值的大小,用这种形式表示的数表示数值的大小,用这种形式表示的数值在计算机技术中称为值在计算机技术中称为“真值真值”。 在计算机中需要把数的符号数码化。在计算机中需要把数的符号数码化。通常,约定二进制数的最高位
15、为符号位,通常,约定二进制数的最高位为符号位,“0”“0”表示正号,表示正号,“1”“1”表示负号。这种表示负号。这种在计算机中使用的表示数的形式称为在计算机中使用的表示数的形式称为机机器数器数。18西华师范大学西华师范大学2.1.2 无符号数和带符号数(续) 常见的机器数有原码、反码、补码等常见的机器数有原码、反码、补码等3 3种不同的表示形式。种不同的表示形式。 带符号数的最高位被用来表示符号位,带符号数的最高位被用来表示符号位,而不再表示数值位。前例中的而不再表示数值位。前例中的N N1 1、N N2 2 在在这里的含义变为:这里的含义变为: N N1 1=01001 =01001 表示
16、表示+9+9。 N N2 2=11001 =11001 根据机器数的不同形根据机器数的不同形式表示不同的值,如是原码则表示式表示不同的值,如是原码则表示-9-9,补码则表示补码则表示-7-7,反码则表示,反码则表示-6-6。 19西华师范大学西华师范大学2.1.3 原码表示法 原码表示法是一种最简单的机器数表原码表示法是一种最简单的机器数表示法,用最高位表示符号位,符号位为示法,用最高位表示符号位,符号位为“0”“0”表示该数为正,符号位为表示该数为正,符号位为“1”“1”表表示该数为负,数值部分与真值相同。示该数为负,数值部分与真值相同。 设 二 进 制 纯 小 数 的 原 码 形 式 为设
17、 二 进 制 纯 小 数 的 原 码 形 式 为X Xs s.X.X1 1X X2 2XXn n,字长字长n+1n+1位,其中位,其中X Xs s表示符表示符号位。号位。 例例1 1:X X1 1=0.0110, X=0.0110, X1 1 原原= =0 0.0110 .0110 X X2 2= =- -0.01100.0110, , X X2 2 原原= =1 1.0110.011020西华师范大学西华师范大学2.1.3 原码表示法(续) 设二进制纯整数的原码形式为设二进制纯整数的原码形式为X Xs sX X1 1X X2 2XXn n,其中其中X Xs s表示符号位。表示符号位。 例例2
18、 2: X X1 1=1101, X=1101, X1 1 原原= =0 011011101 X X2 2= =- -11011101, , X X2 2 原原= =1 111011101 在原码表示中,真值在原码表示中,真值0 0有两种不同的表示有两种不同的表示形式:形式: +0 +0原原= =0000000000 -0-0原原= =100001000021西华师范大学西华师范大学2.1.4 补码表示法 1. 1.模和同余模和同余 模模是指一个计量器的容量,可用是指一个计量器的容量,可用M M表示。表示。例如:一个例如:一个4 4位的二进制计数器,当计数器从位的二进制计数器,当计数器从0 0
19、计到计到1515之后,再加之后,再加1 1,计数值又变为,计数值又变为0 0。这个计。这个计数器的容量数器的容量M=2M=24 4=16=16,即模为即模为1616。由此可见,。由此可见,纯小数的模为纯小数的模为2 2,一个字长为,一个字长为n+1n+1位的纯整数的位的纯整数的模为模为2 2n+1n+1。 同余同余是指两整数是指两整数A A、B B除以同一正整数除以同一正整数M M,所得余数相同,则称所得余数相同,则称A A、B B对对M M同余,即同余,即A A、B B在在以以M M为模时是相等的,可写作为模时是相等的,可写作 A=B (mod M) A=B (mod M) 22西华师范大学
20、西华师范大学时钟正拨和倒拨 对钟表而言,对钟表而言,M=12M=12。假设:时钟停在假设:时钟停在8 8点,而现在正确的时间是点,而现在正确的时间是6 6点,这时拨点,这时拨准时钟的方法有两种:正拨和倒拨。准时钟的方法有两种:正拨和倒拨。 分针倒着旋转分针倒着旋转2 2圈,等于分针正着旋圈,等于分针正着旋转转1010圈。故有:圈。故有:-2=10 (-2=10 (mod 12) mod 12) ,即即 - -2 2和和1010同余。同余。 8-2=8+10 ( 8-2=8+10 (mod 12) mod 12) 23西华师范大学西华师范大学 根据运算时根据运算时“模模”的概念的概念 5 52
21、25 510103 3 (Mod 12Mod 12) 对于某一确定的模,某数减去一个数,可以用对于某一确定的模,某数减去一个数,可以用加上那个数的负数的补数来代替。加上那个数的负数的补数来代替。 x x补补M Mx x (Mod MMod M) 当当x0 x0时,时,M Mx x 大于大于M M,把,把M M丢掉,所以丢掉,所以xx补补x x ,即正数的补数等于其本身。,即正数的补数等于其本身。 当当x x0 0时,时,xx补补M Mx xM M|x|x|,所以负数的,所以负数的补数等于模与该数绝对值之差。补数等于模与该数绝对值之差。2022-3-2524西华师范大学西华师范大学小数补码定义:
22、 2 mod 0 x1- x 21x0 x x 补2022-3-2525 x0.1011, x补10 x10.0000+(0.1011)1.0101例:x0.1011, x补01011西华师范大学西华师范大学2022-3-2526)2 (Mod 0 x2-x 22x0 x x1nn1nn补例:x1011, x补01011整数的补码定义:52 例:x1011 x补 x100000+(1011) 10101西华师范大学西华师范大学 补码中补码中“0”0”的表示是唯一的的表示是唯一的 00补补 00补补0.000 0.000 (纯小数)纯小数) 00补补 00补补000 000 (纯整数)纯整数)
23、补码表示的最小数可以表示到补码表示的最小数可以表示到1 1或或2 2n n 对于纯小数对于纯小数 11补补2 2( (1)1)1.000 (Mod 2)1.000 (Mod 2) 对于纯整数对于纯整数 2 2n n 补补2 2n n1 1( (2 2n n) )1000 1000 (Mod Mod 2 2n n1 1)2022-3-2527特征值西华师范大学西华师范大学补码的表示范围 对于纯小数,对于纯小数,n n1 1位数据表示范围:位数据表示范围: 1 1.11111.111110 0.11111.11111(原码)即(原码)即(1(12 2n n) ) (1(12 2n n) ) 1 1
24、.00001.000010 0.11111.11111(补码)(补码) 1 1.00000.000000 0.11111.11111(补码)即(补码)即1 11 12 2n n 对于纯整数,对于纯整数,n n1 1位数据表示范围:位数据表示范围: 1 111111111110 011111 11111 (原码)即(原码)即(2(2n n1) 1) (2(2n n1)1) 100001 1000010 011111 11111 (补码)(补码) 1000001000000 011111 11111 (补码)即(补码)即2 2n n2 2n n1 1 2022-3-2528西华师范大学西华师范大学
25、 正数,数值部分与真值形式相同;正数,数值部分与真值形式相同; 负数,将真值的数值部分按位取反,且在最负数,将真值的数值部分按位取反,且在最低位上加低位上加1 1。 若 真 值 为 纯 小 数 , 它 的 补 码 形 式 为若 真 值 为 纯 小 数 , 它 的 补 码 形 式 为X Xs s.X.X1 1X X2 2XXn n,其中其中X Xs s表示符号位。表示符号位。 例5: X1=0.0110, X1补=0.0110 X2=-0.0110, X2补=1.1010补码表示:29西华师范大学西华师范大学2.补码表示(续) 若真值为纯整数,它的补码形式为若真值为纯整数,它的补码形式为X Xs
26、 sX X1 1X X2 2XXn n,其中其中X Xs s表示符号位。表示符号位。 例6:X1=1101, X1补=01101 X2=-1101, X2补=1001130西华师范大学西华师范大学 当当X X为正数时,为正数时, XX补补=XX原原= =X X 当当X X为负数时,由为负数时,由 XX原原转换为转换为 XX补补的方法:的方法: XX原原除掉符号位外的各位取反加除掉符号位外的各位取反加“1”“1”。 自低位向高位,尾数的第一个自低位向高位,尾数的第一个“1”“1”及其及其右部的右部的“0”“0”保持不变,左部的各位取反,保持不变,左部的各位取反,符号位保持不变。符号位保持不变。
27、例例7 7: XX原原 =1.1110011000 =1.1110011000 XX补补 = =1 1. .000110000110100010003.由真值、原码转换为补码31不变不变不变不变变反变反西华师范大学西华师范大学2.1.5 反码表示法 反码表示法与补码类似,反码表示法与补码类似,正数正数: :数值部分与真值形式相同;数值部分与真值形式相同;负数负数: :将真值的数值部分按位取反。将真值的数值部分按位取反。 若真值为纯小数,它的反码形式为若真值为纯小数,它的反码形式为X Xs s.X.X1 1X X2 2XXn n,其中其中X Xs s表示符号位。表示符号位。 例例9 9:X X1
28、 1=0.0110=0.0110, X X1 1 反反= =0 0.0110.0110 X X2 2= =- -0.01100.0110, X X2 2 反反= =1 1.1001.100132西华师范大学西华师范大学2.1.5 反码表示法(续) 若真值为纯整数,它的反码形式为若真值为纯整数,它的反码形式为X Xs sX X1 1X X2 2XXn n,其中其中X Xs s表示符号位。表示符号位。 例例1010:X X1 1=1101=1101, X X1 1 补补= =0 011011101 X X2 2= =- -11011101, X X2 2 补补= =1 100100010 在反码表
29、示中,真值在反码表示中,真值0 0也有两种不同的表也有两种不同的表示形式:示形式: +0 +0反反= =0000000000 -0 -0反反= =111111111133西华师范大学西华师范大学 1. 1.比较比较 对于正数它们都等于真值本身,而对于负数各有对于正数它们都等于真值本身,而对于负数各有不同的表示。不同的表示。 最高位都表示符号位,补码和反码的符号位可作最高位都表示符号位,补码和反码的符号位可作为数值位的一部分看待,和数值位一起参加运算;为数值位的一部分看待,和数值位一起参加运算;但原码的符号位不允许和数值位同等看待,必须但原码的符号位不允许和数值位同等看待,必须分开进行处理。分开
30、进行处理。 对于真值对于真值0 0,原码和反码各有两种不同的表示形,原码和反码各有两种不同的表示形式,而补码只有唯一的一种表示形式。式,而补码只有唯一的一种表示形式。 原码、反码表示的正、负数范围相对零来说是对原码、反码表示的正、负数范围相对零来说是对称的;但称的;但补码负数补码负数表示范围比正数表示范围宽,表示范围比正数表示范围宽,能多表示一个最负的数能多表示一个最负的数(绝对值最大的负数),(绝对值最大的负数),其值等于其值等于-2-2n n(纯整数)或纯整数)或-1-1(纯小数)。(纯小数)。2.1.6 三种码制的比较与转换34西华师范大学西华师范大学真值与3种机器数间的对照35真值真值
31、 X X 真值真值 X X 十进制十进制 二进制二进制 XX 原原XX 反反XX 补补 十进制十进制 二进制二进制 XX 原原 XX 反反 XX 补补 +0+0 +1+1 +2+2 +3+3 +4+4 +5+5 +6+6 +7+7 +8+8 +000+000 +001+001 +010+010 +011+011 +100+100 +101+101 +110+110 +111+111 - - 00000000 00010001 00100010 00110011 01000100 01010101 01100110 01110111 - - - -0 0 - -1 1 - -2 2 - -3 3
32、 - -4 4 - -5 5 - -6 6 - -7 7 - -8 8 - -000000 - -001001 - -010010 - -011011 - -100100 - -101101 - -110110 - -111111 - -10001000 10001000 10011001 10101010 10111011 11001100 11011101 11101110 11111111 - - 11111111 1111110 0 11110101 1101100 0 1 1011011 1011010 0 10100101 1001000 0 - - 00000000 111111
33、1 1 11111010 1101101 1 1 11 10000 1011011 1 10101 10 0 1001001 1 10001000 西华师范大学西华师范大学2.转换转换 如果已知机器的字长,则机器数的位数应如果已知机器的字长,则机器数的位数应补够相应的位。例如,设机器字长为补够相应的位。例如,设机器字长为8 8位,则:位,则: X X1 1=1011 X=1011 X2 2= =- -1011 1011 X X1 1 原原= =0 00001011 0001011 X X2 2 原原= =1 10001011 0001011 X X1 1 补补= =0 00001011 000
34、1011 X X2 2 补补= =1 11110101 1110101 X X1 1 反反= =0 00001011 0001011 X X2 2 反反= =1 111101001110100 X X3 3=0.1011 X=0.1011 X4 4= =- -0.1011 0.1011 X X3 3 原原= =0 0.1011000 .1011000 X X4 4 原原= =1 1.1011000 .1011000 X X3 3 补补= =0 0.1011000 .1011000 X X4 4 补补= =1 1.0101000 .0101000 X X3 3 反反= =0 0.1011000
35、.1011000 X X4 4 反反= =1 1.0100111.010011136西华师范大学西华师范大学2.2 机器数的定点表示与浮点表示 计算机在进行算术运算时,需要指出计算机在进行算术运算时,需要指出小数点的位置。根据小数点的位置是否小数点的位置。根据小数点的位置是否固定,在计算机中有两种数据格式:定固定,在计算机中有两种数据格式:定点表示和浮点表示。点表示和浮点表示。37西华师范大学西华师范大学2.2.1 定点表示法 在定点表示法中约定:所有数据的小在定点表示法中约定:所有数据的小数点位置固定不变。数点位置固定不变。1.1.定点小数定点小数 小数点的位置固定在最高有效数位之小数点的位
36、置固定在最高有效数位之前,符号位之后前,符号位之后,记作,记作X Xs s.X.X1 1X X2 2XXn n,这这个数是一个纯小数。定点小数的小数点个数是一个纯小数。定点小数的小数点位置是隐含约定的,小数点并不需要真位置是隐含约定的,小数点并不需要真正地占据一个二进制位。正地占据一个二进制位。38西华师范大学西华师范大学定点小数表示范围图图2-2 2-2 定点小数格式定点小数格式 当当X Xs s=0=0,X X1 1X Xn n=1=1时,时,X X为最大正数。为最大正数。 X X最大正数最大正数 = =1-21-2- -n n 当当X Xn n=1=1,X Xs sX Xn-1n-1=0
37、=0时,时,X X为最小正数。为最小正数。 X X最小正数最小正数 = =2 2- -n n39n位数值位数符小数点位置(隐含)XsX1Xn-1Xn西华师范大学西华师范大学定点小数表示范围(续) 当当X Xs s=1=1,表示表示X X为负数,原码和补码的为负数,原码和补码的表示范围有一些差别。表示范围有一些差别。 若机器数为原码表示,当若机器数为原码表示,当X Xs sX Xn n均等均等于于1 1时,时,X X为绝对值最大的负数。为绝对值最大的负数。 X X绝对值最大负数绝对值最大负数= =-(1-2-(1-2- -n n) ) 若机器数为补码表示,当若机器数为补码表示,当X Xs s=1
38、=1,X X1 1X Xn n均等于均等于0 0时,时,X X为绝对值最大的负数。为绝对值最大的负数。 X X绝对值最大负数绝对值最大负数= =-1-140西华师范大学西华师范大学 若机器字长有若机器字长有n+1n+1位,则有:位,则有: 原码定点小数表示范围:原码定点小数表示范围: -(1-2-(1-2- -n n) )(1-2(1-2-n-n) ) 补码定点小数表示范围:补码定点小数表示范围: -1-1(1-2(1-2- -n n) ) 若机器字长有若机器字长有8 8位,则有:位,则有: 原码定点小数表示范围:原码定点小数表示范围: - - 补码定点小数表示范围:补码定点小数表示范围: -
39、1 -1定点小数表示范围(续)41128127128127128127西华师范大学西华师范大学2.2.定点整数定点整数 定点整数即纯整数,定点整数即纯整数,小数点位置隐含小数点位置隐含固定在最低有效数位之后固定在最低有效数位之后,记作,记作X Xs sX X1 1X X2 2XXn n。图图2-3 2-3 定点整数格式定点整数格式42XsX1Xn-1n位数值位数符小数点位置(隐含)Xn西华师范大学西华师范大学若机器字长有若机器字长有n+1n+1位,则有:位,则有:原码定点整数的表示范围:原码定点整数的表示范围: -(2-(2n n-1)-1)(2(2n n-1)-1)补码定点整数的表示范围:补
40、码定点整数的表示范围: -2-2n n (2(2n n-1)-1)若机器字长有若机器字长有8 8位,则有:位,则有:原码定点整数表示范围:原码定点整数表示范围: -127 -127127127补码定点整数表示范围:补码定点整数表示范围: -128 -128127127定点整数表示范围43西华师范大学西华师范大学 小数点的位置根据需要而浮动,这就是小数点的位置根据需要而浮动,这就是浮点数。浮点数。 N=M N=Mr rE E 式中:式中:r r为浮点数阶码的底,与尾数的为浮点数阶码的底,与尾数的基数相同,通常基数相同,通常r=2r=2。E E和和M M都是带符号数,都是带符号数,E E叫做阶码,
41、叫做阶码,M M叫做尾数。在大多数计算机中叫做尾数。在大多数计算机中,尾数为纯小数,常用原码或补码表示;阶,尾数为纯小数,常用原码或补码表示;阶码为纯整数,常用移码或补码表示。码为纯整数,常用移码或补码表示。2.2.2 浮点表示法 44西华师范大学西华师范大学 图图2-5 2-5 浮点数的一般格式浮点数的一般格式 浮点数的底是隐含的,在整个机器数浮点数的底是隐含的,在整个机器数中不出现。阶码的符号位为中不出现。阶码的符号位为e es s,阶码的大阶码的大小反映了在数小反映了在数N N中小数点的实际位置;尾中小数点的实际位置;尾数的符号位为数的符号位为m ms s,它是整个浮点数的符号它是整个浮
42、点数的符号位,表示了该浮点数的正负。位,表示了该浮点数的正负。浮点数的一般格式45尾数部分M阶码部分Eesemsmk位n位1位1位西华师范大学西华师范大学浮点数的规格化表示浮点数采用规格化表示方法的目的:浮点数采用规格化表示方法的目的: 为了提高运算精度,充分利用尾数的有为了提高运算精度,充分利用尾数的有效数位,尽可能占满位数,以保留更多的效数位,尽可能占满位数,以保留更多的有效数字。有效数字。为了浮点数表示的唯一性。为了浮点数表示的唯一性。 例:例:0.1001000.1001002 23 30.0010010.0010012 25 5 为达到上述目的,需要尽可能去掉尾数中为达到上述目的,需
43、要尽可能去掉尾数中的前置的前置“0” 0” 。即尽量使小数点后第一位。即尽量使小数点后第一位为为“1”1”。46西华师范大学西华师范大学47规格化(1) 规格化数的定义规格化数的定义(2) 规格化数的判断规格化数的判断R = 2 |M| 1 12M0真值真值原码原码补码补码反码反码规格化形式规格化形式M 0规格化形式规格化形式真值真值原码原码补码补码反码反码0.1 0.1 0.1 0.1 原码原码 不论正数、负数,第一数位为不论正数、负数,第一数位为1补码补码 符号位和第符号位和第 一数位不同一数位不同 Mf M11 0.1 1.1 1.0 1.0 西华师范大学西华师范大学2022-3-254
44、8特例S = = 0.100 0 12 补 不是规格化的数12S = 1 1补 是规格化的数S补 = 1 . 1 0 0 0S补 = 1 . 0 0 0 0 例:S补0.1101101 和 S补1.0101101 是规格化数S补0.0101101 和 S补1.1101101 不是规格化数西华师范大学西华师范大学浮点数的表示范围 以阶码与尾数均采用原码为例:以阶码与尾数均采用原码为例:数数符符阶阶符符阶码阶码(m位位)尾数尾数(n位位)真真 值值最小正数最小正数0111110001最大正数最大正数0011111111最大负数最大负数(绝对值最小绝对值最小)1111110001最小负数最小负数(绝
45、对值最大)绝对值最大)1011111111)12m(2n2)12m(2n2-1)12m(2n2)1(2nm22-1西华师范大学西华师范大学浮点数的典型值 50 以阶码与尾数均采用补码为例:以阶码与尾数均采用补码为例:西华师范大学西华师范大学 将 写成二进制在定点机和浮点机中的机器数形式。其中定点机为字长10位的原码格式;浮点机尾数10 位,数符 1 位,阶码 5 位(含1位阶符)。19128二进制形式二进制形式定点表示定点表示浮点规格化形式浮点规格化形式x原原 = 1, 0010; 0. 100110000 x补补 = 1, 1110; 0. 100110000 x反反 = 1, 1101;
46、0. 100110000定点机中定点机中浮点机中浮点机中00 x = 0.0010011x = 0.0010011 x = 0.10011000002-10 x原原 = x补补 = x反反 = 0.0010011000练习解:解:设设 x = +19128西华师范大学西华师范大学52x = 111010 000例将 58 表示成二进制定点数和浮点数,并写出它在定点机和浮点机中的三种机器数的形式(其他要求同上例)。解:设 x = 58二进制形式定点表示浮点规格化形式x原 = 1, 000111010 x补 = 1, 111000110 x反 = 1, 111000101x原 = 0, 0110;
47、 1. 111010000 x补 = 0, 0110; 1. 000110000 x反 = 0, 0110; 1. 000101111定点机中浮点机中x = 111010 x = (0.1110100000) 2110西华师范大学西华师范大学浮点数的阶码采用移码的原因浮点数的阶码采用移码的原因 便于比较浮点数的大小。阶码大的,其对应的便于比较浮点数的大小。阶码大的,其对应的真值就大,阶码小的,对应的真值就小。真值就大,阶码小的,对应的真值就小。 简化机器中的判零电路。当阶码全为简化机器中的判零电路。当阶码全为0 0,尾数也,尾数也全为全为0 0时,表示机器零。时,表示机器零。532.2.3 移
48、码表示法西华师范大学西华师范大学2.2.3 移码表示法 移码就是在真值移码就是在真值X X上加一个常数(偏置值),相上加一个常数(偏置值),相当于当于X X在数轴上向正方向平移了一段距离,这就是在数轴上向正方向平移了一段距离,这就是“移码移码”一词的来由。一词的来由。 XX移移= =偏置值偏置值+ +X X 对于字长对于字长8 8位的定点整数,偏置值为位的定点整数,偏置值为2 27 7。 例例1111:X=1011101X=1011101 X X移移= =2 27 7+ +X=10000000+1011101=X=10000000+1011101=1 110111011011101 X X补补
49、= =0 010111011011101 例例1212:X=X=- -10111011011101 X X移移= = 2 27 7 + +X=10000000-1011101=X=10000000-1011101=0 001000110100011 X X补补= =1 10100011010001154西华师范大学西华师范大学偏置值为27的移码、补码和真值之间的关系 55西华师范大学西华师范大学偏置值为2n 的移码的特点 在移码中,最高位为在移码中,最高位为“0”“0”表示负数,最高位表示负数,最高位为为“1”“1”表示正数。表示正数。 移码为全移码为全0 0时,它所对应的真值最小,为全时,它
50、所对应的真值最小,为全1 1时,时,它所对应的真值最大。它所对应的真值最大。 真值真值0 0在移码中的表示形式是唯一的,即在移码中的表示形式是唯一的,即+0+0移移=-0=-0移移= =10001000。 移码把真值映射到一个正数域,所以移码把真值映射到一个正数域,所以可将移码可将移码视为无符号数,直接按无符号数规则比较大小。视为无符号数,直接按无符号数规则比较大小。 同一数值的移码和补码除最高位相反外,其他同一数值的移码和补码除最高位相反外,其他各位相同各位相同。西华师范大学西华师范大学图图2-6 IEEE 754标准的浮点数格式标准的浮点数格式 2.2.5 IEEE 754标准浮点数57类
51、型类型 数符数符 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 Emsm阶码部分,用移码表示尾符尾数数值位尾数部分,用原码表示西华师范大学西华师范大学 以短浮点数为例:以短浮点数为例: 最高位为数符位;其后是最高位为数符位;其后是8 8位阶码,以位阶码,以2 2为底,阶码的偏置值为为底,阶
52、码的偏置值为127127;其余;其余2323位是尾数。位是尾数。 为了使尾数部分能表示更多一位的有效为了使尾数部分能表示更多一位的有效值,值,IEEE754IEEE754采用采用隐含尾数最高数位隐含尾数最高数位1 1(即这(即这一位一位1 1不表示出来)的方法,因此尾数实际上不表示出来)的方法,因此尾数实际上是是2424位。应注意的是,位。应注意的是,隐含的隐含的1 1是一位整数是一位整数(即位权为(即位权为2 20 0),在浮点格式中表示出来的,在浮点格式中表示出来的2323位尾数是纯小数,并用原码表示。位尾数是纯小数,并用原码表示。58西华师范大学西华师范大学 以短浮点数格式存储该数。以短
53、浮点数格式存储该数。 符号位符号位=0 阶码阶码=10000101 尾数尾数=1001000100000000000000059例例13:将:将(100.25)10转换成短浮点数格式转换成短浮点数格式。短浮点数代码为短浮点数代码为 0;100 0010 1;100 1000 1000 0000 0000 0000 表示为十六进制的代码:表示为十六进制的代码:42C88000H。 十进制数十进制数二进制数二进制数: (100.25)10=(1100100.01)2 非规格化数非规格化数规格化数规格化数: 1100100.01=1.1001000126 计算移码表示的阶码(偏置值阶码真值)计算移码
54、表示的阶码(偏置值阶码真值) 1111111+110=10000101西华师范大学西华师范大学 十六进制十六进制二进制形式,并分离出符号位、二进制形式,并分离出符号位、阶码和尾数。阶码和尾数。 C1C90000H= 1;10000011;1001001000000000000000060阶码阶码符号位符号位尾数尾数例例14:把短浮点数:把短浮点数C1C90000H转换成为十进制转换成为十进制数数西华师范大学西华师范大学 计算出阶码真值(移码偏置值)计算出阶码真值(移码偏置值) 10000011-1111111=100 以规格化二进制数形式写出此数以规格化二进制数形式写出此数 1.1001001
55、24 写成非规格化二进制数形式写成非规格化二进制数形式 11001.001 转换成十进制数,并加上符号位。转换成十进制数,并加上符号位。 (11001.001)2=(25.125)10 所以,该浮点数所以,该浮点数=-25.12561西华师范大学西华师范大学1.1.定点、浮点表示法的区别定点、浮点表示法的区别数值的表示范围数值的表示范围 假设定点数和浮点数的字长相同,浮假设定点数和浮点数的字长相同,浮点表示法所能表示的数值范围将远远大于点表示法所能表示的数值范围将远远大于定点数。定点数。精度精度 对于字长相同的定点数和浮点数来说,对于字长相同的定点数和浮点数来说,浮点数虽然扩大了数的表示范围,
56、但这正浮点数虽然扩大了数的表示范围,但这正是以降低精度为代价的,也就是数轴上各是以降低精度为代价的,也就是数轴上各点的排列更稀疏了。点的排列更稀疏了。2.2.2.2.6 6 定点、浮点表示法和定点、浮点计算机定点、浮点表示法和定点、浮点计算机62西华师范大学西华师范大学数的运算数的运算 浮点运算要比定点运算复杂得多。浮点运算要比定点运算复杂得多。溢出处理溢出处理 在定点运算时,当运算结果超出数的表在定点运算时,当运算结果超出数的表示范围,就发生溢出。而在浮点运算时,示范围,就发生溢出。而在浮点运算时,运算结果超出尾数的表示范围却并不一定运算结果超出尾数的表示范围却并不一定溢出,只有当阶码超出所
57、能表示的范围时,溢出,只有当阶码超出所能表示的范围时,才发生溢出。才发生溢出。1.1.定点、浮点表示法的区别(续)定点、浮点表示法的区别(续)63西华师范大学西华师范大学2. .定点机与浮点机定点机与浮点机通常可以将计算机分为几档:通常可以将计算机分为几档:定点机定点机 以定点运算为主,浮点运算是通过软件以定点运算为主,浮点运算是通过软件来实现的。来实现的。定点机浮点运算部件定点机浮点运算部件 浮点运算部件是专门用于对浮点数进行运浮点运算部件是专门用于对浮点数进行运算的部件。算的部件。浮点机浮点机 具有浮点运算指令和基本的浮点运算器。具有浮点运算指令和基本的浮点运算器。64西华师范大学西华师范
58、大学2.3 非数值数据的表示 非数值数据,又称为字符数据,通常非数值数据,又称为字符数据,通常是指字符、字符串、图形符号和汉字等各是指字符、字符串、图形符号和汉字等各种数据,它们不用来表示数值的大小,一种数据,它们不用来表示数值的大小,一般情况下不对它们进行算术运算。般情况下不对它们进行算术运算。65西华师范大学西华师范大学2.3.1 字符和字符串的表示1.1.ASCIIASCII字符编码字符编码 常见的常见的ASCIIASCII码用七位二进制表示一个字符,码用七位二进制表示一个字符,它包括它包括1010个十进制数字(个十进制数字(0 09 9)、)、5252个英文大个英文大写和小写字母(写和
59、小写字母(A AZ Z,a az z)、)、3434个专用符号个专用符号和和3232个控制符号,共计个控制符号,共计128128个字符。个字符。 在计算机中,通常用一个字节来存放一个字在计算机中,通常用一个字节来存放一个字符。符。 在在ASCIIASCII码表中,数字和英文字母都是按顺码表中,数字和英文字母都是按顺序排列的,只要知道其中一个的二进制代码,序排列的,只要知道其中一个的二进制代码,不要查表就可以推导出其他数字或字母的二进不要查表就可以推导出其他数字或字母的二进制代码。制代码。66西华师范大学西华师范大学ASCII字符编码表67西华师范大学西华师范大学2.字符串的存放 字符串是指一串
60、连续的字符。例如,字字符串是指一串连续的字符。例如,字符串符串IF X0 THEN READ (C)IF X0 THEN READ (C)。 向量存放法在存储器中占用一片连续的向量存放法在存储器中占用一片连续的空间,每个字节存放一个字符代码,字符空间,每个字节存放一个字符代码,字符串的所有元素(字符)在物理上是邻接的。串的所有元素(字符)在物理上是邻接的。在字长为在字长为3232位的存储器,每一个主存单元位的存储器,每一个主存单元可存放可存放4 4个字符,整个字符串需个字符,整个字符串需5 5个主存单个主存单元。在每个字节中实际存放的是相应字符元。在每个字节中实际存放的是相应字符的的ASCII
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 店面租房合同(2篇)
- 爆破工程合同范本示例
- 绿色水稻购销协议
- 云计算配件销售协议
- 二零二四年度软件开发合同标的及服务内容
- 核桃果实采购协议格式
- 可靠活动服务合同
- 会议服务合同协议书的争议解决
- 招标货物运输合作项目招标
- 挖掘机采购合同文本
- 4.5 多边形和圆的初步认识 课件-北师大版数学七年级上册
- 电子政务的运营理念为主题论文电子政务的理念及其全球发展概况
- 《大数据思维与决策》考试复习题库(含答案)
- 脑瘫送教上门教案20次
- 建筑工程概预算课程设计 计算基础部分预算书
- 中职学校《机械制图》重庆高考知识点总复习(云天课件)
- 脑出血抢救处理的SOP
- QC成果提高桥面铺装施工质量三
- 电气控制及可编程控制技术
- 老年社会工作PPT全套教学课件
- 中医治疗食管癌课件
评论
0/150
提交评论