セリーヌ tシャツ パロディセリーヌ tシャツ コピーセリーヌ tシャツ コーデ 忍者ブログ

仕事で役立つ人気ビジネスアプリおすすめ!

ビジネスマン必見!おすすめのビジネス管理ツールアプリを、独自のランキングと口コミでピックアップ!縦横無尽に使いこなせば、仕事の効率アップ間違いなし!
[5929]  [5928]  [5927]  [5926]  [5925]  [5924]  [5923]  [5922]  [5921]  [5920]  [5919

[PR]

×

[PR]上記の広告は3ヶ月以上新規記事投稿のないブログに表示されています。新しい記事を書く事で広告が消えます。

コンピュータアーキテクチャの話 (63) 4ビットプロセサのアーキテクチャ設計

コンピュータアーキテクチャの話 (63) 4ビットプロセサのアーキテクチャ設計  MJアーキテクチャの命令セット

 このような方針に立って考えると、命令としては、

LD命令

 IXフィールドで指定されたIXレジスタ(IX0~IX3)の内容で指定された(以降、「IXレジスタで指定された」と略記する)RAMのメモリアドレスの内容をアキュムレータにロードする。Incフィールドに"1"を指定すると、IXフィールドで指定されたIXレジスタをポストインクレメント(使用後に+1)する。

ADD/SUB命令

 キャリー(ボロー)込みで、アキュムレータにIXレジスタで指定されたRAMのメモリアドレスの内容を加算(減算)する。4個のIXレジスタの指定は2ビットで済むので、1ビットのA/Sが"0"の場合はADD(加算)、"1"の場合はSUB(減算)動作を行う。もう1ビットのIncフィールドでIXレジスタのポストインクレメント(使用後に+1する)を指定する。

ST命令

 アキュムレータの内容をIXレジスタで指定されたRAMのメモリアドレスに格納する。IXレジスタの指定は2ビットで済むので、1ビットのACフィールドを"1"とするとPDP-8のように格納後、アキュムレータのクリア、もう1ビットのIncフィールドでIXレジスタのポストインクレメントを指定する。

 この3つの命令があれば、最低限、メモリからデータを読み、加算と減算を行い、結果をメモリに格納することが出来る。

 しかし、LD命令、ADD命令、ST命令でRAMのアドレスを指定するためには、アクセスするメモリアドレスをIXレジスタに格納する命令が必要である。この目的に対して、4004では2バイト命令の後半の8ビットをレジスタペアに格納するFIM命令と、レジスタペア0の内容をアドレスとしてアクセスされるROMの内容をレジスタペアに格納するFIN命令を備えている。

 MJアーキテクチャとしてもこのような命令が必要であり、次のように拡張されたFIM命令、FIN命令を作ることにする。

FIM命令

 8ビットのDの値をIXレジスタの下位8ビットに格納する。上位8ビットは0か符号拡張かをHSビットで指定する。H/Sを"1"として符号拡張を行う場合は、 Dmidの最上位のビットをIXhighの4ビットにコピーする。また、IXレジスタのインクレメントで発生するキャリーを保持するIXCYビットをクリアする。

FIN命令

 IX0の内容で指されるROMの8ビットの値をIXレジスタの下位8ビットに格納する。上位4ビットは0か符号拡張を行うかをH/Sビットで指定する。符号拡張を行う場合は、Dmidの最上位のビットをIXhighの4ビットにコピーする。また、IXCYビットをクリアする。

 MJアーキテクチャでは、RAMはX2~X4サイクルにアドレスを受け取り、X5サイクルにデータを返すという動作であり、ROMはA1~A3サイクルにアドレスを受け取り、M1、M2サイクルにデータを返すという動作である。従って、LD命令でROMを読むことは出来ないので、4004と同様に、MJアーキテクチャのプロセサにおいても、ROMアクセス専用の命令が必要となる。そして、これも4004と同様に、FIN命令は8ビット命令であるが16サイクルで実行されることになる。

 これらのFIM、FIN命令で8ビットのデータを符号拡張してIXレジスタに格納する機能を設けたのは、IXレジスタに負の数を格納することが出来るようにするためである。単純に最上位の4ビットにゼロを格納すると、これらの命令でIXレジスタに格納できる数は0~255の範囲となるが、符号拡張を行うと、正の数の最大は0111 1111=127で、1000 0000は8ビットの最上位の"1"が、その上の4ビットにコピーされ、1111 1000 0000=-128をIXレジスタに格納することが出来る。負の数をIXレジスタに入れるのは、メモリアドレスの指定の場合には便利とは言えないが、後述のようにIXレジスタをループカウンタとして使用する場合には便利な機能である。

PR
Submit Comment
name
title
color
mail
URL
comment
password   Vodafone絵文字 i-mode絵文字 Ezweb絵文字
JR東海、新幹線京都駅構内に井戸水 HOME 【三十代女子の恋愛奮闘記】恋愛における「自爆」 悪いのは男 or 女?
HN:
上原健二
性別:
非公開
RSS
P R
忍者ブログ [PR]
Template by repe