文章目录
数据的分类
- 根据有与无符号分为无符号类型,有符号类型。
- 根据有无小数分为整形和浮点型。
- 还有独特的字符型
- 其中浮点数可以分成两种,单精度和双精度(主要是其所占字节数不同,双精度64位,单精度32位)
数据储存方式(对于int ,short,long,long long ,char等整型)
整型
用原反补码的形式进行储存
源码
为改数的二进制
反码
其中 负数为二进制码取反
正数源码与反码相同(无符号数也是这个规律)
补码
负数反码加上1
正数与无符号数是反码与补码相同
储存在计算机中情况(以二进制)
无符整型所有位全为储存数据
有符号整型第一位为符号位,1为负,0为正
浮点型(及小数类型的数)
浮点数转换成为二进制,用(-1)^S * M * 2^E表示
s可以决定浮点数的正负(s = 1,为负数。s = 0,为正数)
M的范围是在[1,2]之间
E为任意数
点精度(float)
单精度一共32位
第1位用作储存S的值
第2到8位储存E的值
第10到32位储存M的值
因为E储存的时候无符号整型(unsiged int),但是E可以为负号,所以E加上127,然后二进制转换储存到第2到9位中(加上127目的防止储存到计算机中的为负数)
双精度( double)
单精度一共63位
第1位用作储存S的值
第2到12位储存E的值
第12到64位储存M的值
因为E储存的时候无符号整型(unsiged int),但是E可以为负号,所以E加上1023,然后二进制转换储存到第2到9位中(加上127目的防止储存到计算机中的为负数)