試験公開中

このエントリーをはてなブックマークに追加

自作エミュレータで学ぶx86アーキテクチャ コンピュータが動く仕組みを徹底理解!

マイナビ出版

2,152円+税

CPUの動きをパソコン上で再現するエミュレータ制作を通してコンピュータの中身を徹底理解!CPUの仕組みや、その周りで動くメモリ、キーボード、ディスプレイといった部品とCPUの関わりがしっかり学べます。

関連サイト

本書の関連ページが用意されています。

内容紹介

C言語をはじめとする高級言語が主流の今、その基礎となる機械語やアセンブリ言語がCPUでどう実行されるかを意識することはめったにありませんが、本書ではそういった“低級言語”を実行するエミュレータの制作を通してx86 CPUの仕組みや、その周りで動くメモリ、キーボード、ディスプレイといった部品とCPUの関わりをしっかり学び、エンジニアとしての“深み”を身につけることを目指します。

書誌情報

  • 著者: 内田 公太, 上川 大介
  • 発行日: (紙書籍版発行日: 2015-08-28)
  • 最終更新日: 2015-08-28
  • バージョン: 1.0.0
  • ページ数: 198ページ(PDF版換算)
  • 対応フォーマット: PDF
  • 出版社: マイナビ出版

対象読者

著者について

内田 公太

小学生の頃にPICマイコンのアセンブリ言語に出会い、プログラマの道に進む。高校時代は『30日でできる!OS自作入門』(川合秀実、2006年)の校正を手伝う。東京工業大学の計算工学専攻を卒業後、現在は某IT 企業でインフラ系のプログラミングに従事する。好きな言語はC++とPython。

上川 大介

ゲーム開発に興味を持つWeb 系のプログラマ。大学生時代にJavaに目覚めWeb系に進むと思われていた。しかし、自作OS開発ブームに浮気したところから道を踏み外しx86エミュレータ開発に興味を持つ。好きな言語はJavaとGLSL。

目次

Chapter 1 C言語とアセンブリ言語

  • 1.1 C言語から機械語へ
  • 1.2 機械語とアセンブリ言語
  • 1.3 機械語に飛び込む
  • 1.4 アセンブリ言語を少し詳しく
  • 1.5 基本のmov命令
  • 1.6 インクリメント専用のinc命令
  • 1.7 16進数入門
  • 1.8 2の補数入門

Chapter 2 ポインタとアセンブリ言語

  • 2.1 レジスタ
  • 2.2 メモリ
  • 2.3 初めてのエミュレータ
  • 2.4 ポインタの復習
  • 2.5 ポインタに飛び込む
  • 2.6 構造体とポインタ
  • 2.7 不完全型とポインタ
  • 2.8 関数ポインタ

Chapter 3 CPUがプログラムを実行する仕組み

  • 3.1 プログラムの配置
  • 3.2 エミュレータのorg対応
  • 3.3 プログラムの実行
  • 3.4 エミュレータのModR/M対応
  • 3.5 無条件分岐命令
  • 3.6 call命令とスタック
  • 3.7 エミュレータのcall対応
  • 3.8 ローカル変数とスタック
  • 3.9 フラグレジスタと条件分岐命令
  • 3.10 エミュレータの条件分岐命令対応
  • 3.11 プログラムの繰り返し
  • 3.12 デバイスアクセス

Chapter 4 BIOSの仕組みと実機起動

  • 4.1 BIOS
  • 4.2 BIOSの実装
  • 4.3 割り込み
  • 4.4 ブートセクタ
  • 4.5 PBRを見てみよう
  • 4.6 実機で動かしてみよう

Appendix

  • A 開発環境のインストールと構成
  • B ASCII コード表

索引

Home 書籍一覧 自作エミュレータで学ぶx86アーキテクチャ コンピュータが動く仕組みを徹底理解! ▲ ページトップへ戻る