数字的计算机表示(负数原码补码、右移、浮点数)

负数原码补码、右移

1、负数的补码由原码取反加一,负数的原码由补码也是取反加一,注意,都是先取反后加一,不是倒过来,用-1记即可。

2、负数右移>>3位,得到的结果,与负数绝对值右移3位的结果,不一样,比如118>>3=14(即118/(2^3)),-118>>3=-15,因为右移对于负数是在补码左边补1对于正数补0。

整数计算机表示

1、整数存储在计算机中的是补码,比如-1存储的是1111 1111。

浮点数计算机表示(IEEE 754浮点标准)

单精度浮点数

在这里插入图片描述
1、存储为32位,最高位为符号位s,1表示负数,0表示正数;接着8位为指数exponent,最后23位为尾数fraction,偏阶bias是127,所以规格化的单精度浮点数表示为:(规格化指的是科学计数法“ 有 效 数 × 基 数 指 数 有效数\times基数^{指数} ×”的有效数大于等于1,而浮点数的表示类似科学计数法,当指数非0时,有效数为1.fraction即大于1所以是规格化的,当指数为0时,有效数为0.fraction即小于1所以是非规格化的,非规格化看第2点。)
( − 1 10 ) s 10 × ( 1. f r a c t i o n ) 2 × ( 2 e x p o n e n t 2 − b i a s 10 ) 10 = ( − 1 ) s × ( 1. b i 22 b i 21 . . . b i 0 ) 2 × 2 ( b i 30 b i 29 b i 28 b i 27 b i 26 b i 25 b i 24 b i 23 ) 2 − 127 = ( − 1 ) s × ( 1 × 2 0 + b i 22 × 2 − 1 + b i 21 × 2 − 2 + . . . + b i 0 × 2 − 23 ) × 2 ( b i 30 × 2 7 + . . . + b i 23 × 2 0 ) − 127 \quad(-1_{10})^{s_{10}} \times (1.fraction)_2 \times (2^{exponent_2-bias_{10}})_{10} \\ = (-1)^s \times (1.b_{i22}b_{i21}...b_{i0})_2 \times 2^{(b_{i30}b_{i29}b_{i28}b_{i27}b_{i26}b_{i25}b_{i24}b_{i23})_2-127} \\ = (-1)^s \times (1\times2^0+b_{i22}\times2^{-1}+b_{i21}\times2^{-2}+...+b_{i0}\times2^{-23}) \times 2^{(b_{i30}\times2^{7}+...+b_{i23}\times2^{0})-127} (110)s10×(1.fraction)2×(2exponent2bias10)10=(1)s×(1.bi22bi21...bi0)2×2(bi30bi29bi28bi27bi26bi25bi24bi23)2127=(1)s×(1×20+bi22×21+bi21×22+

  • 2
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值