はじめて読む486 2章
486の位置づけ
86系CPUの発展
8086
- 16ビットCPU
- 8ビットCPUである8080からの移行を容易にすることを主眼に作られた
- セグメント方式やレジスタの種類になごりが見受けられる
- 以降の86系は良くも悪くも8086の特徴を受け継いでいる
8088
- 8086と同一アーキテクチャで、外部データバスを8ビットにしたもの
- 性能は8086よりも低いが製造コストを下げられた
8087
- 数値演算専用のチップで8086と協調して動作するように設計されている
- 8086に数値演算機能を追加するかのような働きを持つのでコプロセッサー(CoProcessor)とも呼ばれる
- 浮動小数点演算命令も実行できるようになった
80186
- 8086に割り込みコントローラなどの各種コントローラ機能を加えたもの
- 様々な電子制御装置に内蔵しやすくなった
- 命令が若干追加されたくらいで8086との性能の差はほとんどない
286
- 各命令の実行速度が高速化された
- プロテクトモードが導入された
386
- 86系初の32ビットCPU
- セグメントの最大サイズが4Gバイト
- 仮想8086モードとページング機能の追加
486のアーキテクチャ
特徴
キャッシュメモリ
- 486の高性能の秘密
- メモリとCPUの演算処理部との中間に置く高速メモリのこと
- 必要になった理由
- クロック速度の高速化によるCPUのウェイトを少なくするため
- 仕組み
- 一旦アクセスしたデータをキャッシュメモリにコピーしておき、次回以降はそれを使う
- しばらく再利用されなかったデータは新たなものと入れ替えられる
- 486はキャッシュと本来のメモリに同時に書き込む「ライトスルー方式」をとっている
486DX/ODP
- クロックダブラーという技術を用いて高速化した486
- CPU内部のクロック速度だけを高速にする
- CPU以外の回路素子は通常のものを使用できる
- CPUの演算処理は高速になる
- CPUがメモリなどにアクセスするときは結局ウェイトがかかるが、キャッシュにヒットすれば外部メモリに待たされずに高速で処理される
486の操り方
- 基本機能
- マシン語命令をメモリから読み出し、それを解釈し実行する
- システム管理機能
- OSのメモリ管理や保護機能を実現するために用意されている
486のレジスタ
- レジスタとは、メモリの一種
レジスタを操作することで486の基本機能を動かせるようになる
一般レジスタ群
不動小数点レジスタ群
- 浮動小数点演算を行うプログラムが理由する
- 386まではFPUという独立したチップだった
システムレジスタ群
- OSが利用するレジスタ群
- メモリ管理やタスク管理機能を働かせる
- 一般のアプリケーションでは使用できない
-
- 主にデバッガが利用する
- ブレークポイントを設定するときに使う
486の32ビットアーキテクチャ
データバスの32ビット化が大きい
- アドレスバス
- I/Oアドレスバス
- データバス
レジスタも32ビットに拡張された
参考
32ビットコンピュータをやさしく語る はじめて読む486 (アスキー書籍)
- 作者: 蒲地輝尚
- 出版社/メーカー: KADOKAWA / アスキー・メディアワークス
- 発売日: 2014/10/21
- メディア: Kindle版
- この商品を含むブログを見る