
一、相关概念原码符号位加上真值的绝对值第一位表示符号其余表示值缺陷做减法的时候用反码原码用不了反码正数原码本身负数反码在原码的基础上符号位不变其他取反。相比于正数负数反码全部取反了计算时溢出的进位需要加到最低位缺陷存在正0和负0之分此时需要补码补码正数的补码其本身负数的补码在反码的基础上1.只能计算有符号数结论负数的补码是将负数对应的正数的原码取反后加1正数和负数的取反都是他们的相反数再减一sizeof(变量名)表示查看变量占多少字节。大端模式高字节存储在低地址低字节存储在高地址。小端模式相反。大端Big-Endian和小端Little-Endian是指多字节数据在内存中存储时的字节顺序。地址内存中每个字节都有自己地址变量的地址变量所在空间占的第一个字节地址1. 回顾小端模式的计算公式对于从低地址到高地址读取的 4 个字节地址顺序字节内容第 1 字节最低地址b0第 2 字节b1第 3 字节b2第 4 字节最高地址b3小端模式的整数值 b0 ∣ (b18) ∣ (b216) ∣ (b324)b0 ∣ (b18) ∣ (b216) ∣ (b324)小端 低地址放低位所以如果从低地址开始读读出来的第一个字节在最终整数里是最右边最低位的字节2. 大端模式的计算公式在大端模式中最高地址的字节是整数的最低有效字节最低地址的字节是整数的最高有效字节。所以对于同样的 4 个字节读取顺序仍然是从低地址到高地址地址顺序字节内容第 1 字节最低地址b0大端中这是最高有效字节 MSB第 2 字节b1第 3 字节b2第 4 字节最高地址b3大端中这是最低有效字节 LSB大端模式的整数值 (b024) ∣ (b116) ∣ (b28) ∣ b3(b024) ∣ (b116) ∣ (b28) ∣ b