資料集
ここはhideyosiの学習帳です。いろいろな資料を集めたり整理したりしています。オイラ用のノートなので間違っていたり未完成だったりしますので信用度は相当低いことをあらかじめご了承くださいませ。
1: 2005-07-21 (木) 15:48:01 ソース バックアップ No.1 を復元して編集
Line 1: Line 1:
 +COLOR(red){多分合ってないぞ!!!。いま一生懸命勉強中だ! (T∀T))間違ってるとこみつけたら、板にツッコミ入れよう!)}
 +COLOR(red){・・・ふっ・・・ 所詮笑われてナンボじゃい!。 (T∀T) }
 +
 +
 +
 +8086(リアルモード)時のレジスタ達
 +
 +8086は16ビットCPUなので、全て16ビット。
 +※32ビットも使えるらしいが、かえってややこしくなるので全部16ビットとしておくほうがよさそうらしい。
 +
 +
 +**汎用 [#ed7d6c62]
 +AX,BX,CX,DX の四つ。基本的になにに使っても構わないらしい。
 +
 +
 +ただ、「お作法」 BX はメモリアドレスの指定に。CX はループカウンタとして。っていう感じらしい。
 +
 +その意味で考えると、AXとDXが「汎用の中の汎用」らしい
 +
 +**8ビットレジスタとして使う [#wdba6f6d]
 +各汎用レジスタを二つに割って、独立した8ビットレジスタとして使うことが出来る。
 +
 +指定の方法は、AXの上半分をAH、下半分をALとするらしい。(HighとLowという意味らしい)
 +
 +「独立」と言ったが、場所は同じ。
 +
 +つまり、AHに&h1Fを代入。ALに&h3Aを代入する。当たり前だが、AHレジスタやALレジスタを操作しなければ値は変わらない。で、ここでAXレジスタを読み出してみると、&h1F3Aとなる。
 +
 +
 +
 +
 +
 +
 +
 +*セグメントレジスタ [#k876d68f]
 +CS,DS,ES,SS
 +
 +CS:今動いているプログラムのセグメント値。自動的に設定され、通常は触らないもの
 +
 +
 +DS:レジスタ・メモリ間でのやりとりの時に使われる。プログラムではなくデータのあるセグメントアドレスを管理している
 +
 +ES:通常はDSレジスタの補助・予備として使用される
 +
 +SS:スタックのアドレスを管理している
 +
 +
 +
 +
 +
 +
 +
 +
 +*インデックス [#z8a8d0ff]
 +SI,DI
 +
 +
 +特殊
 +BP,SP,IP
 +
 +
 +
 +
 +フラグレジスタ
 +??
 +*勉強中 [#w777b8b0]
 +・・・あぁぁ! こんどはスタック!? わー! むずかしー!(T∀T)


トップ   編集 差分 バックアップ 添付 複製 名前変更 リロード   ページ新規作成 全ページ一覧 単語検索 最新ページの一覧   ヘルプ   最新ページのRSS 1.0 最新ページのRSS 2.0 最新ページのRSS Atom
Counter: 2983, today: 1, yesterday: 1