数据的存储

类型基本归类

整形:long short int 以及char也属于整形数组

浮点数:float double

构造类型:数组、结构体、枚举、联合

指针类型

空类型:void表示空类型(五类型),常用于函数返回类型、函数参数、指针类型

整形在内存中的基本存储

整数以补码形式存储在计算机中

正数原码、反码、补码相同

负数原码符号位不变,其他位按位取反得到反码,反码+1得到补码(补码求原码也可以取反+1)

大小端

大端存储模式:数据低位存储在高地址,数据高位存储在低地址

小端存储模式:数据低位存储在低地址,数据高位存储在高地址

浮点数在内存中存储

根据国际标准IEEE(电气和电子工程协会) 754,任意一个二进制浮点数V可以表示成下面的形式:

(-1)^S*M*2^E

S表示符号位正数时S=0,负数时S=1

M表示有效数字 2>M>=1

2^E表示指数位

对32位的浮点数,最高的1位是符号位s,接着的8位是指数E,剩下的23位为有效数字M

对于64位的浮点数,最高的1位是符号位S,接着的11位是指数E,剩下的52位为有效数字M

对于M的存储有特殊规定,M为1.****,存储在计算中的是****,所以1不用存储,这样就可以存储多一位

对于E较为复杂,在8位中E的范围0~255,在11位E的范围0~2047

E可能出现负数,在8位存储中需要+127,在11位存储中需要+1023

E的取出

1、E不全为0或者1:E-127(或-1023)得到真实值

2、E全0:这时,浮点数的指数E等于1-127(或者1-1023)即为真实值, 有效数字M不再加上第一位的1,而是还原为0.xxxxxx的小数。这样做是为了表示±0,以及接近 于 0的很小的数字。

3、E全1:这时,如果有效数字M全为0,表示±无穷大(正负取决于符号位s);

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值