16進数を理解する
16進数は、一つの桁が16通りの状態を表す数の書き方です。普段の10進数と同じように桁の位置に意味がありますが、隣の桁へ移るときの倍率が16になります。数字の形だけを暗記せず、各桁に重みを付けると自分で変換や計算ができます。
この単元で学ぶこと
- 16進数の数字と桁の重みを説明できる
- 16進数と10進数の整数を相互変換できる
- 桁数による表現の総数と最大値を区別できる
- 小数部と桁上がりを重みから計算できる
本文解説
使う数字と桁上がり 16進数で使うのは0から9とAからFです。一つの桁に16種類あり、1桁の最大はFです。この次は10と書きます。この「10」は10進数の十という意味ではなく、16のまとまりが一つ、余りが0という意味です。
桁の重み 整数部分の右端から、1、16、256、4096という重みを付けます。各桁の数字に重みを掛けて足した値が、10進数の値です。0が入っている桁も位置として残します。0を途中で詰めると、その左側の数字の重みが変わってしまいます。
10進数へ変換する例 2Aを16進数として読むと、2×16+10×1=42となります。変換の途中では各桁の掛け算を書き、最後に合計します。数字が何進数か分からないと同じ表記でも値が変わるため、問題文の基数指定を確認します。
10進整数から変換する例 変換したい非負整数を16で割り、商が0になるまで割り算を繰り返します。各回の余りは下位の桁から得られるので、最後に逆順へ並べます。173÷16=10余り13、10÷16=0余り10。10はA、13はDなので、余りを下から読んだ結果はADになる。 余りを上から読んでしまうと桁の順序が逆になります。
桁数と値の範囲 符号なしで16進数n桁を使うと、先頭の0を含めて16ⁿ通りを表せます。値は0から始まるため最大値は16ⁿ−1です。例えば2桁なら256通り、最大255。通り数と最大値は1だけ異なります。負の数の表し方や符号ビットが指定された場合には、別の規則を適用します。
小数の重み 小数点の右側は1/16、1/256、1/4096と小さくなります。0.1は10進数の0.0625、0.01は0.00390625です。10.1なら整数部分の16と小数部分の0.0625を足し、16.0625になります。
加算と右端の0 Fに1を加えると10になります。また桁数制限がない整数の右端へ0を付けると16倍になります。例えば1→10→100と移るたびに値は16倍です。先頭へ0を付ける0001は1と同じ値であり、付ける位置が重要です。
コンピューターの表現との関係 16=2⁴なので、16進数1桁は2進数4桁に対応する。A、B、C、D、E、Fはそれぞれ10、11、12、13、14、15。 ただし、固定のビット数が指定された演算では、上の桁へはみ出した部分を保持できない場合があります。「桁数制限なし」と「8ビットに収める」といった条件を区別します。
図解
重要ポイント
- 使う記号は0から9とAからF。
- 整数の重みは右から1、16、256。
- 10進整数からの変換では割り算の余りを逆順に読む。
- n桁の総数は16ⁿ、符号なし最大値は16ⁿ−1。
- 小数点直後の重みは1/16。
間違えやすい点
- 総数と最大値を混同しない。
- 途中の0を詰めて桁の位置を変えない。
- 整数部の先頭の0と右端に付ける0の違いに注意する。
用語解説
- 基数
- 隣の桁へ移るときの倍率。16進数の基数は16。
- 桁の重み
- その位置が表す単位の大きさ。整数部は右から基数の0乗、1乗、2乗と続く。
- 基数変換
- 数の値を変えず、異なる基数の表記へ書き直すこと。
- ビット
- 0と1の二つの状態のいずれかを表す単位。nビットは2ⁿ通りの組合せを持つ。
関連教材
参考資料
教材データに登録された参考リンクです。リンク先の内容や更新日は提供元でご確認ください。
確認問題の出題・採点や学習履歴の保存にはログインが必要です。