计算机组成原理2-数据表示.ppt_第1页
计算机组成原理2-数据表示.ppt_第2页
计算机组成原理2-数据表示.ppt_第3页
计算机组成原理2-数据表示.ppt_第4页
计算机组成原理2-数据表示.ppt_第5页
已阅读5页,还剩41页未读 继续免费阅读

下载本文档

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

文档简介

数据表示,计算机中数据的表示方法 数值数据:表示数的大小 非数值数据:(符号和文字),计数制基础,基数(Radix):是指该进位制中允许选用的基本数码的个数。 权(Weight):每个数码所表示的数值等于该数码乘以一个与数码所在位有关的常数,这个常数叫“位权”。 简称“权”,权的大小是以基数为底,数码所在位置的序号为指数的整数次幂。 二十进制转换 十二进制转换,1、整数 规则:连续“除2取余,直到0” 例:29D =( )B 2、小数 规则:连续“乘2取整,直到0” 例:0.375D =( )B,真值和机器数,真值 用正负符号加绝对值表示的数值称为真值。 如:+0.1011 -11001 机器数 在计算机中使用的,连同数符一起数字化了的数,称为机器数。 如:0.1011 111001 机器数的形式 原码、反码、补码、移码,机器数的编码格式,1 原码表示法 将符号位数值化,数码位保持不变 小数原码的数学定义: 整数原码的数学定义:,X,原,X 0 X 1,1 - X =1+|X| -1 X 0,X,原,X 0 X 2n,2 n -X = 2 n +|X| -2n X 0,1.1111111 -(1-2-7),0.1111111 (1-2-7),0,1.0000001,0.0000001,11111111 -(27-1),01111111 (27-1),0,原码性质,0可分+0和-0。 +0 为 000 -0为 100 符号和数值无关 比较直观,但在电路设计时,需要对最高位和其他位分别处理。,补码表示法,对于“模”的理解 1、“模”是指任何大于模的数值都可以将模的整数倍丢掉,而不会造成错误 2、利用模可以将减法转换成加法,补码定义,纯小数的补码可定义为:x0x1 x2. xn 模为2,X,补,X 1 X 0,2+X =2-|X| -1 X 0,X,补,X 2nX 0,2n+1+X = 2n+1-|X| - 2n X 0,纯整数的补码可定义为:模为2n+1,X=-0.1011,求补码 2-|X| =2-0.1011=10.0000-0.1011=1.0101 X=-1的补码 2-|X| =2-1.0000=10.0000-1.0000=1.0000,模为16,0000,0001.,0111,1000,0000,0001.,0111,-1000,1001,1111,-8,-7,-1,1,7,把负数映射到正数区域,使减法转化为加法, 最高位可以参加运算,补码的优势,1、满足(-x)+(+x)=0 (-6)+(+6)=0110+1010=0000,0110,+1010,10000,补码的优势,容易区分正负数 最高位与其他位一样参加计算 An-1*(-2n-1)+An-2*2n-2+A2*22+A1*21+A0*20 求补码1100的十进制数 1*(-2n-1)+An-2*2n-2+A2*22+A1*21+A0*20,1*(-23)+1*22+0*21+0*20=-4,补码的优势,对负数正数的扩展都是简单的复制最高位。 0001 00000001 1100 11111100 =-128+64+32+16+8+4=-4,补码的优势,负数补码的求法:符号位为1,数值部分求反加1 -2的四位而进制补码 +2=0010 取反 =1101 加1 =1110 用小数表示-1,补码性质,补码没有正零和负零之分 +0补 = 0.000 - 0补 1.111 + 0.001 = 0.000 = +0补 符号位既表示数值又表示符号 - 1补 = 1.000 补码可以取到负方向最值,取反加1,反码表示法,纯小数(x0. x1 x2. xn )的反码可定义为:,X,反,X 1X 0,(2 - 2-n)+X -1X 0,纯整数(x0 x1 x2. xn )的反码可定义为:,X,反,X 0 X (2n),(2n+1 - 1)+X -2n X 0,计算方法:正数与原码同,负数符号为1,尾数变反 例:x = 0.1011 x = - 0.1101,1、定义: X移 = 2n + X 2nX-2n 即无论X是正还是负,一律加上2n,称2n为基数。 2、移码与补码的关系是:真值是正数时,移码是补码的最高位加1;真值是负数时,移码是补码的最高位减1。也就是把补码的符号位变为其反码即可。即 例2.21 X=1001 X补=01001 可求得X移=11001 X=-1001 X补=10111 可求得X移=00111,移(增)码表示法,移(增)码表示法,移码与真值的关系,X e, X e移,3、移码有如下性质: (1) 在移码表示法中,0的移码是唯一的, 整数0 +0移= 2n + 000 = 1000 -0移= 2n - 000 = 1000 (2) 机器0的形式为000,它所表示的真值是X移所能表示的数中最小的数。 即X移=000,其对应的真值是X=0-2n=-2n。 (3) 移码的最高位是符号位,但其表示的意义与原码和补码表示的意义相反。符号为0时,表示负数;符号为1,表示正数。,移(增)码表示法,3、移码有如下性质: (4) 移码一般只进行加减运算,运算后需要对结果进行修正,修正量为2n,即要对结果的符号位取反后,才能得到移码形式的结果。 (5)通过比较两个移码的大小, 就可得知其对应的真值的大小。,移(增)码表示法,小结,正数的原码、反码、补码相同 负数的原码只是符号位为1,其余数值部分同真值的数值部分 负数的反码可将其真值的数值各位取反 负数的补码可由真值的数值各位取反,末位加1得到,定点整数典型代码值,原码绝对值最大负数 - (2n 1) 11 11 原码绝对值最小负数 1 10 01 原码最小非零正数 +1 00 01 原码最大正数 2n 1 01 11 补码绝对值最大负数 - 2n 10 00 补码绝对值最小负数 1 11 11 补码最小非零正数 +1 00 01 补码最大正数 2n 1 01 11 原码定点整数表示范围 - (2n 1) (2n 1) 补码定点整数表示范围 - 2n (2n 1) 分辨率 1,带符号定点小数表示范围,代码 X0 . X1X2Xn , X0 是符号位, X1X2Xn 是尾数 原码定点小数表示范围 - (1-2-n) ( 1-2-n ) 补码定点小数表示范围 - 1 ( 1-2-n ) 分辨率 2-n,数值 数据包括无符号数和带符号数 带符号数有两种表示方法:定点数和浮点数,数值数据的表示方法,1、定点表示法,定点小数 将小数点位置固定在符号位之后。 表示范围:-(1-2-n) X +(1- 2-n ),1.1111111,0.1111111,0,定点整数,X f,X n-1,X n-2,X 1,X 0,数符,小数点位置(隐含),n位数码位,将小数点放在最低位之后 表示范围:-(2-n -1) X +(2-n -1 ),11111111 -(2-7-1),01111111 (2-7-1),0,2、浮点表示法,定点小数的缺点: 小数很小:0.000001:小数精度丢失 表示范围减小。 定点机将数缩小或扩大成为定点整数运算。精度降低,浮点数,2、浮点表示法,浮点数是小数点位置可以改变的数,包含尾数和阶码 一个尾数长n位,阶码长m位的二进制浮点数可表示为:,E f,E 1,阶符,阶码小数点位置(隐含),m位阶码数码位,E m-1,E m,Mf,M 1,M n-1,M n,n位尾数数码位,数符,尾数小数点位置(隐含),举例,将x = 2-11 ( - 0.1010)写成机器数形式。共占8位,E占3位,M占5位(各含1位符号位)。,原码,补码,1 1 1 1 1 0 1 0,1 0 1 1 0 1 1 0,IEEE754单精度浮点数,规格化:用科学表示法1230000=1.23*10e6 :小数点前面总是1 23位的尾数用规格化表示,隐藏了1。 8位阶码用移码表示:X 移=X-127,V=(-1)S * 2e-127 *1.f,0,10000001,0001100000000000000,31,22,30,8位,23位,0,求十进制数值,V=(-1)S * 2e-127 *1.f = (-1)0 * 2129-127 *1. 0001100000000000000 = 22 *1. 0001100000000000000 = 100.01100000000000000 =4.375,用四位二进制代码的不同组合来表示一个十进制数码的编码方法,称为二十进制编码,也称BCD码(Binary Coded Decimal)。 二十进制编码原理 1、二十进制的编码都采用压缩的十进制串的方法,即四个二进制位的值来表示一个十进制数码。 2、各种编码的区别在于选用哪十个状态。选择的原则是:要考虑输入和输出时转换方便;内部运算时,加、减运算规则要尽量简单;在特定场合,可能有其它一些要求。 3、从每个二进制位是否有确定的位权区分,可把二十进制编码分为有权码和无权码。,十进制数据表示,1、对于有权码,将每位的数码与相应的位权相乘,再求和,就可以得到它所代表的十进制数值。 2、8421码实现加、减运算时的修正规则: (1)4位一组二进制数,两个8421码表示的数相加之和等于或小于1001,即十进制的9时,不需要修正,在各组内,二进制代码相加,仍遵循“逢二进一”的规则。 (2)4位一组二进制数,两个8421码相加结果大于1001(即十进制9)时,则应该对该组的4位进行“加6修正”,使它向高一组产生进位。 (3)4位一组二进制数,两个8421码相加结果大于或等于10000(即十进制16),而向高一组进位时,则应该对该4位进行“加6修正”。,二十进制有权码,3、其它编码方法还有:2421码、5211码、4311码和84-2-1码( 四位二进制位的位权分别为8、4、-2、-1)等。其最方便使用的共同特点为: (1) 对于2421码、5211码、4311码,任何两个十进制数位,采用这三种编码的任何一种编码,它们相加之和等于或大于10时,其结果的最高位向左产生进位,小于10时则不产生进位。这一特点有利于实现“逢十进位”的计数和加法规则。 (2) 对于2421码、5211码、4311码和84-2-1码,任何两个十进制数位,采用这四种编码的任何一种编码,它们相加其和等于9时,即它们的二进制编码位互为反码,则其结果的四个二进制位一定是1111,能较好地体现十进制的按9 取补与二进制的按1取补的对应关系,这对减法很有用。,二十进制有权码,无权码中,用的较多的是余3码(Excess-3 code)和格雷码(Gray code),格雷码又称循环码。 1. 余3码 (1) 余3码是在8421码的基础上,把每个代码都加上0011而形成的。 (2) 普通8421码的加法器仍能为余3码加法器直接利用,具体规则如下: (A)若两个十进制数的余3码相加,如果结果不产生进位,则从所得和值去减0011,便得十进制位和的余3码。 (B)若两个十进制数的余3码相加,如果结果有进位,则其进位正确, 但需将所得和值加上0011,才求得十进制数和的余3码。,二十进制无权码,2. 格雷码 (1) 格雷码的编码规则是使相邻的两个代码,只有一个二进制位的状态不同,其余三个二进制位必须有相同状态。 (2) 优点:从一个编码变到下一个相邻编码时,只有一个位的状态发生变化,有利于保证代码变换的连续性。在模拟/数字转换和产生节拍电位等应用场合特别有用。 有关二十进制的部分编码方案列于表2.1中。,二十进制无权码,二十进制的编码的部分编码方案,ASCII码 “美国标准信息交换代码”(American Standard Code for Information Interchange),简称ASCII码。7位二进制编码,可表示27=128个字符。 ASCII码中,编码值031不对应任何可印刷(或称有字形)字符,通常称它们为控制字符,用于通信中的通信控制或对计算机设备的功能控制。编码值为32的是空格(或间隔)字符SP。编码值为127的是删除控制DEL码。其余的94个字符称为可印刷字符。,字符编码,EBCDIC码 EBCDIC码(Extended Binary Coded Decimal Interchange Code,扩展BCD码),它是8位二进制编码,可以表示256个编码状态,但只选用其中一部分。 主要用在IBM公司生产的各种机器中。,字符编码,汉字,国标码:以数字代码来区别每一汉字的。 是指我国1981年公布的国家标准信息交换用汉字编码字符集基本集,即GB2312-80码,简称国标码。是未来我国计算机系统必须遵循的基础性标准之一。 机内码 是计算机内部用来表示汉字的编码,机内码的设计与具体的系统及使用要求有密切关系。两个字节代表一个汉字。 机内码=国标码+8080H。 输入码 即汉字输入方法。

温馨提示

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

评论

0/150

提交评论