同人誌 Advanced Assembler 386 上ノ巻

x86アーキテクチャーを極めるために  

当時(1993~94年ZOB Station BBS全盛時)はかななり難易度の高い内容でしたが、現在のPCのCPUも同様なアーキテクチャーですので、現在でも内容的に優位性があり読み応えもあると思います。
Advance Assembler 386 の第1回~5回の内容を なんとかまとめました。元記事があるため、当初は簡単に考えていましたが、技術イラストを全面的に書き換えたり、InDesignによりレイアウトを新しく作り直す事になったため、大変な作業量になりました。
どうせならと、完成度アップを目指して、現在までのCPUの流れをイントロダクションにまとめて、新たな内容も付け加えました。
おださとこ氏のイラストもあり、現代風の同人誌として完成したと思います。
技術書典4で是非手に取って読んでみてください。

上ノ巻  目次

はじめに............................1
イントロダクション.......................2
Intel CPU の歩み...................2
X86アーキテクチャの7つの壁.................6
第1回 拡張命令/アドレッシング 80386..........8
  80386への道のりの背景.................8
  i386の7つの壁....................11
  386/486の拡張命令.................12
  32ビットアドレッシングモード..............16
  i386/486専用命令を使ったペイント関数.......16
第2回 エクステンドメモリへのアクセス............24
  8086セグメントの復習.................25
  80286/i386のアドレス生成............25
  ディスクリプタのマッピング................26
  ディスクリプタの内容...................28
  エクテンドメモリのアクセス................31
  MoveExtMemory関数..............32
第3回 プロテクトモードにおける保護機能...........36
  セグメントレジスタの種類による保護機能..........37
  セグメントのサイズによる保護機能.............37
  セグメントのRead/Write設定による保護機能....38
  特権レベルによる保護...................38
  特権レベルによって制限される命令.............44
  DOSエクステンダ PT386..............46
第4回 16ビットコードと32ビットコードの混在.......58
  16ビットコードと32ビットコードについて........59
  16ビットコードと32ビットコードとの混在の必要性....60
  16/32 ビットコードセグメント間でのデータの共有...60
  16/32ビットコードセグメント間での制御移行......61
  コールゲートを利用した制御移行..............62
第5回 VCPI.......................70
  VCPIとは.......................70
  VCPIを使用するためには................71
  ページングについての簡易説明...............71
  VCPIインターフェース.................72
  VCPIファンクションの詳説...............73