第二章 数的机器级表示.pptxVIP

  1. 1、本文档共72页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  5. 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  6. 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  7. 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  8. 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
第二章 数的机器级表示

Ch2: Data Representation数据的机器级表示第一讲 数值数据的表示第二讲 非数值数据表示及 数据的宽度、存储排列、纠/检错第一讲:数值数据的表示主 要 内 容定点数的表示进位计数制定点数的二进制编码原码、补码、移码表示定点整数的表示无符号整数、带符号整数浮点数格式和表示范围浮点数的规格化IEEE754浮点数标准单精度浮点数、双精度浮点数特殊数的表示形式C语言程序中的整数类型、浮点数类型十进制数表示信息的二进制编码计算机的外部信息与内部机器级数据 机器级数据分两大类:数值数据:无符号整数、带符号整数、浮点数(实数)、十进制数非数值数据:逻辑数(包括位串)、西文字符和汉字计算机内部所有信息都用二进制(即:0和1)进行编码用二进制编码的原因:制造二个稳定态的物理器件容易二进制编码、计数、运算规则简单正好与逻辑命题对应,便于逻辑运算,并可方便地用逻辑电路实现算术运算真值和机器数机器数:用0和1编码的计算机内部的0/1序列真值:机器数真正的值,即:现实中带正负号的数C语言中哪些类型是数值数据?哪些是非…?数值数据的表示数值数据表示的三要素进位计数制采用定点还是浮点表示如何编码即:要确定一个数值数据的值必须先确定这三个要素。例如,机器数值是多少?进位计数制十进制、二进制、十六进制、八进制数及其相互转换定/浮点表示(解决小数点问题)定点整数、定点小数浮点数(可用一个定点小数和一个定点整数来表示)定点数的编码(解决正负号问题)原码、补码、反码、移码 (反码很少用)答案是:不知道!1.01 x2-1+4+1.11 x23+4 移码:011 111补码: 111 011 ?简化比较 (3) (7) (-1) (3)移码表示°什么是“移码表示”? 将每一个数值加上一个偏置常数( bias)°一般来说,当编码位数为n时,bias取 2n-1 例如. n=4: E移 = E+ 23( bias= 23 =1000B) -8 (+8) ~ 0000B -7 (+8) ~ 0001B … 0 (+8) ~ 1000B … +7 (+8) ~ 1111B°为什么要用移码来表示指数(阶码)? 便于浮点数加减运算时的对阶操作(比较大小)0的移码表示唯一移码和补码仅第一位不同移码主要用来表示浮点数的阶码!例:1.01 x2-1+1.11 x23 LSBMSB Unsigned integer(无符号整数)机器中字的位排列顺序有两种方式:(例:32位字: 0…010112)高到低位从左到右:0000 0000 0000 0000 0000 0000 0000 1011高到低位从右到左:1101 0000 0000 0000 0000 0000 0000 0000Leftmost和rightmost这两个词有歧义,故用LSB(Least Significant Bit)来表示最低有效位,用MSB来表示最高有效位高位到低位多采用从左往右排列一般在全部是正数运算且不出现负值结果的场合下,可使用无符号数表示。例如,地址运算,编号表示,等等无符号数的编码中没有符号位能表示的最大值大于位数相同的带符号整数的最大值(Why?)例如,8位无符号整数最大是255(1111 1111) 而8位带符号整数最大为127(0111 1111)总是整数,所以很多时候就简称为“无符号数”Signed integer(带符号整数,定点整数)能处理正数和负数,使用MSB表示数的符号。有多种定点编码方式:原码、反码、补码和移码等原码:一般用来表示浮点(实)数的尾数反码 现已不用于表示数值数据补码:现在所有计算机都用补码来表示定点整数移码:用来表示浮点数的指数(阶码)为什么用补码表示带符号整数?补码运算系统是模运算系统,加、减运算统一数0的表示唯一,方便使用比原码和反码多表示一个最小负数与移码相比,其符号位和真值的符号对应关系清楚带符号整数和无符号数的比较扩充操作有差别例如,MIPS提供了两种加载指令(load byte unsigned / load byte)无符号数:lbu $t0, 0($s0) ; $t0高24位补0 (称为0扩展)带符号整数: lb $t0, 0($s0) ; $t0高24位补符号 (称为符号扩展)数的比较有差异无符号数:MSB为1的数比MSB为0的数大带符号数: MSB为1的数比MSB为0的数小例如,MIPS中提供了不同的比较指令,如:无符号数:sltu $t0, $s0, $s1 (若$s0比$s1小则 $t0 置1)带符号整数: slt $t1, $s0, $s1 假定: $s0=1111 1111 1111 1111 1111 1111 1111 1111 $s1=0000 0000 0000

文档评论(0)

skvdnd51 + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档