数据库系统工程师——计算机系统基础知识——数据表示和浮点数和校验码(2)

本文详细介绍了计算机中二进制计数制的四种表示方式——原码、反码、补码和移码,以及它们各自的特点和应用。在定点数和浮点数的概念基础上,探讨了浮点数表示的优势,包括浮点数的阶码和尾数在数值范围和精度上的作用。此外,还提到了校验码的基本概念,如码距、奇偶校验码和循环冗余校验码,这些都是确保数据传输准确性的关键机制。
摘要由CSDN通过智能技术生成

计算机采用二进制计数制,其数值形式称为机器数,机器数分为无符号数和带符号数。

带符号数,其最高位是符号位,0表示正号,1表示负号

数据的表示:

考点!!

码制定点整数范围定点整数个数定点小数范围
原码-(2^{n-1}-1) \sim (2^{n-1}-1)2^{n}-1-(1-2^{-(n-1)}) \sim (1-2^{-(n-1)})
反码-(2^{n-1}-1) \sim (2^{n-1}-1)2^{n}-1-(1-2^{-(n-1)}) \sim (1-2^{-(n-1)})
补码-2^{n-1} \sim (2^{n-1}-1)2^{n}​​​​​​-1\sim (1-2^{-(n-1)})
移码-2^{n-1} \sim (2^{n-1}-1)2^{n}-1\sim (1-2^{-(n-1)})

 

 

 

 

 

 

  • 原码:二进制表示,最高位是符号位,0表示正号,1表示负号。数值0有两种形式表示:[+0]=00000000   [-0]=10000000
  • 反码:正数和原码相同,负数是取除符号位其他位相反的原码。
  • 补码:正数和原码相同,负数是除符号位,在反码后加1.约定:[-128] = 10000000
  • 移码:在偏移量为2^{n-1}的情况下,移码是补码的符号位取反。约定:[-128] = 00000000
码制数值1

数值-1

1+(-1)
原码00000001

10000001

10000010
反码000000011111111011111111
补码000000011111111100000000
移码100000010111111100000000

 

 

 

 

 

 

浮点表示:

  • 定点小数:小数点在最该有效数值位之前,在符号位之后。
  • 定点整数:小数点在最低有效数值位之后。

如果用上诉的表示方式来表达,原码和反码只能表达2^{n}-1个数,补码和移码只能表达2^{n}个数,能表示的数据太少,所以引入浮点数。

浮点数:是小数点位置不固定的数,可表示更大范围的数。

浮点数的表示形式:N=2^{E}*F

E:阶码(纯整数)            F:尾数(带符号的纯小数)

阶符阶码数符尾数

 

 

考点!   浮点数的阶码决定数值范围,尾数决定数值精度。

规格化浮点数是将尾数的绝对值限定在区间[0.5,1]

校验码:

码距:一个编码系统中任意两个合法编码之间至少有多少个二进制位不同。

  1. 奇偶效验码:水平奇偶校验码,垂直奇偶校验码,水平垂直校验码。
  2. 海明码:考点!设数据为是n位,校验位是k位,则n和k必须满足关系:2^{k}-1\geqslant n+k
  3. 循环冗余校验码:利用生成多项式为 k 个数据位产生 r 个校验位来进行编码,其编码长度为 k+r.

 

 

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值