16ビットコンピューティング

ウィキペディアから、無料の百科事典
ナビゲーションにジャンプ 検索にジャンプ

コンピュータアーキテクチャでは16ビット 整数メモリアドレス、またはその他のデータユニットは、16ビット(2オクテット)幅のものです。また、16ビット中央処理装置(CPU)および算術論理演算装置(ALU)のアーキテクチャーは、そのサイズのレジスターアドレス・バス、またはデータ・バスに基づくアーキテクチャーです。16ビットマイクロコンピュータは、16ビットマイクロプロセッサを使用するコンピュータです

16ビットレジスタは216の異なる値を格納できます。16ビットに格納できる整数値の範囲は、使用する整数表現によって異なります。最も一般的な2つの表現では、範囲は(符号なし2進数として表現する場合は0〜65,535(2 16 − 1)であり、次のように表現する場合は−32,768(−1×2 15)〜32,767(2 15 − 1)です。2の補数2 16は65,536であるため、16ビットのメモリアドレスを持つプロセッサは、64 KB(65,536バイト)のバイトアドレス可能に直接アクセスできます。メモリー。システムが16ビットセグメントオフセットのセグメンテーションを使用する場合、より多くにアクセスできます。

16ビットアーキテクチャ

MIT Whirlwind1951年頃[1] [2]は、おそらく史上初の16ビットコンピュータでした。その他の初期の16ビットコンピュータ( 1965〜70年頃)には、IBM 1130[3] HP 2100[4] Data General Nova[5]およびDECPDP-11が含まれます[6]

初期のマルチチップ16ビットマイクロプロセッサc。1973–76)には、5チップのNational Semiconductor IMP-16(1973)、[7] 2チップのNECμCOM -16(1974)、[8] [7]が含まれます。 3チップのWesternDigital MCP-1600(1975)、および5チップのToshiba T-3412(1976)。[7]

初期のシングルチップ16ビットマイクロプロセッサ(c。1975–76)には、Panafacom MN1610(1975)、[9] [10] [7] National Semiconductor PACE(1975)、General Instrument CP1600(1975)、Texas Instruments TMS9900( 1976)、[7] Ferranti F100-L、およびHPBPCその他の注目すべき16ビットプロセッサには、Intel 8086Intel 80286WDC 65C816、およびZilogZ8000が含まれます。Intel8088バイナリ互換でしたIntel 8086を使用し、レジスタが16ビット幅であるという点で16ビットであり、外部バスが8ビット幅であっても、算術命令は16ビット量で動作できました。

16ビット整数は、2 16(または65,536)個の異なる値を格納できます。符号なし表現では、これらの値は0〜65,535の整数です2の補数を使用すると、可能な値の範囲は-32,768〜32,767になります。したがって、16ビットのメモリアドレスを持つプロセッサは、 64KBのバイトアドレス可能なメモリに直接アクセスできます。

16ビットプロセッサは、パーソナルコンピュータ業界ではほぼ完全に取って代わられ、組み込みアプリケーションでは32ビット(または8ビット)CPU未満で使用されています。

16/32ビットMotorola68000およびIntel386SX

Motorola 68000は、基本的な数学の処理方法から、16ビットと呼ばれることもあります。命令セットは32ビット数に基づいており、内部レジスタは32ビット幅であったため、一般的な定義によれば、68000は32ビット設計です。内部的には、基本的な32ビット演算は2つの16ビット演算を使用して実行されます。これにより、システムが16ビットまたは「16/32」と記述される場合があります。これは当時一般的な解決策ではありませんでしたが、1980年代初頭、このような解決策はコンピュータ分野で長い歴史があり、さまざまな設計が一度に1ビットでも数学を実行します。これは「シリアル演算」と呼ばれますが、ほとんどの設計は1970年代までに、一度に少なくとも数ビットを処理しました。

一般的な例は、データゼネラルノヴァです。これは、当時の一般的なシングルチップALUのサイズであったため、4つの4ビット演算として数学を実行する16ビット設計でした。68000に適用される定義を使用すると、Novaは4ビットコンピューターまたは4/16になります。Novaの導入から間もなく、2番目のバージョンであるSuperNovaが導入されました。SuperNovaには、一度に16ビットの演算を実行する4ビットALUが4つ含まれているため、より高いパフォーマンスが得られます。ただし、これは、常に16ビット命令を使用するユーザーとプログラムには見えませんでした。同様の方法で、モトローラ68020のような後の68000ファミリのメンバーは、 32ビットのALUを持っていました。

他の測定に基づいて、システムが16ビットであるかどうかについても言及されている場合があります。一般的なものの1つは、アドレス空間が内部レジスタと同じビットサイズではない場合です。1970年代のほとんどの8ビットCPUは、このカテゴリに分類されます。MOS 6502Intel 8080Zilog Z80などのほとんどのアドレス空間は64 KBで、アドレス操作には2つの命令サイクルが必要でしたこのため、ほとんどのプロセッサには、ゼロページ用の特別な8ビットアドレッシングモードがありました。、速度を向上させます。内部レジスタサイズと外部アドレスサイズのこの種の違いは1980年代に残りましたが、当時のメモリコストにより、2GBまたは4GBの32ビットアドレス指定のマシンが実際には不可能であったため、しばしば逆転しました。たとえば、68000はDIPで24ビットのアドレス指定のみを公開し、それをまだ巨大な(当時の)16MBに制限していました。[11]

同様の分析は、 386SXと呼ばれるIntelの80286 CPU交換にも当てはまります。これは、32ビットALUを備えた32ビットプロセッサと、16ビット外部バスと交換したプロセッサの24ビットアドレス指定を備えた内部32ビットデータパスです。

16ビットアプリケーション

IBM PC互換機およびWintelプラットフォームのコンテキストでは、16ビットアプリケーションは、MS-DOSOS / 2 1.x、または元々16ビットIntel8088およびIntel80286で実行されていたMicrosoftWindowsの初期バージョン用に作成されたソフトウェアです。マイクロプロセッサこのようなアプリケーションは、20ビットまたは24ビットのセグメントまたはセレクターオフセットアドレス表現を使用して、アドレス指定可能なメモリ位置の範囲を、16ビットアドレスのみを使用して可能だった範囲を超えて拡張しました。2つ以上の16バイト(65,536バイト)を含むプログラム したがって、命令とデータの)には、64キロバイトのセグメントを切り替えるための特別な命令が必要であり、16ビットアプリケーションのプログラミングが複雑になります。

16ビットCPUのリスト

も参照してください

参考文献

  1. ^ 「1951年」コンピュータ歴史博物館「1943年」も参照してください。)。
  2. ^ Digital Press、 Digital at Work Archived 2013-07-02 at the Wayback Machine、Pearson、1992、 ISBN 1-55558-092-0、pp。4、23。 
  3. ^ 「IBM1130コンピューティングシステム」IBMアーカイブ
  4. ^ 「HP2116」コンピュータ歴史博物館
  5. ^ 「データゼネラルNovaミニコンピューター」コンピュータ歴史博物館2013年5月17日にオリジナルからアーカイブされまし2012年6月11日取得
  6. ^ ピアソン、ジェイミーパーカー(1992年9月)。職場でのデジタル:最初の35年間のスナップショットデジタルプレス。pp。58–61。ISBN 978-1-55558-092-6
  7. ^ a b c d e Belzer、ジャック; ホルツマン、アルバートG。; ケント、アレン(1978)。コンピュータサイエンスとテクノロジーの百科事典10 –微生物に対する線形および行列代数:コンピューター支援による識別。CRCプレスp。402. ISBN 9780824722609
  8. ^ 「1970年代:マイクロプロセッサの開発と進化」(PDF)日本半導体歴史博物館2019-06-27にオリジナル(PDF)からアーカイブされました2019年6月27日取得
  9. ^ 「16ビットマイクロプロセッサ」CPUミュージアム2010年10月5日取得
  10. ^ 「歴史」PFU 2010年10月5日取得
  11. ^ Motorola M68000ファミリ、プログラマーズリファレンスマニュアル(PDF)Motorola、Inc。1992.sec。2.4、pp。2–21。