ニャオニャオ21世紀

アイデア。レトロゲーム(MSX、PCエンジン、ファミコン、メガドライブセガサターン)と、MSXのゲーム開発と、最新ゲーム(PS4、SWITCH)、身体(身体意識など)、ライフハック、電子工作ほか雑記を綴っています

MSXマシン語入門(Z80 アセンブラ・機械語) 勉強レポート 第4回 Z80の中身

そんなこんなで第4回目です。

今回はZ80の中身がどうなっているかを勉強しました。

うん、面白いです!

噛み砕いてレポートを書きたいと思います。

 

CPUにはレジスタがあります。レジスタというと、あまりピンとこない方も

いると思います。

私も、あれ、なんだっけって感じでした。

CPUの中でデータを記憶しておくものです。

メモリからデータを持ってきて、CPUに一時的にいれておくものらしいです。

データは1バイト、または2バイトです。

レジスタにデータを持ってきて、計算をします。

 

Z80には様々なレジスタがあります。

そしてレジスタによって機能と役割が違うそうです。

まずアキュームレータという

Aレジスタ。

そして汎用レジスタ6個。

Bレジスタ、Cレジスタ、Dレジスタ、Eレジスタ、Hレジスタ、Lレジスタ

(単純にアルファベット順ではないので、ご注意を)

 

機能は

Aレジスタは 演算をします。

 

Bレジスタの内容をAレジスタに足すなど。

Aレジスタ = Aレジスタ+Bレジスタということです。

 

Bレジスタ、Cレジスタ、Dレジスタ、Eレジスタ、Hレジスタ、Lレジスタ

は計算ができません。

ダメ B+C

ダメ D−E

 

これらのレジスタは1バイトのデータ(2進数で00000000とか)を扱います。

2バイト扱いたいときはB+Cとします。(D+E、H+Lはできるのかな?よくわかりません)

 

 

ーーーーーーーーーーーーーーーーーーーーーーーーーー

Aレジスタ    |    F(フラグ)レジスタ

ーーーーーーーーーーーーーーーーーーーーーーーーーー

 

(汎用レジスタ)

ーーーーーーーーーーーーーーーーーーーーーーーーーー

Bレジスタ    |    Cレジスタ

ーーーーーーーーーーーーーーーーーーーーーーーーーー

Dレジスタ    |    Eレジスタ

ーーーーーーーーーーーーーーーーーーーーーーーーーー

Hレジスタ    |    Lレジスタ

ーーーーーーーーーーーーーーーーーーーーーーーーーー

 

 

F(フラグ)レジスタ というのもあります。

演算の結果起こる様々状態を入れるためのレジスタと書いてありますが、

具体例が書いてないので、何をやるのかちょっとわからないです。

読み進むとわかるのでしょうか。

 

 

 

(裏レジスタ)

ーーーーーーーーーーーーーー

A’    |    F’

ーーーーーーーーーーーーーー

B’    |    C’

ーーーーーーーーーーーーーー

D’    |    E’

ーーーーーーーーーーーーーー

H’    |    L’

ーーーーーーーーーーーーーー

 

裏レジスタというのもあるそうです。

汎用レジスタを表として、その裏らしいです。

裏なので表と同じ動きをします。

裏・表は同時には使えないということです。

 

 

その他のレジスタ

ーーーーーーーーーーーーーーーーーーーーー

PC(プログラム・カウンタ)

ーーーーーーーーーーーーーーーーーーーーー

プログラムを読み出すとき=> CPUが、メモリを見て、そのアドレスを指定するときに使います。

(メモリには、何番地というアドレスがあります。その中に数値が入っているのですが、その数値がマシン語の命令となります。そのアドレスをいれてあるみたいです)

(プログラムを実行すると、アドレスを順番に流れていくのですが、たまにbasicでいうGOTOみたいにアドレスが飛ぶのでしょうか?だから、アドレスがはいっているのかなぁ)

 

ーーーーーーーーーーーーーーーーーーーーーーー

SP(スタック・ポインタ)

ーーーーーーーーーーーーーーーーーーーーーーー

これはアドレスを覚えるのみたいです。詳細は、まだ書いてありませんでした;

 

 

ーーーーーーーーーーーーーーーーーーーーーーー

IX ( インデックスレジスタX)

ーーーーーーーーーーーーーーーーーーーーーーー

ーーーーーーーーーーーーーーーーーーーーーーー

IY( インデックスレジスタY)

ーーーーーーーーーーーーーーーーーーーーーーー

 この2つもアドレスを指定するみたいです。

詳細はまだ書いてありません。(こんなんばっかり;)

 

ーーーーーーーーーー

R

ーーーーーーーーーー

 

 

ーーーーーーーーーー

I (英数字のアイ)

ーーーーーーーーーー

 

この2つは 割り込みのものらしいですが、この本では取り上げないそうです

(´・ω・`) ショボーン

 

疲れました;

 

もう少し先に進みたかったのですが、今日はこのあたりでやめておきます。

マイペースですが、よろしかったら、今後とも宜しくお願いします
(。-_-)ノ☆・゚::゚

 

でわー

 

次のページ

www.nyaonyao21.com

 

MSX BASIC + マシン語などの情報はこちらへ

www.nyaonyao21.com


「ニャオニャオ21世紀は、Amazon.co.jpを宣伝しリンクすることによってサイトが紹介料を獲得できる手段を提供することを目的に設定されたアフィリエイト宣伝プログラムである、Amazonアソシエイト・プログラムの参加者です。」

当サイトは第三者配信の広告サービス「Google Adsense グーグルアドセンス」を利用しています。 広告配信事業者は、ユーザーの興味に応じた広告を表示するためにCookie(クッキー)を使用することがあります。 Cookie(クッキー)を無効にする設定およびGoogleアドセンスに関する詳細は「広告 – ポリシーと規約 – Google」をご覧ください