コンピュータで数を扱う場合、内部では2進数で表現されているため、日常的に使う10進数とは相性があまりよくない。そこで、8進数や16進数といった表記方法で2進数の数値を表現することも多い。
そういうわけでコンピュータと付き合うには、16進数などを理解する必要がある。ここでは確認の意味も含めて、2進数や16進数などの表記方法を解説する。
2進数をいかにコンパクトに表現するか?
コンピュータ内部では、2進数で数値を表現するが、2進数では桁数が多すぎて、扱いが面倒になる。また、会話で2進数を使うのはもっと大変で、聞いても数値を簡単にイメージできない。かといって、10進数と2進数では変換に計算が必要なため、10進数を聞いて、2進数のビットパターンを思い浮かべることには無理がある。
このために8進数や16進数が使われる。これらは2のべき乗を使うため、2進数のビットの区切り位置と8進数、16進数の桁の区切りが一致する。8進数(2の3乗)なら3bit、16進数(2の4乗)なら4bitが対応する。このため、これらの表記と2進数のビットパターンの変換は容易となる。
8進数はミニコンなど、マイクロプロセッサが登場する以前に比較的よく使われていた。0~7の数字を使うため、特殊な文字を定義する必要がなく、3bitならば簡単にビットパターンを覚えられる。しかし、CPUのデータ単位が8bit、16bitといった2のべき乗の場合、3bitでは割り切れず最上位桁が一部のみしか対応しなくなってしまうため、8進数は使いにくい。
これに対して4bitが1桁に対応する16進数は、2のべき乗のデータ単位を区切りよく表示できる。そのためマイクロプロセッサ時代になり、マニュアルやドキュメント類、アセンブラなどのソフトウェアでも16進数が標準的となった。
コンピュータで扱うデータには「型」がある
コンピュータのビットを扱う場合、データ型を意識する必要がある。コンピュータで扱うデータはビット数が決まっており、これを「型」(Type)という。多くのコンピュータでは、8bitを基本にして、16bit、32bit、64bitといった長さの「型」を扱う。
型には、長さ(ビット幅)のほかに、「整数」と「小数点数値」、「符号あり」「符号なし」といった区別がある。これらは基本的にはCPUが処理対象とするデータの型であり、さらにコンピュータ言語で数値を扱う場合の基本的な型として定義される。このため、アプリケーションも内部的には、これらの型を使う。
型には名前がある。広く使われるものは、C言語で定義された型名である。以下の表にWindowsの一般的な型を示す。現在のWindowsでは、intは、32bitの符号付き整数を表すがlongも32bit整数として扱う。
またWindowsでは、16bitをWordと表記し、32bitをDWord(Double Word)、64bitをQWord(Quad Word)とすることがある。これは、インテルCPUのドキュメントで主に使われていた表記だ。
こうした混乱もあるため、ビット数を示す「Int32」(符号つき)、「UInt32」(符号なし)といった型の名前を使うほうが間違いが少ない。逆に単にlongという型名があったとき、コンテキストに注意する必要がある。
GUIで2進数、16進数を扱う
最も簡単にWindowsで2進数や16進数を扱う方法の1つに、標準の「電卓」プログラムが持つ「プログラマー」モードがある(記事冒頭画面)。
「電卓」を起動したら左上のハンバーガーアイコンをクリックして「プログラマー」を選択する。ここでは、ウィンドウ左中程で、数値の表示、入力方法を「HEX」(16進数)、「DEC」(10進数)、「OCT」(8進数)、「BIN」(2進数)から選択し、データ型をラインの上、ウィンドウ中央部で「BYTE」(8bit)、「WORD」(16bit)、「DWORD」(32bit)、「QWORD」(64bit)から選択する。
手動で演算する必要はあるが、簡単な基数変換や演算だけなら、これでも十分だ。

この連載の記事
-
第471回
PC
Windowsのコマンドラインでエイリアスを使う -
第470回
PC
Windows用のパッケージマネージャー「Winget」 プレビュー版で機能が充実してきた -
第469回
PC
Windows Updateの27年 悪役だった頃から改良が進んで、徐々に目立たない存在に -
第468回
PC
2025年のWindowsどうなる!? Windows Insider Programの状況をあらためて見る -
第467回
PC
Copilot+ PCのNPUでカメラを処理する「Windows Studio Effects」 その内容や効果は? -
第466回
PC
PowerToysの最近の新機能には、複数アプリを指定位置に起動する「ワークスペース」や新規作成のカスタマイズがある -
第465回
PC
WindowsのPowerShellからBluetoothデバイスを調べる -
第464回
PC
Windows 10のサポート切れまで1年を切った さてWindows 10マシンをどうする? -
第463回
PC
Windows Terminal Preview版でSixelグラフィックスを実際に表示させてみる -
第462回
PC
Windows Terminal Preview版でSixelグラフィックスを扱う -
第461回
PC
Copilot+ PCを買ってみたが、「今焦って買う必要はない」のかもしれない - この連載の一覧へ