FE EXAM

16進数 → 10進数(桁の重み=16のべき乗を足す)

16進数の各桁(0〜F)を10進数の値(0〜15)に直し、16のべき乗の重みを掛けて合計する操作。A〜Fの値を覚えていれば機械的に解けます。

INTERACTIVE VISUALIZATION
16進数の桁
重み
16進数 (入力)
0xFF
桁数
2
10進数 (結果)
255
16進数を入力
プリセット
各桁の上に重み(1, 16, 256, 4096, ...)、下に桁値(A=10, B=11, ..., F=15)と寄与度。すべての寄与度を足したものが10進数です。
161
16
F
=15
=240
160
1
F
=15
=15
計算式
16×15 + 1×15=255
解説

📌
16進→10進変換とは

16進数 → 10進数は、メモリアドレス・カラーコード・MACアドレスなどでよく見る 0〜9とA〜F の16進数表記を、私たちが慣れている10進数に翻訳する操作。各桁に 16 のべき乗の重みを掛けて全部足すだけ。

たとえばFF(16進) = 15×16 + 15×1 = 255(10進)1B3E(16進) = 1×4096 + 11×256 + 3×16 + 14×1 = 6974(10進)

16のべき乗を掛けて合計する手順

16のべき乗の重みを覚えておけば変換が速くなります。
16⁰ = 1
16¹ = 16
16² = 256
16³ = 4096
16⁴ = 65536

A〜F の値(暗記必須):
・A = 10、B = 11、C = 12、D = 13、E = 14、F = 15
・「10、11、12、13、14、15」とアルファベット順

計算手順:
・① 各桁を右から「1の位、16の位、256の位、…」と読み直す
・② A〜F は 10〜15 に変換
・③ 各桁を対応する重みと掛ける
・④ すべての桁の積を合計

1B3E を変換する例:
・桁位置(右から): 0, 1, 2, 3 → 重み: 1, 16, 256, 4096
・各桁: E=14, 3, B=11, 1
・寄与: 14×1=14, 3×16=48, 11×256=2816, 1×4096=4096
・合計: 14 + 48 + 2816 + 4096 = 6974

🔤
A〜Fを10〜15に展開する考え方

16進数の計算でつまずく最大ポイントが「A〜F の取り扱い」です。これらは見た目はアルファベットでも、計算するときは「10〜15 の数字」として扱うのが大原則。

A = 10、B = 11、C = 12
D = 13、E = 14、F = 15

16進→10進の手順を A〜F 視点で整理:
① 各桁を見て、A〜F は 10〜15 に頭の中で置き換え
② 置き換えた数値に、右から 1, 16, 256, 4096... の重みを掛ける
③ すべての積を合計

例: CAFE(16) を10進数に
C → 12、A → 10、F → 15、E → 14
桁位置(右から): 3, 2, 1, 0
重み: 4096, 256, 16, 1
─────────────────────────
12×4096 + 10×256 + 15×16 + 14×1
= 49152 + 2560 + 240 + 14
= 51966

A〜F を含むときのつまずきパターン:
・「F×16 = 16」と書いてしまう(正しくは 15×16 = 240)
・「A」を 10 進数の「A」のまま扱ってしまう
・大文字小文字を区別してしまう(0xFF0xff は同じ)

2進数経由の早道: A〜F の暗算が苦手なら、各桁を4ビットの2進数に展開してから10進にする手もあります。
・F → 1111 → 8+4+2+1 = 15
・A → 1010 → 8+2 = 10
・FF → 11111111 → 128+64+...+1 = 255

覚えておくと便利な対応:
FF = 255(1バイトの最大)
7F = 127(符号付き8bit整数の最大)
FFFF = 65535(2バイトの最大)
0x20 = 32(ASCIIのスペース)、0x41 = 65(ASCIIの'A')

関連コンテンツ

16進数 → 10進数 | Vizigo