ITパスポートの問題集を解いていて、「2進数の10110を3倍せよ」という問題があった。
10110を10進数に直して、それを3倍して、2進数に戻すことで答えは出せた。
10110(2) = 1×10^4 + 1×10^2 + 1×10^1 だから、2^4 + 2^2 + 2^1 = 22(10)
22 × 3 = 66(10)
66 / 2 = 33 ・・・ 0, 33 / 2 = 16 ・・・ 1,16 / 2 = 8 ・・・ 0, 8 / 2 = 4 ・・・ 0, 4 / 2 = 2 ・・・ 0, 2 / 2 = 1 ・・・ 0, 1 / 2 = 0 ・・・ 1
よって1000010(2)
模範解答を見てみると2進数のまま計算していた。
3倍(10) = 11倍(2)なので
と計算できる。
(掛け算した後の足し算は2進数なので 1 + 1 = 10 となり繰り上がる)
2進数面白いと思った。