バイトアドレッシング

フリー百科事典ウィキペディアより
ナビゲーションにジャンプ 検索にジャンプ

ハードウェア アーキテクチャのバイト アドレッシングは、個々のバイトへのアクセスをサポートしますワード単位でデータにアクセスするワードアドレス指定可能なアーキテクチャであるワード マシンとは対照的に、バイト アドレッシングを使用するコンピュータはバイト マシンと呼ばれることがあります[1] [2]

背景

デジタル ストレージの基本単位はビットで、単一の 0 または 1 を格納します。多くの一般的なアーキテクチャでは、一度に 8 ビットを超えるデータをアドレス指定できます。たとえば、Intel 386SXプロセッサは、データが 16 ビットバスを介して転送されるため、16 ビット (2 バイト) データを処理できますただし、メモリ内のデータの長さはさまざまです。バイトアドレスメモリは、バスよりも狭い単位でのデータアクセスをサポートしています。Intel 8008のような 8 ビット プロセッサは 8 ビットをアドレス指定しますが、これはバスの全幅であるため、ワード アドレス指定可能と見なされます。メモリを 8 ビット単位でアドレス指定しますが、一度に 16 ビットをフェッチおよび格納できる 386SX は、バイト アドレス可能と呼ばれます。

ワード アドレス指定の利点は、同じビット数でより多くのメモリをアドレス指定できることです。IBM 7094 には 15 ビットのアドレスがあるため、36 ビットの 32,768 ワードをアドレス指定できます。マシンは、多くの場合、アドレス可能なメモリを完全に補完して構築されました。6 ビットの 32,768 バイトをアドレス指定することは、科学および工学のユーザーにとってはあまり役に立たないでしょう。または、32 ビットのPentiumを検討してください。プロセッサー。その 32 ビット アドレス バスは、40 億の異なる項目に対応できます。ワード アドレッシングを使用すると、32 ビット アドレス バスで 4 ギガワードをアドレス指定できます。または最新の 8 ビット バイトを使用して 16 ギガバイト。386SX とその後継機がワード アドレス指定を使用していた場合、科学者、エンジニア、およびゲーマーはすべて、32 ビット マシンで 4 倍の大きさのプログラムを楽しむことができたはずです。繰り返しになりますが、ワード プロセッシング、HTML のレンダリング、およびその他すべてのテキスト アプリケーションの実行速度は遅くなります。

コンピューターが非常に高価で、科学と工学にのみ、または主に使用されていたとき、ワード アドレス指定は明白なモードでした。テキストの処理にコンピュータを使用する方が費用対効果が高くなったため、ハードウェア設計者はバイト アドレッシングに移行しました。

バイト アドレス指定が有用である理由を説明するために、IBM 7094を考えてみましょう。これは、ワード アドレス指定が可能で、バイトの概念がありません。これは 36 ビットのワードを持ち、その 6 ビットの文字コードを 6 対 1 ワードで格納します。文字列の 16 番目の文字を変更するには、プログラムはこれが文字列の 3 番目の単語の 4 番目の文字であると判断し、3 番目の単語をフェッチし、レジスタに保持されている値から 4 番目の文字の古い値をマスクする必要があります。ビット単位または新しいもので、修正された単語を保存します。少なくとも 6 つの機械語命令。通常、これらはサブルーチンに委ねられているため、単一の文字のすべてのストアまたはフェッチには、サブルーチンの呼び出しと戻りのオーバーヘッドが伴います。バイト アドレッシングを使用すると、1 つの命令で実現できます。つまり、この文字コードをそのバイト アドレスに格納します。テキスト プログラムは書きやすく、サイズが小さく、実行速度が速くなります。

ハイブリッドシステム

PDP-10などの一部のシステムは、ワード アドレス指定を使用しますが、ワード アドレスとワード内の特定のバイトのインデックスの両方を含む バイト ポインターを使用してメモリにアクセスできる特別な命令を使用して、個々のバイトへのアクセスを容易にします。

も参照

参考文献

  1. ^ "ワートマシン" (ドイツ語). 2017-04-09 のオリジナルからのアーカイブ2017 年 4 月9 日閲覧
  2. ^ ハンセン、HR (1986). Wirtschaftsinformatik (ドイツ語)。巻。私(5版)。ドイツ、シュトゥットガルト:グスタフ・フィッシャー。p。125。