コンピュータにおける数値
出典: フリー百科事典『ウィキペディア(Wikipedia)』 (2022/05/09 14:54 UTC 版)
デジタルコンピュータでは、全てのデータは内部的には、0/1 という数値の集まり(あるいはスイッチのOFF/ONという状態、さらに厳密に言えば Low/Highという2種類の電圧)という形で存在している。ひとつのスイッチのOFF/ONという状態が、数値の0/1と対応しており(同一視する方法で設計されており)、0/1があるので2進数が表現可能となっている。ひとつのスイッチ、0/1ひとつ、2進数の1桁相当を「1ビット」と言う。ひとつのスイッチが1桁の2進数に対応するので、スイッチの個数を増やして組み合わせてゆくことで(同タイプのスイッチを並べておいてひとまとまりとして扱うことで)、桁数の多い2進数も表現できる。2進数8桁を、しばしばひとかたまりとしてとらえて「1バイト」という。1バイト(=8ビット)で、28=256種類の値が表現できる。これの扱い方はいくつかあり、ひとつはこれを0〜255として扱う方法がある。あるいはこれを「-128〜0〜127」という整数などと見なして扱うこと(回路を設計すること)もできる。1バイトではわずかこの程度の範囲の整数しか表現できないが、桁数を増やす(ビット数、バイト数を増やす)ことで、もっと大きな整数を表現できることになる。たとえば2バイトならば、-32768〜+32767が表現できる。コンピュータの歴史では、CPUが一度に扱える桁数が 1バイト→2バイト→4バイト→8バイトと増すにつれ、大きな桁数の整数を表現し扱うことができるようになってきた。(整数以上の数の表現方法まで説明するとあまりに長文になるので省略するが)ともかくこのようにして、さまざまな工夫をすることで、コンピュータの内部では、自然数・負の数・整数・実数などをLow/Highという電圧(あるいは0/1)の集まりで表現し、多数のスイッチの電位を超高速で連鎖的に変化させることで、数の演算を実現している。 「コンピュータの数値表現」、「浮動小数点数」、および「固定小数点数」も参照 なお、パソコンなどの回路では、文字も「文字コード」という数値で(さらに言えば、想定されている数値と対応する、スイッチ群のOn/Offという状態の形で)存在している。例えばラテン文字の1番目の大文字 A は標準的なASCIIコードやShift_JIS・UTF-8などでは十六進法表記で0x41(十進法表記で65)で、小文字の a は0x61=97である。同じように数字も文字として存在しており、文字 0 の数値は0x30=48である。 「文字コード」も参照
※この「コンピュータにおける数値」の解説は、「数」の解説の一部です。
「コンピュータにおける数値」を含む「数」の記事については、「数」の概要を参照ください。
- コンピュータにおける数値のページへのリンク