コンピュータにおけるビットとは何か【後編】
「bit=0か1」「Byte=8bit」 コンピュータが動く“基本のき”
コンピュータの基本を語る上で欠かせない「ビット」と「バイト」。この2つの単位の違いや役割を正確に理解している人は意外と少ない。ビットとバイトの仕組みや数値との関係などを解説する。
コンピュータの基本構造を理解するには、「ビット」(bit)と「バイト」(Byte)の違いを知ることが欠かせない。情報は0と1から成る「ビット」の列として扱われ、その集まりである「バイト」が文字や数値を表現する最小単位になる。
「ビット=0か1の単位」「バイト=8bit」という基本を知っていても、実際にどのように数値や文字が表現されているかまでは理解していない人は少なくないだろう。そこで本稿では、ビットとバイトの仕組み、数値や文字との対応関係、そしてそれを支える2進数の基本構造までを解説する。
ビット(bit)とバイト(Byte)
コンピュータは、ビット単位でデータを検証・操作できるが、多くのシステムはバイト単位でデータを処理・格納する。バイトは通常、8個のビットが連続して構成された単位で、文字や数値、命令といった情報を扱う上での最小単位となる。
もっとも、「1バイト=8bit」という定義は現在の主流ではあるが、全てのシステムでそうだったわけではない。過去の一部のコンピュータアーキテクチャやデータフォーマットでは、1バイトを6bitまたは9bitで構成していた例もある。
コンピュータのメモリやストレージへの参照は、常にバイト単位で行われる。例えば、ストレージデバイスの容量が1TB(テラバイト)であれば、おおよそ100万MB(メガバイト)に相当する。さらに、1MBはおよそ100万バイトであり、これは800万bitに等しい。したがって、1TBのドライブには約1兆バイト、あるいは約8兆bitのデータを格納できる計算となる。
「オクテット」(octet)という用語は、バイトと同じく8bitの単位を指す言葉として使われることがあるが、現代ではバイトの方が一般的だ。「ニブル」(nibble)という用語が4bitの単位を表す際に使われることもあるが、これもあまり一般的ではない。
一方で、「ワード」(word)は2バイト(16bit)以上の連続するビット列を表す用語として広く使われている。ワードの長さはアーキテクチャによって異なり、通常は16bit、32bit、あるいは64bitだ。
併せて読みたいお薦め記事
連載:コンピュータにおけるビットとは何か
コンピュータを動かす基本の仕組み
ビットの仕組み
バイトを構成する各ビットには、それぞれ固有の値(重み)が割り当てられている。これはビットの位置に基づいており、通常は右端を最下位ビット(LSB)、左端を最上位ビット(MSB)と呼ぶ。
バイト内のビットは右から左に向かって並び、それぞれに「2の累乗」に基づいた値(重み)が割り当てられている。最も右側のビットは「2の0乗」に相当し、その値は1。次のビットは「2の1乗」で2、その次は「2の2乗」で4というように、左に進むごとに値は2倍になっていく。この仕組みにより、ビットの組み合わせによって数値を表現できるようになっている。
バイト内の各ビットには特定の値が割り当てられ、これは位(位置)と呼ばれる。位は右から左のパターンで各ビットに割り当てられ、1から始まって各ビットに対して値を2倍にして増加させる。以下の表で説明されている通りだ。
| ビット位置(右から左) | 位(位置) |
|---|---|
| ビット1 | 1 |
| ビット2 | 2 |
| ビット3 | 4 |
| ビット4 | 8 |
| ビット5 | 16 |
| ビット6 | 32 |
| ビット7 | 64 |
| ビット8 | 128 |
ビットの位は、バイト全体としての意味や数値を決定するために用いられる。各ビットは、その位に応じた重みを持ち、「1」であるビットの重みを合計することで、バイトの値が決まる。
一方、ビットの値が「0」である場合、そのビットが担当する桁の値は合計に含まれない。こうして各ビットの値を足し合わせて得られた数値は、「ASCII」などの文字コードにおいて、特定の文字に対応する数値となる。ASCIIコードは、コンピュータ上で文字を扱うために広く使われている文字セットで、10進の数字(0~9)、英字の大文字(A~Z)と小文字(a~z)、さらに「%」「&」といった一部の記号などを表現できる。
8bitの特定の組み合わせとしての単一のバイトは、00000000バイトから始まり11111111バイトで終わる最大256通りの一意な文字を表すことができる。ビットパターンのさまざまな組み合わせは0から255の範囲を提供し、これはバイトが最大256の一意なビットパターン(最大256の可能な組み合わせを情報伝達に使用できる)を表すことができることを意味する。
例えば、ASCII 文字セットにおける大文字「S」には10進値83が割り当てられ、これはバイナリ01010011に相当する。図はSのバイトと各ビットの対応する位を示している。これは4つの1bitと4つの0bitを含む。合計すると、1bitに関連付けられた位の合計は83となり、これはASCIIの大文字Sに割り当てられた10進値に対応する。
小文字のsは大文字のSとは異なる10進値とバイナリを持つ。小文字sの10進値は115だ。バイト単位では、その値は01110011となる。
8bitのバイトはASCIIで最大256の一意な文字しか表すことができないため、より多くの文字を表現するために他の文字セットが開発された。これらの文字セットは文字当たり複数のバイトを使用する。その一つがUnicode Transformation Format(UTF)文字セットで、文字当たり1から4バイトを使用する。
このように文字セットの仕様が異なっていても、1バイトが8bitで構成され、各ビットは「0」または「1」の状態を取るという基本構造は共通している。
2進数とは何か
2進数とは、0と1の2種類の数字のみを用いて数値を表現する方式だ。これは、電気のオン/オフといった2つの状態で情報を処理するコンピュータに適した表記法であり、あらゆる数値やデータを0と1の組み合わせとして表現できる。
例えば、10進数の「1」は2進数で1、10進数の「11」は2進数で1011と表される。各桁は右から左に向かって、2の0乗、2の1乗、2の2乗といったように2のべき乗の値を持ち、それらの合計によって10進数の値が決まる。2進数は数字0と1を表現するために2つのビットのみを使用するため、これらのビットのさまざまな組み合わせが異なる数を表現するために使用される。例えば、10進数の1は001と表現され、11は1011と表現される。
バイナリでは、以下のようなさまざまな演算を実行することができる。
- バイナリ加算
- バイナリ減算
- バイナリ乗算
- バイナリ除算
バイナリは、数値を表現するために2つの一意な数字(0と1)を用いる表記法であり、基数が2の数体系として「2進数」とも呼ばれる。この2進数は、現代の電子システムやコンピューティングの基礎をなす重要な概念となっている。電子回路や論理ゲートだけでなく、プログラミング言語、モバイル端末、ストレージデバイス、組み込み機器、暗号化アルゴリズムなども、すべて2進数を基盤として設計されている。IP(インターネットプロトコル)においても、データパケットのルーティングにこの2進数システムが利用されている。
2進数の利点の一つは、扱う値が「0」と「1」の2種類のみで済むという点にある。これにより、デジタルシステムにおける回路設計の単純化、処理の高速化、装置間の互換性向上といった効果が得られる。
バイナリは構造が単純であるにもかかわらず、基本的なビット列から複雑なデジタル信号やデータ構造まで、多様な情報の表現に利用できる柔軟性を持つ。なお、2進数以外にも、以下のような他のn進数(基数をnとする数体系)が存在する。
- 8進数(基数8)
- 10進数(基数10)
- 16進数(基数16)
Copyright © ITmedia, Inc. All Rights Reserved.
TechTarget発 世界のインサイト&ベストプラクティス
米国TechTargetの豊富な記事の中から、さまざまな業種や職種に関する動向やビジネスノウハウなどを厳選してお届けします。
この記事の著者
関連記事
新着ホワイトペーパー PR
-
事例
[フォーティネットジャパン合同会社] 複雑化しがちな「SASE運用」 IT・医療・金融などの事例に見る導入成功の秘訣 -
製品資料
[フォーティネットジャパン合同会社] 「SD-WAN」導入で失敗しないための5つの重要事項 -
技術文書・技術解説
[フォーティネットジャパン合同会社] VPNの代替候補「ZTNA」を理解できるようになる“3大要素”とは? -
事例
[フォーティネットジャパン合同会社] すぐ分かる「SD-WAN」選定のポイント 成功企業はどんな成果を出した? -
製品資料
[SCSK株式会社] 「Dropbox」管理・運用の困りごと解決ガイド
こんなメディアも見られています
TechTargetジャパンに関連する情報をお探しであれば、こちらのメディアもお役に立てるかもしれません。
ベンダーコンテンツ PR
From Informa TechTarget
SpecialPR
アクセスランキング
-
1
半数がブルーカラー転向を視野に? ベテランエンジニアを追い込む“54歳の壁”
-
2
「エージェントを作るな、スキルを作れ?」 Anthropicが提唱するAI運用の勘所
-
3
なぜ人はいるのにDXが進まない? ライオンも直面した“老害”レガシーシステム
-
4
Microsoft月例パッチ1400件超で過去最多 「限界点」を迎えたパッチ管理
-
5
「Windows」の不要なファイルを安全に消して容量を空ける方法
-
6
PHP脆弱性「PHP2Shell」で2260万件に影響 情シスの緊急チェックリスト
-
7
SAP導入後も残る“Excel依存” 京急電鉄は「kintone」でどう解消した?
-
8
AI時代のITインフラ戦略とは? 販売代理店が知っておきたい最新トレンド
-
9
被害額は過去最高額 それでも「サイバー犯罪者が捕まらない」3つの理由
-
10
Microsoft 365の「テナント統合・分離」問題 手戻りのない道を選ぶ秘訣とは?
ホワイトペーパーランキング PR
-
1
AI駆動攻撃にどう対抗する? 超速の攻撃からエンドポイントを保護する方法
-
2
2026年のサイバーセキュリティには何が必要か? 最新データに学ぶ傾向と対策
-
3
経験豊富な即戦力人材に直接アプローチできる、「攻めの採用」への転換術
-
4
「IT史に名を残すシステム障害」8選
-
5
最速72分でデータが流出? 最新の脅威トレンドや侵入手法から分かった防衛策
-
6
AI駆動開発のスピードと安全性を両立 「品質・セキュリティ管理」の実践ガイド
-
7
不審メールの経路や見せ方に変化? 2026年夏の3事例から見えた動向と対処方法
-
8
HDDを使わない「SSDオンリー」が無謀なのはなぜ?
-
9
「標的型攻撃メール」事例・サンプル集
-
10
Microsoft 365のメールセキュリティ、3つの“死角”と追加で検討すべき対策とは
TechTargetジャパン SNS
インフォメーション
注目情報をチェック
TechTargetジャパンをフォロー