基数 (キスウ) とは | 意味や読み方など丁寧でわかりやすい用語解説

作成日: 更新日:

基数 (キスウ) の読み方

日本語表記

基数 (キス)

英語表記

radix (ラディックス)

基数 (キスウ) の意味や用語解説

基数とは、数値を表現する際に、各桁の重みの基準となる数のことである。これは一般的に「N進数」と呼ばれる記数法の「N」に当たる部分を指し、その記数法で用いられる数字の種類の個数でもある。我々が日常生活で最も頻繁に利用しているのは10進数であり、これは基数が10であることを意味する。10進数では、0、1、2、3、4、5、6、7、8、9という10種類の数字を使い、桁が一つ上がるごとに値が10倍になるというルールで数を表現する。システムエンジニアリングの世界では、この10進数だけでなく、コンピュータの動作原理に直結する2進数や、それを人間が扱いやすくした8進数、16進数といった異なる基数を持つ記数法が頻繁に用いられる。そのため、基数の概念を正しく理解することは、コンピュータの仕組みを根本から把握するための第一歩となる。 まず、基数の働きを理解するために、身近な10進数を改めて分析する。例えば、数字の「354」は、我々が直感的に「三百五十四」と認識するが、これは基数10の仕組みに基づいている。具体的には、百の位の「3」は3×10²(3×100)、十の位の「5」は5×10¹(5×10)、一の位の「4」は4×10⁰(4×1)の値を持ち、これらの合計値(300 + 50 + 4)として「354」という数が構成されている。このように、各桁の数字に、基数のべき乗(10の0乗、10の1乗、10の2乗…)を掛け合わせたものの総和で数値を表現するのが、基数を用いた記数法の基本原理である。この各桁に掛け合わせる基数のべき乗のことを「桁の重み」と呼ぶ。 コンピュータの内部では、電気信号のオンとオフという二つの状態しか物理的に表現できない。この二つの状態を、それぞれ数字の「1」(オン)と「0」(オフ)に対応させたものが2進数である。したがって、コンピュータが根本的に扱う数値は、基数が2の2進数となる。2進数では、使用できる数字が0と1の二種類のみであり、桁が一つ上がるごとに値は2倍になる。例えば、2進数で「1101」と表記された数は、10進数に変換すると13となる。これは、各桁の重みが2のべき乗で計算されるためである。右から順に、1×2⁰(1×1)、0×2¹(0×2)、1×2²(1×4)、1×2³(1×8)となり、これらの合計(1 + 0 + 4 + 8)が13となる。コンピュータは、あらゆる数値、文字、画像などの情報を、最終的にはこの0と1の羅列である2進数のデータとして処理している。 しかし、2進数は人間にとって非常に扱いにくいという欠点がある。例えば、10進数の「200」を2進数で表現すると「11001000」となり、桁数が非常に長くなるため、読み書きの際に間違いが発生しやすくなる。この問題を解決し、2進数をより簡潔に、人間が理解しやすい形で表現するために考案されたのが8進数と16進数である。 8進数は、基数が8の記数法であり、0から7までの8種類の数字を使用する。8は2の3乗(2³=8)であるため、2進数の3桁を8進数の1桁でぴったり表現できるという特徴がある。これにより、2進数から8進数への変換、またその逆の変換が非常に容易に行える。例えば、2進数の「11001000」を8進数に変換する場合、右から3桁ずつ区切り、「11」「001」「000」とする。先頭が3桁に満たない場合は0を補って「011」「001」「000」と見なす。これを各グループで10進数に変換すると、それぞれ「3」「1」「0」となるため、8進数では「310」と簡潔に表記できる。主に、初期のコンピュータシステムや一部のOSのファイルパーミッション設定などで利用されてきた。 現在、IT分野で2進数の代替表現として最も広く使われているのは16進数である。16進数は基数が16の記数法で、0から9までの10個の数字に加え、10から15までを表現するためにA、B、C、D、E、Fの6つのアルファベットを用いる。Aが10、Bが11、…、Fが15に対応する。16は2の4乗(2⁴=16)であるため、2進数の4桁を16進数の1桁で表現できる。この対応関係から、2進数との親和性が非常に高く、長い2進数の羅列を極めてコンパクトに表現することが可能となる。例えば、2進数「11001000」を16進数に変換するには、右から4桁ずつ「1100」と「1000」に区切る。それぞれを10進数に変換すると「12」と「8」になる。12は16進数では「C」で表現するため、結果として「C8」となる。この16進数は、メモリのアドレス指定、MACアドレスの表記、HTMLやCSSにおけるカラーコード(例:#FFFFFF)など、プログラミングやネットワークの現場で日常的に使用される。 システムエンジニアは、これらの異なる基数を持つ数値を日常的に扱う。デバッグ作業中にメモリダンプを16進数で読んだり、ネットワークのサブネット計算を2進数で行ったり、エラーコードを解読したりと、様々な場面で基数の知識と相互変換のスキルが求められる。基数の概念を深く理解することは、コンピュータがどのようにデータを保持し、演算しているのかという本質的な仕組みを捉える上で不可欠な基礎知識なのである。

基数 (キスウ) とは | 意味や読み方など丁寧でわかりやすい用語解説