16進数から10進数
CoddyのAssemblyジャーニー「基礎」セクションの一部 — レッスン 11/45。
16進数(16進法)は、2進数や10進数と同じように機能します。各桁には位取りの値があります。16進数では、各桁は16の累乗を表します。
16進数の位取り:
| 位置 | 16の累乗 | 10進数の値 |
|---|---|---|
| 一番右 | 16⁰ | 1 |
| 次 | 16¹ | 16 |
| 次 | 16² | 256 |
| 次 | 16³ | 4096 |
覚えておくべき16進数の値:
| 16進数 | 10進数 |
|---|---|
| 0-9 | 0-9 |
| A | 10 |
| B | 11 |
| C | 12 |
| D | 13 |
| E | 14 |
| F | 15 |
例 1: <strong>0x2A</strong> を10進数に変換する
| 位置 | 16進数の桁 | 位取りの値 | 計算 |
|---|---|---|---|
| 左 | 2 | 16 | 2 × 16 = 32 |
| 右 | A (10) | 1 | 10 × 1 = 10 |
| 合計 | 32 + 10 = 42 |
したがって、0x2A は10進数で 42 となります。
例 2: <strong>0xFF</strong> を10進数に変換する
| 位置 | 16進数の桁 | 位取りの値 | 計算 |
|---|---|---|---|
| 左 | F (15) | 16 | 15 × 16 = 240 |
| 右 | F (15) | 1 | 15 × 1 = 15 |
| 合計 | 240 + 15 = 255 |
したがって、0xFF は10進数で 255 になります。
例 3: <strong>0x3E8</strong> を10進数に変換する
| 位置 | 16進数の桁 | 位取りの値 | 計算 |
|---|---|---|---|
| 左 | 3 | 256 | 3 × 256 = 768 |
| 中央 | E (14) | 16 | 14 × 16 = 224 |
| 右 | 8 | 1 | 8 × 1 = 8 |
| 合計 | 768 + 224 + 8 = 1000 |
したがって、0x3E8 は10進数で 1000 です。
公式:
各桁が ... d₂ d₁ d₀ である16進数の場合:
Value = (... + d₂ × 16² + d₁ × 16¹ + d₀ × 16⁰)
自分で試してみよう
このレッスンにはコードチャレンジは含まれていません。
このレッスンには短いクイズがあります。レッスンを始めて解答し、進捗を記録しましょう。