一.整形在内存中的存储
计算机中的整数有三种表示方法:原码,反码.补码.
三种方法均由符号位和数值位两部分组成.
符号位中0表示"正",1表示"负"
1.原码: 直接将二进制按照正负的形式转化成二进制
2.反码:将原码的符号位不变,其他位依次按位取反.
3.补码:反码+1.
(正数的原码,反码,补码都相同)
对于整形数据存放内存中的是补码.
二.浮点数在内存中的存储
根据国际标准IEEE 754,任意一个二进制浮点数V表示为下面形式:
(-1)^S*M*2^E
(-1)^S表示符号位,当S=0,V为正数,S=1,V为负数.
M表示有效数字,大于等于1,小于2.
2^E指数位
例如:十进制:5.0,二进制:101.0,标准形式:1.01*2^2 S=0,M=1.01,E=2
十进制:-5.0,二进制:-101.0,标准形式: -1.01*2^2. S=1,M=1.01,E=2
IEEE 754规定:对于32位浮点数,最高位的1位是符号位S,接着的8位是指数E,剩下23位为有效数字
存储模型
对于64位浮点数,最高位的1位是符号位S,接着的11位是指数E,剩下52位为有效数字
存储模型
三.大小端字节序
大端字节序:数据的低位保存在内存的高地址中,而数据的高位保存在内存的低地址中;
小端字节序:数据的低位保存在内存的低地址中,而数据的高位保存在内存的高地址中;
例如