Bootstrap

学习笔记 数据表示(一)

#进制转换

一、常见进制后缀

D十进制

B二进制

O八进制

H十六进制

二、进制转换

1.十进制转R进制

整数部分:短除法

小数部分:乘基取整法

2.R进制转十进制

按权展开,相乘再相加

速算

二转八,八转二(三位)

二转十六,十六转二(四位)

#码制

1.原码:最高位是符号位,其余低位表示数值的绝对值

在负数运算中会出现错误,实际的运算效果与预期相反,于是为了解决这一问题出现了反码

2.反码:正数的反码是他本身,负数的反码是其绝对值按位取反(符号位不变,其余位取反)

出现了反码后,0有两种表达形式,计算有误差,于是出现了补码

3.补码:正数的补码与原码相同,负数的补码是其反码末位+1(符号位不变)

4.移码:补码的符号位按位取反 

定点整数与定点小数:

小数点在最低位后为定点整数

小数点在最高位前为定点小数

详解:

n个数位,二进制中每一位的取值只有0/1,根据排列组合一共有2的n次方种可能,但是原码最高位为符号位,所以只有n-1个数位可以取值,故有2的n-1次方种,但是0表示了两遍,故两边同时-1。(取值范围)

又因为反码是由原码推出,故一样。

补码的作用就是让表示更精确,人为定义去掉一个0,故两边不对等,一边-1,一边不减。(取值范围)

又因为移码是由补码推出,故一样

原码和反码有两个0,所以要在数码个数中-1

补码和移码有人为定义,只有一个0,故不用减一

;