80x86
出典: フリー百科事典『ウィキペディア(Wikipedia)』
80x86(略称x86)は、インテルの開発した8086シリーズのCPUの総称。8ビットの8080とは互換性がない[1]。
80x86という場合は、32ビット化された80386以降のCPU (x86-32, IA-32) を指す場合が多い。
16ビットCPUでは、マイクロコントローラとして設計されセグメントという制限がある。メインメモリ空間は1MB~16MB。ほかにI/O空間を持つ。
- Intel 8086
- Intel 80186
- Intel 80286 - 16ビットのプロテクトモードを持つ
32ビット化の際マイクロプロセッサとして設計が見直された。16ビットで8086互換のリアルモードと、32ビットのプロテクトモード(ネイティブモード)を持つ。プロテクトモード中にも、仮想8086モードを持つため、複数の8086をエミュレートすることができる。また階層化された特権レベル(特権リング、4つの階層で構成される)は80286ではスケールダウンしたエミュレーターには使えたが、386ではこれに加えて割り込みサポートを強化した結果、従来メインフレームクラスのコンピュータでしか利用できなかった仮想マシンモニタの実装を可能とし、VMwareを筆頭に仮想マシン環境をパソコンレベルで実現に至らしめた。
Pentium Pro以降、Pentium II、Pentium III、Pentium M、Intel Coreに至るまで同じCPUの改良版である。Pentium 4のみ、クロックアップを優先した別のアーキテクチャで作られている。
目次 |
[編集] 主な拡張
ソフトウェア的な環境は、80386から下位互換性を保ちながら拡張されて来た。これらはユーザが使用可能な拡張については486以降のCPUではCPUID命令を発行することにより、どの拡張が有効であるかを知ることが出来る。
[編集] プロセッサ全体
- システムマネジメントモード 386SL以降
- プロセッサ内APIC Pentium以降
- メモリタイプ範囲レジスタ (MTRR) Pentium Pro以降
- ハイパースレッディング・テクノロジー Pentium 4の一部
- 高速システムコール命令
- デバッグレジスタ
- 64ビット拡張 Pentium4 PrescottコアE0バージョン以降
- マルチダイ・マルチコア Pentium D
- シングルダイ・マルチコア Intel Core・Intel Core 2
[編集] プロテクトモードに関する拡張
- 物理アドレス拡張 (PAE) Pentium以降
- ページサイズ拡張 (PSE) Pentium Pro以降
- 36ビットPSE (PSE36) Pentium Pro以降
- 40ビット物理アドレス拡張 XeonMP
[編集] 仮想86モードに関する拡張
- 仮想モード拡張 (VME) Pentium以降
[編集] 仮想マシンに関する拡張
- 仮想マシン支援 (Intel VT) Pentium D以降
[編集] 数値演算に関する拡張
- 浮動小数点演算機能の統合:486以降
- 高速な浮動小数点演算コンテクストのセーブ
- MMX:MMXペンティアム以降
- SSE:Pentium IIの一部以降
- SSE2:Pentium 4以降
- SSE3:Pentium 4、Prescottコア以降
- SSSE3:Xeon 5100, Core 2 以降
[編集] 脚注
- ^ アセンブラのソースコードレベルでは、トランスレータの介在により同等のプログラムの生成が可能であった。詳細はQDOS#PC-DOS の誕生及びCP/M-86も参照のこと。