计算机组成原理第二章 计算机中的数据表示

第二章 计算机中的数据表示
一、数据编码
2.1 数值数据编码

1.原码

例如:X=+35,[X]原=00100011
X=-35,[X]原=10100011
X=0.46875,[X]原=0.0111100
X=-0.46875,[X]原=1.0111100

原码范围:
整数:-(2(n-1)-1)~+(2(n-1)-1) 如8位:-127~+127
小数:-(1-2(-(n-1)))~+(1-2(-(n-1))) 如8位:-0.1111111 ~ +0.1111111
2.补码
正数的补码与原码定义相同;
负数补码以X=-35为例:
(1)将X=+35的原码表示,包括符号位在内各位取反,再在最低为上加一
(2)将X=+35的原码表示,从最低位逐位向高位找起,找到第一个1不变,以后各位1变0、0变1直至符号位
补码范围:
整数:-2(n-1)~+(2(n-1)-1) 如8位:-127~128
小数:-1~+(1-2^(-(n-1)))
3.反码
正数不变;
负数取反。
取值范围同原码
4.移码
求法:先求[X]补,再将符号位取反

2.2 浮点表示

1.浮点数的一种表示形式:
阶符 阶码 数符 尾数
2.非规格化浮点数
基数为2,阶码数值位取k位,阶符1位且采用补码表示;尾数数值位取n位,数符1位,同样采用补码表示。
取值范围:
最小负数:-12(2k-1)
最大负数:-2(-n)*2(-2^k)
最小正数:2(-n)*2(-2^(k))
最大正数:(1-2(-n))*2(2^k-1)
3.规格化浮点数
(1)当尾数M用补码表示,且M>=0时,M=0.1XXXX,当M<0时,M=1.0XXXX;
[-1/2]补=1.10000…00,[-1]补=1.00000…00
为了使计算机判断方便,一般不把[-1/2]补列为规格化数,而把[-1]列为规格化数
经修正后,只需判断尾数的符号位与第一数值位是否一致,若不一致则就是规格化数。
(2)取值范围:
最小负数:-1
2(2k-1)
最大负数:-(1/2+2(-n))*2(-2^k)
最小正数:+1/2*2(2(-2^k))
最大正数:(1-2(-n))*2(2^k-1)

  • 2
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值