ITパスポート試験のテクノロジ系で、多くの受験者が最初に壁と感じるのが「基数変換」です。
コンピュータは「2進数(0と1)」で動いていますが、私たちが普段使うのは「10進数(0〜9)」です。また、ITの世界では「16進数(0〜F)」も頻繁に使われます。
ここで扱う内容は、ITパスポートの勉強として最初に取り組むにしては難解なものです。いきなり挫けそうになると思いますが、ここを超えれば、あとに出てくる内容はそこまで難しくはありません。 誰もが一度は通る道です。合格に向けて、一緒にここを乗り越えましょう!
この記事では、「1011(2)」や「11(10)」のように、数字の右下に小さく括弧で囲まれた数字(基数)を記載しています。これは、その数字が何進数で表記されているかを示すためのルールです。初めは気にせず、読み進めるうちに慣れていきましょう。
この記事では、この3つの基数の仕組みと、試験で必ず出題される「基数変換」と「2進数の計算」のテクニックを、IT知識ゼロのあなたでも確実に理解し、得点できるよう徹底的に解説します。この知識は、ITパスポート合格のための最重要基礎知識です。
1. そもそも2進数、16進数とは何か?
基数とは、数を数える際にいくつで桁上がりをするかの基準となる数のことです。私たちが日常的に使う10進数は、数字が9の次、10になると桁上がりしますよね。他の基数もこの原理は同じです。
1-1. 2進数:コンピュータが使う世界
2進数は、0と1の2つの数字だけを使う数の表現方法です。
- 桁上がり: 2になると桁上がりします。
- 1の次は、10(イチゼロ)です。
なぜITで使うのか?:
コンピュータを構成する電子回路は、電気のON(スイッチが入っている)とOFF(スイッチが切れている)の2つの状態しか判別できません。このON/OFFの状態を1(ON)と0(OFF)に対応させているため、コンピュータは2進数で動いています。
1-2. 16進数:長い2進数を短く表現する魔法
16進数は、0からFまでの16種類の文字や数字を使う表現方法です。
- 使用する文字: 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, A, B, C, D, E, F
- 桁上がり: 16になると桁上がりします。
なぜアルファベットを使うのか?: 10進数では「10」は二桁の数字ですよね。しかし、16進数では「10」から「15」までを一桁で表現する必要があるため、アルファベットのA(10)からF(15)を対応させて使います。
| 10進数 | 16進数 |
| 10 | A |
| 11 | B |
| 12 | C |
| 13 | D |
| 14 | E |
| 15 | F |
なぜITで使うのか?:
2進数は桁数が非常に長くなるため、人間にとっては読みづらく、ミスも増えます。16進数は2進数の4桁(4ビット)を1桁で表現できるため、メモリのアドレスやデータの値を短く、分かりやすく表現するために使われます。
2. 基数変換の基本:10進数への変換(重み付けの法則)
すべての基数(2進数、16進数)を10進数に変換する際は、「桁の重み(位取り)」を使って計算します。これが基数変換の最も重要な原理です。
10進数の仕組み
123という10進数は、「1×102+2×101+3×100」でできています。
2進数を10進数へ変換する
2進数では、桁の重みが 20(1), 21(2), 22(4), 23(8), … となります。
【計算例】 1011(2) を10進数に変換
| 桁の重み (2n) | 23 (8) | 22 (4) | 21 (2) | 20 (1) |
| 2進数 | 1 | 0 | 1 | 1 |
| 計算 | 1×8 | 0×4 | 1×2 | 1×1 |
| 合計 | 8+0+2+1=11 |
よって、1011(2) は 11(10) です。
16進数を10進数へ変換する
16進数では、桁の重みが 160(1), 161(16), 162(256), … となります。
【計算例】 3A(16) を10進数に変換
- A は 10 と読み替えます。
- 計算: (3×161)+(A×160)
- (3×16)+(10×1)
- 48+10=58
よって、3A(16) は 58(10) です。
3. 基数変換の基本:10進数から他の基数への変換(割り算の法則)
10進数から他の基数へ変換する際は、その基数でひたすら割っていく方法(除算の余りを使う方法)が最も確実です。
10進数から2進数へ変換する
10進数を2で割り、その余りを下から順に並べます。
【計算例】 13(10) を2進数に変換
- 13÷2=6 あまり 1
- 6÷2=3 あまり 0
- 3÷2=1 あまり 1
- 1÷2=0 あまり 1
余りを下から順に並べて 1101(2) となります。
10進数から16進数へ変換する
10進数を16で割り、その余りを下から順に並べます。(余りが10以上になったらA〜Fに読み替えます)
【計算例】 254(10) を16進数に変換
- 254÷16=15 あまり 14 (E)
- 15÷16=0 あまり 15 (F)
余りを下から順に並べて FE(16) となります。
4. 2進数と16進数の直接変換(4ビットの法則)
2進数と16進数の変換は、10進数を経由せず、直接変換するテクニックが最も高速で、計算問題の時短に役立ちます。
原理: 16は 24 なので、16進数の1桁は、2進数の4桁(4ビット)に対応します。
2進数から16進数へ変換する
2進数を下から4桁ずつ区切り、それぞれを16進数に変換します。
【計算例】 11010111(2) を16進数に変換
- 下から4桁ずつ区切る: 1101 0111
- 0111(2) を10進数(7)に変換 → 7(16)
- 1101(2) を10進数(8+4+1=13、つまりD)に変換 → D(16)
よって、11010111(2) は D7(16) です。
16進数から2進数へ変換する
16進数の各桁を、それぞれ4桁の2進数に置き換えます。
【計算例】 A3(16) を2進数に変換
- A を2進数に変換 (10進数の10): 1010(2)
- 3 を2進数に変換: 0011(2)
よって、A3(16) は 10100011(2) です。
5. 2進数の計算:加算と減算のルール
ITパスポートでは、コンピュータの処理の基礎として、2進数の加算(足し算)と減算(引き算)が問われます。
2進数の加算(足し算)
10進数と異なり、「2」になると桁上がりします。
| 計算 | 和 | 繰り上がり(キャリー) |
| 0 + 0 | 0 | 0 |
| 0 + 1 | 1 | 0 |
| 1 + 0 | 1 | 0 |
| 1 + 1 | 0 | 1 (桁上がり) |
【計算例】 101(2)+011(2)
- 1桁目: 1 + 1 = 0(繰り上がり1)
- 2桁目: 0 + 1 + (繰り上がり1) = 0(繰り上がり1)
- 3桁目: 1 + 0 + (繰り上がり1) = 0(繰り上がり1)
- 結果: 1000(2)
2進数の減算(引き算):補数を使ったテクニック
コンピュータは引き算をせず、「補数(ほすう)」を使って足し算に置き換えて処理します。ITパスポートでは、この補数を使った減算の考え方が問われます。
手順:2の補数(にのほすう)を使った減算
- 引く数を2の補数に変換します。
- 1の補数:元の数の 0と1を反転させます。
- 2の補数:1の補数に 1 を足します。
- 元の数に、変換した2の補数を足します。
- 最上位の桁から繰り上がり(オーバーフロー)があったら、それは無視します。
【計算例】 1101(2)−0101(2)
- 引く数 0101(2) の2の補数を求める
- 1の補数: 1010(2)
- 2の補数: 1010(2)+1(2)=1011(2)
- 足し算を行う
- 1101(2) (元の数)
- +1011(2) (2の補数)
- =(1)1000(2)
- 最上位の繰り上がりを無視
- 答えは 1000(2) です。
6. 小数点の基数変換(ITパスポート必須知識)
ITパスポートでは、小数点以下の基数変換も出題されます。
10進数の小数を2進数へ変換する
10進数の小数を2進数へ変換するには、ひたすら2をかけて、整数部分を上から順に並べます。
【計算例】 0.625(10) を2進数に変換
- 0.625×2=1.25 (整数部分 1)
- 0.25×2=0.5 (整数部分 0)
- 0.5×2=1.0 (整数部分 1)
整数部分を上から順に並べて 0.101(2) となります。
2進数の小数を10進数へ変換する
小数点以下の桁の重みは、2−1(0.5), 2−2(0.25), 2−3(0.125), … となります。
【計算例】 0.101(2) を10進数に変換
- (1×2−1)+(0×2−2)+(1×2−3)
- (1×0.5)+(0×0.25)+(1×0.125)
- 0.5+0+0.125=0.625
7. データの単位:ビットとバイト
基数変換と合わせて理解しておくべきなのが、データの基本単位です。
- ビット (bit): 2進数の1桁(0か1)の情報量。コンピュータが扱う最小単位。
- バイト (Byte): 8ビットをひとまとめにした単位。文字や数字を表現する基本単位。
この「ビット」と「バイト」の変換問題もITパスポートでは頻出します。 1Byte=8bits
【計算例】 10KBは何ビットか?
- 10KB=10×1024Byte
- 10×1024Byte=10×1024×8bits
- 81,920bits
まとめ:計算力を合格の武器にする
基数変換と2進数の計算は、ITパスポートのテクノロジ系で最も確実に得点できる分野です。
- 10進数への変換は「桁の重み」で考える。
- 10進数からの変換は「割り算の余り」で考える。
- 2進数から16進数は「4桁ずつ」区切る。
- 引き算は「2の補数」で足し算に置き換える。
これらの計算方法をマスターすれば、本番の試験でも計算問題を自信を持って解き進めることができます。