
风吹过的记忆为您分享以下优质知识
二进制转换是计算机科学中的基础操作,以下是常见的转换方法及技巧:
一、二进制转十进制
按权展开法
从右往左依次计算每一位的值,公式为:
$$a_n times 2^n + a_{n-1} times 2^{n-1} + dots + a_1 times 2^1 + a_0 times 2^0$$
例如:
$$1011_2 = 1 times 2^3 + 0 times 2^2 + 1 times 2^1 + 1 times 2^0 = 8 + 0 + 2 + 1 = 11_{10}$$
分块法(适用于大数)
将二进制数按每4位一组划分(不足补零),每组对应1-16进制数。例如:
$$11101010_2 rightarrow 1110 rightarrow E, quad 1010 rightarrow A, quad 1001 rightarrow 9, quad 0110 rightarrow 6$$
最终结果为:
$$EA96_{16}$$
二、十进制转二进制
除2取余法
不断将十进制数除以2,记录余数,余数从下往上排列。例如:
$$37_{10} rightarrow 37 div 2 = 18 text{余}1 rightarrow 18 div 2 = 9 text{余}0 rightarrow 9 div 2 = 4 text{余}1 rightarrow 4 div 2 = 2 text{余}0 rightarrow 2 div 2 = 1 text{余}0 rightarrow 1 div 2 = 0 text{余}1$$
结果为:
$$100101_2$$
乘2取整法
用十进制数乘以2,取整数部分,重复此过程直到结果为0。例如:
$$37_{10} rightarrow 37 times 2 = 74 rightarrow 74 times 2 = 148 rightarrow 148 times 2 = 296 rightarrow 296 times 2 = 592 rightarrow 592 times 2 = 1184 rightarrow 1184 times 2 = 2368 rightarrow 2368 times 2 = 4736 rightarrow 4736 times 2 = 9472 rightarrow 9472 times 2 = 18944 rightarrow 18944 times 2 = 37888 rightarrow 37888 times 2 = 75776 rightarrow 75776 times 2 = 151552 rightarrow 151552 times 2 = 303104 rightarrow 303104 times 2 = 606208 rightarrow 606208 times 2 = 1212416 rightarrow 1212416 times 2 = 2424832 rightarrow 2424832 times 2 = 4849664 rightarrow 4849664 times 2 = 9699328 rightarrow 9699328 times 2 = 19398656 rightarrow 19398656 times 2 = 38797312 rightarrow 38797312 times 2 = 77594624 rightarrow 77594624 times 2 = 155189248 rightarrow 155189248 times 2 = 310378496 rightarrow 310378496 times 2 = 6207569