吐槽:最近在学中国大学MOOC的一门课程《计算机系统基础(一)》,初学感觉对这些乱七八糟的码比较纠结,所以写个辨析,希望帮自己理清概念也希望帮到其他初学者。ps:纯属手敲和个人理解,不过有参考资料,如有错误希望大佬可以指出哈~
参考资料:MOOC、百度百科和其他人写的博客。
正文:
1、真值
真值可以理解为真正的值,一般用十进制表示,也可以用二进制表示。(其他进制表示的也有就是少而已)
举例:-85,100,-100,0
2、机器数
一个数在计算机中的二进制表示形式,而且是带符号的,0为正数,1为负数。
举例:10111,01111,011
在32位机器中,int、short、char型数据的机器数各占32位、16位、8位。
机器数与真值的关系:带符号位的机器数的真正数值为真值。
举例:机器数10111对应的真值为-7,也可为-0111B(二进制最好结尾写个B,不然不好区分,有时候会引起误会)
根据小数点的位置固定与否,机器数分为:定点数与浮点数。
小数点约定在固定位置的数称为定点数,小数点约定为可浮动的数称为浮点数。
因为X = (-1)^S * M * R^E
其中:S取值为0或1,用来约定X的符号;E为二进制定点整数,称为X的阶或指数;M为二进制定点小数,称为X的尾数;R为基数,一般为2、4、16