3

私はグーグルで答えを探していましたが、それを見つけることができないようです。ただし、バイナリはバイト/オクテット、8ビットで表されます。つまり、文字a(私は思う)は01100010,であり、単語heyは

01101000 
01100101 
01111001 

だから私の質問は、なぜ8?これは、コンピューターが動作するのにちょうど良い数値ですか?そして、32ビット/ 62ビットコンピューターがすべて8の倍数であることに気づきました...それで、これはすべて、最初のコンピューターがどのように作られたかと関係がありますか?

この質問がQ/A基準を満たしていない場合は申し訳ありません...コードに関連していませんが、他の場所で質問することは考えられません。

4

3 に答える 3

2

「1960年代初頭、AT&Tは最初に遠距離幹線にデジタルテレフォニーを導入しました。これらは8ビットのµ-lawエンコーディングを使用していました。この大規模な投資により、8ビットデータの伝送コストが削減されることが約束されました。8ビットコードの使用デジタルテレフォニーの場合も、初期のインターネットの基本データユニットとして8ビットデータオクテットが採用されました。」

http://en.wikipedia.org/wiki/Byte

それがどれほど真実かわからない。ただし、これはIEEEで採用されているシンボルとスタイルにすぎないようです。

于 2012-02-14T14:02:46.173 に答える
2

答えは本当に「歴史的な理由」です。

コンピュータのメモリは、あるレベルでアドレス可能でなければなりません。RAMに情報を要求するときは、必要な情報を指定する必要があります。これにより、RAMから情報が返されます。理論的には、ビットアドレス指定可能なメモリを生成できます。1ビットを要求すると、1ビットが返されます。

ただし、プロセッサをメモリに接続するインターフェイスは、必要なアドレスを指定するのに十分な情報を伝達できる必要があるため、これはあまり効率的ではありません。アクセスの粒度が小さいほど、取得に十分な正確なアドレスを指定する前に、より多くのワイヤが必要になります(または同じ数のワイヤに沿ってより多くのプッシュが必要になります)。また、1ビットを複数回返すことは、複数ビットを1回返すよりも効率的ではありません(補足:一般的に当てはまります。これはシリアル対パラレルの議論であり、システムの複雑さと物理性が低下するため、シリアルインターフェイスは一般的に高速に実行できます。ただし、全体として、一度に多くのビットを使用する方が効率的です)。

次に、システム内のメモリの総量は、アドレス可能な最小のブロックのサイズによって部分的に制限されます。これは、可変サイズのメモリアドレスを使用しない限り、使用できるアドレスの数は限られているためです。ただし、各アドレスは選択できるビット数。したがって、論理的にバイトアドレス可能なメモリを備えたシステムは、論理的にビットアドレス可能なメモリを備えたシステムの8倍のRAMを保持できます。

そのため、より細かいレベルで論理的にアドレス指定可能なメモリを使用します(ただし、物理的には1バイトしか返さないRAMチップはありません)。これには2の累乗だけが実際に意味があり、歴史的にアクセスのレベルは1バイトでした。それは簡単にニブルまたは2バイトのワードである可能性があり、実際、古いシステムは8ビットよりも小さいチャンクを持っていました。

もちろん、最近のプロセッサはほとんどキャッシュラインサイズの増分でメモリを消費しますが、グループ化を表現し、現在仮想アドレス空間を分割する手段は残っており、CPU命令が直接アクセスできるメモリの最小量は依然として8ビットチャンク。CPU命令(および/またはプロセッサに入るパス)のマシンコードは、レジスタをアドレス指定できるようにするために、メモリコントローラに接続するワイヤの数と同じように増やす必要があります-これは、以前に話していたシステムメモリのアクセス可能性。

于 2012-02-14T14:04:13.340 に答える
0

私たちが8ビットバイトを使用する理由の1つは、私たちの周りの世界の複雑さが決定的な構造を持っているためです。人間のスケールでは、観察された物理的な世界には有限の数の特徴的な状態とパターンがあります。情報を分類し、秩序と混沌を区別し、脳内の記憶量が有限であるという私たちの生来の制限された能力-これらすべてが、私たちが日常の基本を満たすのに十分な[2 ^ 8 ... 2^64]状態を選択する理由です計算の必要性。

于 2012-02-16T16:29:59.633 に答える