Open1
【Python試験対策】n進数変換の超シンプル基数変換チートシート

Pythonプログラミング能力認定試験2級(2級のみオンライン可能なので)取得のために問題集をやっています。
その中でwebではほぼ使わないn進数周りの問題が出てきたので、色々参考にさせていただきシンプルで使える基数変換のチートシートをざっくり備忘録メモ。
16進数 → 2進数への変換
1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | |
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
2進数 | 0000 | 0001 | 0010 | 0011 | 0100 | 0101 | 0110 | 0111 | 1000 | 1001 | 1010 | 1011 | 1100 | 1101 | 1110 | 1111 |
16進数 | 0 | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | A | B | C | D | E | F |
Q.サンプル問題:16進数「5B1」を2進数に置き換える
5は0101、Bは1011、1は0001
→ 010110110001
2進数→10進数 への変換
1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | |
---|---|---|---|---|---|---|---|---|
128 | 64 | 32 | 16 | 8 | 4 | 2 | 1 | A |
B |
Q.サンプル問題:2進数「1101」を10進数に置き換える
1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | |
---|---|---|---|---|---|---|---|---|
128 | 64 | 32 | 16 | 8 | 4 | 2 | 1 | A |
1 | 1 | 0 | 1 | B |
B欄が0ではない値を足すのみ
→ 8 + 4 + 1 = 13
10進数→2進数への変換
A | B | C |
---|---|---|
2進数 | 変換したい数 + 計算結果 | 余り |
2 | 26 | |
2 | 13 | 0 |
2 | 6 | 1 |
2 | 3 | 0 |
2 | 1 | 1 |
2 | 0 | 1 |
Q.サンプル問題:10進数「26」を2進数に置き換える
B欄の計算結果が0になったら終了
余りを下から読むと → 11010