进制的算法
10进制转2进制:
开2取余
例:500
500%2=250~0
250%2=125~0
125%2=62~1
62%2=31~0
31%2=15~1
15%2=7~1
7%2=3~1
3%2=1~1
1不能开了
最后取结果为 111110100
2进制转10进制
例:111110100
0 * 20 + 0 * 21 + 1 * 22 + 0 * 23+ 1 * 24 + 1 * 25 + 1 * 26 + 1 * 27 + 1 * 28
=0 + 0 + 4 + 0 + 16 + 32 + 64 + 128 + 256
= 500
10进制转8进制
开8取余
例:500
500%8=62~4
62%8=7~6
7不能开了
最后结果为 764
8进制转10进制
例:764
4 * 80 + 6 * 81 + 7 * 82
=4 + 48 + 448
=500
10进制转16进制
开16取余
注意10=A 11=B 12=C 13=D 14=E 15=F
例:500
500%16=31~4
31%16=1~15(F)
1不能开了
最后结果为1F4
16进制转10进制
例:1F4
注意10=A 11=B 12=C 13=D 14=E 15=F
4 * 160 + 15(F) * 161 + 1 * 162
=4+240+256
=500
2进制转8进制
例:111110100
由于8是2的3次方,所以没3位数看做8进制中的一位数
因此例题中的数值可以看做
二进制: 111 110 100
换 算: 7 6 4
每三个数值划分成8进制,
三位数中的
个位换算成4,
十位换算成6,
百位换算成7,
因此例题中的数值:764
2进制转16进制
例:111110100
注意10=A 11=B 12=C 13=D 14=E 15=F
由于16是2的4次方,所以每4位数看做16进制中的一位数
因此例题中的数值可以看做
二进制: 1 1111 0100
换 算: 1 15(F) 4
每四个数值划分成16进制,三位数中的
个位换算成4,
十位换算成15(F),
百位换算成1,
因此例题中的数值:1F4