数制之间的相互转换

1.数制转换
问题
请将下列数字转换为十进制数:
(110010011111)2 、(10110101110)2
请将下列十进制数转换为二进制:
156、2608、1043
方案
使用按权展开法将二进制数转换为十进制数,使用短除法除2取余计算十进制数转换为二进制数。
步骤
实现此案例需要按照如下步骤进行。
步骤一:二进制转十进制
1)二进制数110010011111,转为十进制的结果是3231,转换过程如下:
(1100 1001 1111)2
= 1x211+1x210+0x29+0x28+1x27+0x26+0x25+1x24+1x23+1x22+1x21+1x20
= 2048+1024+0+0+128+0+0+16+8+4+2+1
= 3231
2)二进制数10110101110,转为十进制的结果是1454,转换过程如下:
(101 1010 1110)2
= 1x210+0x29+1x28+1x27+0x26+1x25+0x24+1x23+1x22+1x21+0x20
= 1024+0+256+128+0+32+0+8+4+2+0
= 1454
步骤二:十进制转二进制
1)十进制数156,转为二进制的结果是10011100,转换过程如下:
156除以2,商为78,余数为0;
78除以2,商为39,余数为0;
39除以2,商为19,余数为1;
19除以2,商为9,余数为1;
9除以2,商为4,余数为1;
4除以2,商为2,余数为0;
2除以2,商为1,余数为0;
1除以2,商为0,余数为1;
综上,将余数倒序排列,得10011100 。
2)十进制数2608,转为二进制的结果是1010 0011 0000,转换过程如下:
2608除以2,商为1304,余数为0;
1304除以2,商为652,余数为0;
652除以2,商为326,余数为0;
326除以2,商为163,余数为0;
163除以2,商为81,余数为1;
81除以2,商为40,余数为1;
40除以2,商为20,余数为0;
20除以2,商为10,余数为0;
10除以2,商为5,余数为0;
5除以2,商为2,余数为1;
2除以2,商为1,余数为0;
1除以2,商为0,余数为1;
综上,将余数倒序排列,得1010 00111 1100 。
3)十进制数1043,转为二进制的结果是100 0001 0011,转换过程如下:
1043除以2,商为521,余数为1;
521除以2,商为260,余数为1;
260除以2,商为130,余数为0;
130除以2,商为65,余数为0;
65除以2,商为32,余数为1;
32除以2,商为16,余数为0;
16除以2,商为8,余数为0;
8除以2,商为4,余数为0;
4除以2,商为2,余数为0;
2除以2,商为1,余数为0;
1除以2,商为0,余数为1;
综上,将余数倒序排列,得100 0001 0011 。

猜你喜欢

转载自blog.csdn.net/weixin_44792344/article/details/90228920