霍夫曼编码的应用——压缩数据
霍夫曼编码的应用——压缩文件 二进制的补码,反码,以及原码之间的关系 原码:正数的原码:按照二进制转换成二进制码就是原码。负数的原码:其对应的绝对值转换成二进制原码后,在高位补一。 int类型的1,在32位机器上,占有的四个字节,高位补零。得到:00000000 00000000 00000000 00000001 int类型的-1,在32位机器上,占有四个字节,取绝对值,高位补一。得到:10000000 00000000 00000000 00000001 反码:正数的反码就是原码,负数的反码是原码除符号位以外所有的位取反。 int类型的1,在32位机器上,其反码为原码,高位补零。得到:00000000 00000000 00000000 00000001 int类型的-1,在32位机器上,其反码为符号位不变,其余取反。得到:11111111 11111111 11111111 11111110 补码:正数的补码与原码相同,负数的补码为在反码的基础上在最低位再加1 int类型的1,补码,反码,与源码相同。补码为:00000000 00000000 00000000 00000001 int类型的-1,在反码的基础上,与最低位加一。补码为:11111111 11111111 11111111 11111111 总结: 正数,三个码相同,原码,反码,和补码相同。 负数: