数据的表示和加减运算

真值和机器数

真值

  通常用正号、负号来分别表示正数(正号可省略)和负数,如+15、-8等。这种带“+”或者“-”符号的数称为真值。真值是机器数所代表的实际值。

机器数

  在计算机中,通常将计算机的符号和数值一起编码,将数据的符号数字化,通常用“0”表示正,用“1”表示负。这种把符号“数字化”的数成为机器数。
在这里插入图片描述

无符号数和有符号数

无符号数

  当一个编码的全部二进制位均为数值位而没有符号位时,该编码表示的就是无符号整数。
  寄存器的位数反应无符号整数的范围。
在这里插入图片描述

有符号数

  将符号数值化,并将符号位放在有效数字的前面,就组成了有符号数。

机器数的定点表示

定点小数

  定点小数就是纯小数,约定小数点在符号位之后、有效数值部分最高位之前。

定点整数

  定点整数就是纯整数,约定小数点位置在有效数值部分最低位之后。

原码表示法

  用机器数的最高位表示数的符号,其余各位表示数的绝对值。

整数的原码表示

在这里插入图片描述
  若字长为n+1,则原码整数的表示范围为-(2n-1) ≤ \leq x ≤ \leq 2n-1。

小数的原码表示

在这里插入图片描述
  若字长为n+1,则原码整数的表示范围为-(1-2-n) ≤ \leq x ≤ \leq 1-2-n
  真值零的原码表示有正零和负零两种形式,即[+0]=00000(第一个零是符号位),[-0]=10000
  原码表示的优点是与真值的对应关系简单、直观,与真值的转换简单,并且用原码实现乘法的运算比较简单。缺点是0的表示不唯一,且原码的加减运算比较复杂。
在这里插入图片描述
因此,找到一个与负数等价的正数 来代替这个负数,就可以使减变成加,那就是补码。

例题

在这里插入图片描述
在这里插入图片描述

补码表示法

  真值转化为补码:对于正数而言,与原码的方式一样。对于负数,符号位取1,其余各位由真值“按位取反,末位加1”得到。
  补码转化为真值:若符号位为0,与原码的方式一样。若符号位为1,真值的符号为负,数值部分由补码“按位取反,末位加1”得到。
  这里介绍另外一种方法获得补码,就是从左往右找到第一个1,这个1左边所有“数值位”按位取反。

整数的补码表示

在这里插入图片描述
  若字长为n+1,则原码整数的表示范围为-2n ≤ \leq x ≤ \leq 2n-1(比原码多表示一个-2n)。

小数的补码表示

在这里插入图片描述
  若字长为n+1,则原码整数的表示范围为-1 ≤ \leq x ≤ \leq 1-2-n(比原码多表示一个-1)。
  零的补码是唯一的,即[+0]=[-0]=0.0000,由定义[-1]=10.0000-1.0000=1.0000。

例题

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

反码表示法

正数的反码与原码的方式一样,负数的反码,数值位需要按位取反。

整数的反码表示

在这里插入图片描述

小数的反码表示

在这里插入图片描述

例题

在这里插入图片描述

移码表示法

移码就是补码的基础上将符号位取反。、
在这里插入图片描述
  用移码表示浮点数的阶码能方便地判断浮点数的阶码大小
在这里插入图片描述
在这里插入图片描述

补码加减法运算

加法

在这里插入图片描述

减法

在这里插入图片描述

例题

在这里插入图片描述
在这里插入图片描述
这里练习1和练习2的结果和预想的不同,是因为有位数的丢失。

  • 36
    点赞
  • 14
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值