数据在电脑里存储分为大端和小端
大端:高位存储在低地址 例如1的十六进制为00 00 00 01,大端存储应该是00 00 00 01存储
小端:高位存储在高地址 例如1的十六进制为00 00 00 01,小端存储应该是01 00 00 00存储
数据在电脑当中都是以补码形式储存,1的原码,反码,补码都是 00 00 00 01
而-1的原码为10000000 00000000 00000000 00000001
反码为 11111111 11111111 11111111 11111110
补码为11111111 11111111 11111111 11111111
所以存储为 ff ff ff ff
整型提升(对补码进行整型提升):将一个char类型的字符先转成补码,在进行整型提升。
例如:-128的补码为10000000 整型提升之后为11111111 11111111 11111111 10000000
这里我们以小端为例子:
整型存储(字符属于整型):例如1的存储方式为01 00 00 00存储
浮点型存储:任何一个数都可以表示成(-1)^S * M * 2^E
而S决定这个数正负,M是1.xxx,而1可以忽略,所以只存储小数点后面的东西
E因为有正有负,规定在8位中加127,在11位中加1023
E分为三种情况
E既不为0也不为1,就正常减127或者1023
E为0,一般表示+-0;E为1,一般表示+-无穷。
以32位为例:浮点型5.5位101.1
存储为 0 10000001 01100000000000000000000