コンピュータのストレージやデータ転送を語る際に、「ビット(bit)」と「バイト(Byte)」という用語が頻繁に登場します。これらは異なる意味と用途を持っています。
ビット(bit)
「ビット」は英語の「bit」から来ており、一般的に小文字の「b」で表記されます。これは二進法の基本単位であり、データ転送の計量単位です。
ビットは情報の最小単位であり、0または1のいずれかの状態を表します。これは二進法システムの基本的な構成要素であり、デジタルデータの状態を表現します。ビットは、数字、文字、画像、オーディオ、ビデオなど、あらゆるデータ型を表現するために使用されます。コンピュータ内部のデータ処理と転送はすべてビットを基礎として行われます。
例: 64ビットプロセッサは、64ビットのデータを処理する命令を実行でき、一度の操作で64ビットのデータを処理できます。
*覚えておくポイント1: コンピュータの計量単位で日常的に見かける「b」は、ビット(bit)の略称です。
バイト(Byte)
「バイト」は英語の「Byte」から来ており、一般的に大文字の「B」で表記されます。これはファイルストレージの計量単位です。
バイトは、コンピュータのストレージとデータ転送の基本単位です。8つの連続したビットで構成され、1文字または8ビットの二進データを格納できます。バイトは通常、コンピュータのストレージ容量、ファイルサイズ、ネットワーク帯域幅などを表すために使用されます。コンピュータのメモリ、ハードディスクドライブ、ネットワーク接続はすべて、バイト単位で管理および転送されます。
バイトはコンピュータにおけるデータサイズの基本単位です。コンピュータはバイト単位で情報を格納および解釈し、1バイトが8つの二進ビットから構成される(後述)と定義しています。つまり、1バイトは8ビットに等しい(1Byte=8bit)です。私たちが見るファイルのストレージサイズはバイト単位(B)で表示されます。
*覚えておくポイント2: コンピュータの計量単位で日常的に見かける「B」は、バイト(Byte)の略称です。
例: ディスクの読み書き速度、SSDは通常「7000MB/s」のように表示され、これは毎秒のディスク読み取り速度が7000 MByteであることを意味します。
上記の2つの*覚えておくポイント*に基づいて、ビット、バイト、bps、Bps、pps、Gbpsの違いを拡張して説明します。
Bとbの違い:大文字と小文字に注意!
*覚えておくポイント1: bはビット(bit)の略称です。
- ビット = b
- キロビット = Kb
- メガビット = Mb
- ギガビット = Gb
- テラビット = Tb
*覚えておくポイント2: Bはバイト(Byte)の略称です。
- バイト = B
- キロバイト = KB
- メガバイト = MB
- ギガバイト = GB
- テラバイト = TB
単位換算
K = キロ (Kilo)、M = メガ (Mega)、G = ギガ (Giga)、T = テラ (Tera) です。
T、G、M、Kの単位間の換算は、2の10乗(1024)です。したがって:
- 1GB = 1 GByte = 1024 MByte = 1048576 KByte = 1073741824 Byte (ここでの1GBはバイトを指します)
- 1Gb = 1 Gbit = 1024 Mbit = 1048576 Kbit = 1073741824 bit (ここでの1Gbはビットを指します)
ビットとバイトの起源
(これはビットとバイトを理解する上で重要です)
以下のように理解できます:
- コンピュータを最初に設計する際、科学者たちはどのようにしてコンピュータが表現と計算を行うかを検討しました。最終的に、二進法が最も表現しやすく、安定して実装できることが判明しました。そのため、コンピュータは二進法で計算を行うことが確定しました。各ビットは「0」または「1」の2つの状態を持ちます。
- しかし、単独の「0」または「1」だけでは、他のものを表現することはできません。そのため、複数のビットを組み合わせる必要があり、組み合わせることでより多くの可能性を表現できます。(ASCIIコードを参考にしてください)。
- 様々な理由(二進法システムの基礎、互換性と標準化、ストレージ容量のバランス、バイトアドレスとバイトアライメントなど)により、一般的なコンピュータは8ビットを1つのストレージ単位として選択します(2の8乗の組み合わせで256の異なる状態を表現できます)。
1バイト(8ビット)は、以下を含む多种類のデータを格納できます:
- 符号なし整数(Unsigned Integer):8ビットは0から255の間の整数を表現できます。各ビットは2つの状態(0または1)を表現でき、8ビットは2^8 = 256の異なる組み合わせを形成できます。
- 文字(Character):ASCIIコード(American Standard Code for Information Interchange)を使用すると、8ビットはほとんどの基本的な英字、数字、句読点、特殊文字を表現できます。
- 符号付き整数(Signed Integer):8ビットは-128から127の間の符号付き整数を表現できます。1ビットは符号ビット(0は正数、1は負数)に使用され、残りの7ビットは数値を表現します。
- ブール値(Boolean):8ビットは8つのブール値を表現でき、各ビットは1つのブール値を表し、0は偽(False)、1は真(True)を意味します。
- 画像ピクセル(Image Pixel):白黒画像では、各ピクセルは1ビットで表現でき、0は黒、1は白を意味します。
したがって、ビットとバイトの換算は以下のように表されます。
1 Byte = 8 bit または 1 bit = 0.125 Byte
上記の説明を読めば、ビット、バイト、bps、Bps、pps、Gbpsが理解できたはずです。以下にそれぞれの定義を記述するだけで、皆さん自身でこれらの問題を解決できるでしょう。
- bps
- bits per second の略。毎秒何ビットが転送されるかを示します。主に信号転送速度、ネットワーク帯域幅、オーディオビデオデータ転送速度に使用されます。
- Bps
- Bytes per second の略。毎秒何バイトが転送されるかを示します。主にデータの転送速度に使用されます。
- pps
- Packets per second の略。毎秒何データパケットが転送されるかを示します。主にネットワーク上のデータパケット転送速度に使用されます。
- Gbps
- Gbits per second の略。毎秒何ギガビットが転送されるかを示します。主にスイッチのバックプレーン転送帯域幅に使用されます。
まだ疑問が残る場合は、このように説明しましょう——bpsとBpsの違い:
機能的には(または異なる観点から見ると)、bpsとBpsは、異なるレベルのデータ転送速度またはストレージデバイスの速度を測定するために使用されます。bpsは、信号転送速度、ネットワーク帯域幅、オーディオビデオデータ転送速度など(主にビットのスループット、つまり帯域幅を示し、家庭用インターネットの一般的な200M帯域幅は実際には200Mbpsです)に使用されます。
一方、Bpsは、データの転送速度、ストレージデバイスの読み書き速度、データキャッシュなどに使用されます。これらは、データ転送の効率とパフォーマンスを理解し、評価するための一般的な単位です(主にストレージデータのパフォーマンス、つまりディスクの毎秒書き込み速度を示します)。
これらも同じ換算関係に従います。
1 Bps = 1 B/s = 8 bps
1 KBps = 1 KB/s = 8 Kbps
1 MBps = 1 MB/s = 8 Mbps
1 GBps = 1 GB/s = 8 Gbps
1 TBps = 1 TB/s = 8 Tbps
迅雷のようなダウンロードツールは、毎秒ディスクに書き込まれるファイル量を基準に速度を表示します。したがって、表示される「2.67 KB/s」は、ファイルの書き込み速度を示しています。これを転送速度として表現する場合、21.36 Kbps(2.67 KBps * 8 = 21.36 Kbps)に換算する必要があります。
したがって、迅雷は主にファイルのディスクへの書き込み速度の概念を示しており、ネットワーク転送帯域幅を示しているわけではありません。(リソースを提供するサーバーのダウンロード速度が毎秒100000MBであっても、ご自宅のインターネット帯域幅は毎秒200M、ハードディスクの読み書き速度は毎秒50MBに制限されている場合、データの書き込み速度は最大でも50M(ボトルネック理論)になります)。迅雷は、ファイルがディスクに書き込まれる実際の状態を正確かつ厳密に表現するため、このように表示します。これが、Bpsがディスクの読み書き性能の指標——ファイルストレージ計量単位——に使用され、データ転送速度のbpsではなく使用される理由です。
これで理解できましたか?
では、皆さんは考えてみてください。現在、各通信事業者が宣伝している家庭用インターネットの帯域幅100Mbps、200Mbps、500Mbpsは、迅雷でのダウンロード速度KB/sに対応すると、それぞれの理論値はどれくらいになるのでしょうか?