进制转换
8421法: 快速将某进制数为转二进制,8421中哪几个数相加能得到该进制数的就为1,其余的为0。
如: 10(转换为二进制)-> 8 4 2 1 (8+2=10)
1 0 1 0
最终10的二进制数就为1010
八进制转二进制: 一转三,八进制数的一位转为二进制的三位。
如: 65(八进制数) 8 4 2 1
5: 0 1 0 1
6: 0 1 1 0
65转为二进制数为:110101
二进制转八进制: 三转一,二进制数的每三位数转为八进制数的一位。
如: 110101(二进制数) 110 = 0 * 2 ^ 0 + 1 * 2 ^ 1 + 1 * 2 ^ 2 = 0 + 2 + 4 = 6
101 = 1 * 2 ^ 0 + 0 * 2 ^ 1 + 1 * 2 ^ 2 = 1 + 0 + 4 = 5
最终转为八进制数为65
十六进制转二进制: 一转四,十六进制数的一位转为二进制的四位。
如: 9A(十六进制数) 8 4 2 1
9 : 1 0 0 1
A: 1 0 1 0
9A转化为二进制数为:10011010
二进制转八进制: 四转一,二进制数的每四位数转为十六进制数的一位。
如: 10011010 (二进制数) 1001 = 1 * 2 ^ 0 + 0 * 2 ^ 1 + 0 * 2 ^ 2+ 1 * 2 ^ 3 = 9
1010 = 0 * 2 ^ 0 + 1 * 2 ^ 1 + 0 * 2 ^ 2 + 1 * 2 ^ 3 = A
原码: 就是8位二进制数,不够位数的补0,负数其第一位为符号位用1来表示,正数用0表示。
如:10的二进制数为:1010 原码:00001010 -10的原码:10001010
反码: 正数的反码就是其本身,负数的反码是符号位不变,其余各位取反。
如::10的反码(其本身):00001010 -10的反码:11110101
补码: 正数的补码就是其本身,负数的补码为符号位不变,各位取反末位再加1(相当于反码末位加1),补码的设计是为了便于计算负数。
如:10的补码(其本身):00001010 -10的补码:11110110