数据的储存方式

数据的分类

  1. 根据有与无符号分为无符号类型,有符号类型。
  2. 根据有无小数分为整形和浮点型。
  3. 还有独特的字符型
  4. 其中浮点数可以分成两种,单精度和双精度(主要是其所占字节数不同,双精度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目的防止储存到计算机中的为负数)
在这里插入图片描述

猜你喜欢

转载自blog.csdn.net/asibble/article/details/121579115
今日推荐