第三章机器数的表示.pptVIP

  • 18
  • 0
  • 约8.46千字
  • 约 34页
  • 2020-02-12 发布于未知
  • 举报
嫛算机组成原理 第三章 机器数的表示 机器数的特点 定点数的原码、反码和补码 变形码、移码和浮点数表示 机器数表示形式的变换 4. 补码之和公式 第四节 机器数表示形式的变换 例:P43例3.23 [x+y]补= [-0.0111000]补+[+0.0011000]补 =1.1001000+0.0011000=1.1100000 例:P43例3.24 [x+y]补= [- 0.0011000]补+[+ 0.0111000]补 =1.1101000+0.0111000=0.0100000 由补码和真值的关系得x+y=-0.0100000 由补码和真值的关系得x+y=+0.0100000 5. [-x]补与的[x]补转换公式 第四节 机器数表示形式的变换 由[x]补=2n x0+x 得: [-x]补=2n x0+(-x) 所以 [x]补+ [-x]补= 2n 即: [-x]补= 2n -[x]补= 2n -1-[x]补+1 结论: [-x]补等于[x]补按位取反加1(包含符号位) 例:P44例3.25 [-x]补= 2n - [x]补= 10- 1.0101010=0.1010110 6. [x/2]补与 [x]补的转换公式 第四节 机器数表示形式的变换 由[x]补=2n x0+x 知:[x/2]补=2n x0+x/2 得: [x/2]补=2n-1 x0+ [x]补/2 结论:把[x]补连同符号位x0一起右移1位,而左边高位即符号位仍是x0。 例:P45例3.27 讲: (1) [x/2]补=0+0.0001100 = 0.0001100 (2) [x/2]补=1+0.1001100 = 1.1001100 X = 0.0011000 X = 1.0011000 7. [2x]补与的[x]补转换公式 第四节 机器数表示形式的变换 由[x]补=2n x0+x 知:[2x]补=2n x0+2x 得: [2x]补=-2n x0+ 2[x]补 结论:把[x]补连同符号位x0一起左移1位,而左边高位即原符号位丢失,末位补0。 在x的取值范围内 [2x]补= 2[x]补 例:P46例3.28 讲: (1) [2x]补= (2) [x/2]补=X =X =先介绍字长为N的机器数所能表示的范围,然后把这个范围分成正数,负数和零来讨论 在计算机中对数据进行运算时,符号位如何表示?是否也同数值一道参加运算操作呢?如参加,会给运算带来什么影响呢?为了处理好这些问题,就把符号位与数值位一起编码,即原码、反码、补码 0x2n-1表示真值x的范围是正数,它的最大值为2n-1 -1 其实还有第四种表示法,即移码,常用来表示浮点数阶码。 用于补码与移码之间的互换 在移码中,最高位为0表示负数,最高位为1表示正数,这与原 码、补码、反码的符号位取值正好相反。 ? 移码为全0时所对应的真值最小,为全1时所对应的真值最大! 因此,移码的大小直观地反映了真值的大小,这将有助于两个 浮点数进行阶码大小比较。 ? 真值0在移码中的表示形式是唯一的,即: [+0]移= [-0]移= 100…00 ? 移码把真值映射到一个正数域,所以可将移码视为无符号数, 直接按无符号数规则比较大小。 ? 同一数值的移码和补码除最高位相反外,其他各位相同。 溢出:不符合数值范围的数相对于这个范围,或数的表示不符合格式要求即是溢出。 当尾数溢出时,不代表浮点数也发生了溢出,此时要进行判断。因为阶码表示浮点数的范围,尾数表示浮点数的精度。 左规:尾数每左移1位,阶码减1,尾数末尾补0,直到尾数为规格化形式。 连同符号按位取反加1,叫做求补 2n-1 x0表示符号位仍是x0 [x]补/2表示连同符号位一起右移1位 -2n x0表示符号位已经丢失;因为2n已经起出x所能表示的范围 2[x]补表示连同符号位向左移动1位 解释为什么要用补码呢,因为它可以把减法变成加法,用钟表当例子说明一下。 说明一下什么是模运算?有什么作用? 优点为:简单、直观、容易转换 ,缺点:缺点是进行加、减运算时必须根据两数的 符号和数值大小来决定运算结果的符号,这将增加机器的复杂性和运算时间。运算复杂 有两个0表示形式 用原码实现乘除运算比较简便,但其加/减法运算规则复杂。 为了便于判断运算结果是否溢出,某些计算机中还采用了变形补码,因为这种补码

文档评论(0)

1亿VIP精品文档

相关文档