JPS623462B2 - - Google Patents
Info
- Publication number
- JPS623462B2 JPS623462B2 JP11714378A JP11714378A JPS623462B2 JP S623462 B2 JPS623462 B2 JP S623462B2 JP 11714378 A JP11714378 A JP 11714378A JP 11714378 A JP11714378 A JP 11714378A JP S623462 B2 JPS623462 B2 JP S623462B2
- Authority
- JP
- Japan
- Prior art keywords
- register
- address
- bits
- registers
- addressing
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Expired
Links
- 238000000034 method Methods 0.000 claims description 12
- 238000006073 displacement reaction Methods 0.000 description 5
- 238000010586 diagram Methods 0.000 description 2
- 238000007796 conventional method Methods 0.000 description 1
Landscapes
- Executing Machine-Instructions (AREA)
Description
【発明の詳細な説明】
この発明は例えばマイクロコンピユータにおけ
るメモリに対するアドレスの指定に適用して好ま
しいアドレス指定方式に関する。
るメモリに対するアドレスの指定に適用して好ま
しいアドレス指定方式に関する。
従来よりアドレス指定に汎用レジスタを利用す
ることにより効率のよいプログラムを作成でき
た。即ち第1図に示すように全アドレスを指定す
るために必要なビツト数、例えば16ビツトの複数
の汎用レジスタR0〜R3をアドレス指定用にも利
用するようにしておく。例えばレジスタ間接アド
レス指定の場合は汎用レジスタR0又はR1を指定
し、そのレジスタの内容でアドレス指定する。或
いはインデツクス修飾アドレス指定の場合は、レ
ジスタR2又はR3を指定し、そのレジスタの内容
と命令中の変位量(デイスプレイスメント)との
加算によつてアドレス指定を行う。その他オート
インクリメント、オートデクリメントなど各種の
アドレス指定方式を行なうことができる。
ることにより効率のよいプログラムを作成でき
た。即ち第1図に示すように全アドレスを指定す
るために必要なビツト数、例えば16ビツトの複数
の汎用レジスタR0〜R3をアドレス指定用にも利
用するようにしておく。例えばレジスタ間接アド
レス指定の場合は汎用レジスタR0又はR1を指定
し、そのレジスタの内容でアドレス指定する。或
いはインデツクス修飾アドレス指定の場合は、レ
ジスタR2又はR3を指定し、そのレジスタの内容
と命令中の変位量(デイスプレイスメント)との
加算によつてアドレス指定を行う。その他オート
インクリメント、オートデクリメントなど各種の
アドレス指定方式を行なうことができる。
このようなアドレス指定方式をアドレスのビツ
ト数よりも、ビツト数が少ない、例えば8ビツト
の命令語で動作するマイクロコンピユータに採用
すると、汎用レジスタの内容を変更するために必
要な命令数が多くなる。即ち16ビツトの汎用レジ
スタの内容を8ビツトの命令語で変更するには先
ず変更を示す命令の8ビツトと、その変更の内容
を示すデータとして、上位8ビツトと、下位8ビ
ツトとを必要とし、計3バイトの命令を必要とす
る。また命令中の変位量のビツト数が限られてい
るため、小さいアドレス空間しかインデツクス修
飾できず、それ以外のアドレス空間をインデツク
ス修飾する場合は、そのインデツクスレジスタと
して使用している汎用レジスタの内容を変更する
必要があり、その変更のために3バイト命令を必
要とする。このようにレジスタの内容変更に3バ
イト命令を用いなければならないことは、命令数
が多くなり、全体のプログラム量が大きくなる欠
点があつた。
ト数よりも、ビツト数が少ない、例えば8ビツト
の命令語で動作するマイクロコンピユータに採用
すると、汎用レジスタの内容を変更するために必
要な命令数が多くなる。即ち16ビツトの汎用レジ
スタの内容を8ビツトの命令語で変更するには先
ず変更を示す命令の8ビツトと、その変更の内容
を示すデータとして、上位8ビツトと、下位8ビ
ツトとを必要とし、計3バイトの命令を必要とす
る。また命令中の変位量のビツト数が限られてい
るため、小さいアドレス空間しかインデツクス修
飾できず、それ以外のアドレス空間をインデツク
ス修飾する場合は、そのインデツクスレジスタと
して使用している汎用レジスタの内容を変更する
必要があり、その変更のために3バイト命令を必
要とする。このようにレジスタの内容変更に3バ
イト命令を用いなければならないことは、命令数
が多くなり、全体のプログラム量が大きくなる欠
点があつた。
この発明の目的は全アドレス空間を指定するた
めに必要とするビツト数より少ないビツト数の汎
用レジスタを用いて各種のアドレス指定方式とす
ることができ、しかも、そのための汎用レジスタ
の内容の変更に多くの命令を必要とせず、従つて
プログラム量も余り大きくすることがないアドレ
ス指定方式を提供することにある。
めに必要とするビツト数より少ないビツト数の汎
用レジスタを用いて各種のアドレス指定方式とす
ることができ、しかも、そのための汎用レジスタ
の内容の変更に多くの命令を必要とせず、従つて
プログラム量も余り大きくすることがないアドレ
ス指定方式を提供することにある。
この発明によれば汎用レジスタが、マイクロコ
ンピユータのデータ長と同一又はこれより短かい
ビツト数の部分レジスタに分割され、それ等部分
レジスタの内容はアドレスの別の位を指定するよ
うに構成する。複数の汎用レジスタがそれぞれ部
分レジスタに分割され、それ等部分レジスタのア
ドレスの異なる位を指定するものを組合せ、その
組合せの変更により、各種のアドレス指定ができ
る。或いは部分レジスタの1つでアドレスの上位
を指定し、アドレスの残りの下位を命令中の変位
量で指定する。固定データでアドレスの上位を指
定し、残りの下位を部分レジスタを選択的に指定
する。更に上述において選択されたレジスタの内
容を、アドレス指定後に、インクリメント又はデ
クリメントするようにする。
ンピユータのデータ長と同一又はこれより短かい
ビツト数の部分レジスタに分割され、それ等部分
レジスタの内容はアドレスの別の位を指定するよ
うに構成する。複数の汎用レジスタがそれぞれ部
分レジスタに分割され、それ等部分レジスタのア
ドレスの異なる位を指定するものを組合せ、その
組合せの変更により、各種のアドレス指定ができ
る。或いは部分レジスタの1つでアドレスの上位
を指定し、アドレスの残りの下位を命令中の変位
量で指定する。固定データでアドレスの上位を指
定し、残りの下位を部分レジスタを選択的に指定
する。更に上述において選択されたレジスタの内
容を、アドレス指定後に、インクリメント又はデ
クリメントするようにする。
第2図はこの発明によるアドレス指定方式の実
施例を示し、メモリ11に対し、アドレスバツフ
ア12の内容によりアドレス指定が行なわれ、デ
ータバツフア13の内容が、その指定されたアド
レス位置に書込まれ、又はそこから読出されてデ
ータバツフア13内に格納される。データバツフ
ア13の内容中の命令は命令レジスタ14にセツ
トされ、その内容はデコーダ15で解続される。
またデータバツフア13はデータバス16を通じ
て演算レジスタ17,18、演算回路19に接続
され、更に汎用レジスタ21,22に接続され
る。スタツクポインタ23、プログラムカウンタ
24はアドレスバス26を通じてアドレスバツフ
ア12に接続され、プログラムカウンタ24には
増減回路25が接続されて、内容を+1、又は−
1、つまりインクリメント又はデクリメントされ
る。
施例を示し、メモリ11に対し、アドレスバツフ
ア12の内容によりアドレス指定が行なわれ、デ
ータバツフア13の内容が、その指定されたアド
レス位置に書込まれ、又はそこから読出されてデ
ータバツフア13内に格納される。データバツフ
ア13の内容中の命令は命令レジスタ14にセツ
トされ、その内容はデコーダ15で解続される。
またデータバツフア13はデータバス16を通じ
て演算レジスタ17,18、演算回路19に接続
され、更に汎用レジスタ21,22に接続され
る。スタツクポインタ23、プログラムカウンタ
24はアドレスバス26を通じてアドレスバツフ
ア12に接続され、プログラムカウンタ24には
増減回路25が接続されて、内容を+1、又は−
1、つまりインクリメント又はデクリメントされ
る。
メモリ11は65535番地まであり、その全番地
の指定は16ビツトのアドレスにより行なわれる。
従つてアドレスバス26は16ビツトである。一方
マイクロコンピユータは8ビツトの命令語で動作
し、従つてデータバス16は8ビツトとされる。
の指定は16ビツトのアドレスにより行なわれる。
従つてアドレスバス26は16ビツトである。一方
マイクロコンピユータは8ビツトの命令語で動作
し、従つてデータバス16は8ビツトとされる。
この実施例では16ビツトの汎用レジスタ21は
8ビツトの部分レジスタR0,R2に、レジスタ
22は部分レジスタR1,R3にそれぞれ分割さ
れる。これ等部分レジスタR0,R1はアドレス
の下位8ビツトを指定でき、部分レジスタR1,
R3はアドレスの上位8ビツトを指定できるよう
に構成される。
8ビツトの部分レジスタR0,R2に、レジスタ
22は部分レジスタR1,R3にそれぞれ分割さ
れる。これ等部分レジスタR0,R1はアドレス
の下位8ビツトを指定でき、部分レジスタR1,
R3はアドレスの上位8ビツトを指定できるよう
に構成される。
例えばレジスタ間接アドレス指定を行う場合は
部分レジスタR0,R1の1つと、R2,R3の
1つとをそれぞれ選択して16ビツトのアドレスと
してアドレスバス26へ出力する。この場合この
部分レジスタの組合せはR0R2,R0R3,R
1R2,R1R3の4通りとなり、4種類のアド
レスを発生できる。従来においてはレジスタが分
割されずレジスタ21,22の1つを選択するこ
としかできず、2通りのアドレスを発生するだけ
である。この場合と比較して2つの汎用レジスタ
21,22を使用するが、この発明方式によれば
より多くのアドレスを発生でき、それだけレジス
タを効率的に利用できる。
部分レジスタR0,R1の1つと、R2,R3の
1つとをそれぞれ選択して16ビツトのアドレスと
してアドレスバス26へ出力する。この場合この
部分レジスタの組合せはR0R2,R0R3,R
1R2,R1R3の4通りとなり、4種類のアド
レスを発生できる。従来においてはレジスタが分
割されずレジスタ21,22の1つを選択するこ
としかできず、2通りのアドレスを発生するだけ
である。この場合と比較して2つの汎用レジスタ
21,22を使用するが、この発明方式によれば
より多くのアドレスを発生でき、それだけレジス
タを効率的に利用できる。
インデツクス修飾アドレス指定を行うには、部
分レジスタR2又はR3を指定し、その内容によ
りアドレスの上位8ビツトを指定し、命令中の変
位量をデータバス16からアドレスバス26へ供
給して、アドレスの下位8ビツトを指定する。
分レジスタR2又はR3を指定し、その内容によ
りアドレスの上位8ビツトを指定し、命令中の変
位量をデータバス16からアドレスバス26へ供
給して、アドレスの下位8ビツトを指定する。
スクラツチパツド・レジスタアドレス指定の場
合は、スクラツチパツドレジスタが0番地から
255番地までにあるため、アドレス上位8ビツト
は全て0であり、下位8ビツトととして部分レジ
スタR0又はR1だけを指定すればよい。従来に
おいては16ビツトのレジスタの内容のすべてがア
ドレスバス26へ送出されるため、そのレジスタ
の上位8ビツトをすべて0にする操作が必要とな
り、そのため2バイト命令が必要である。しかし
この実施例では単に1つの部分レジスタを指定し
て出力すればよい。
合は、スクラツチパツドレジスタが0番地から
255番地までにあるため、アドレス上位8ビツト
は全て0であり、下位8ビツトととして部分レジ
スタR0又はR1だけを指定すればよい。従来に
おいては16ビツトのレジスタの内容のすべてがア
ドレスバス26へ送出されるため、そのレジスタ
の上位8ビツトをすべて0にする操作が必要とな
り、そのため2バイト命令が必要である。しかし
この実施例では単に1つの部分レジスタを指定し
て出力すればよい。
オートインクリメント又はオートデクリメント
アドレス指定の場合は先のレジスタ間接アドレス
指定におけるように、部分レジスタR0又はR1
の一方を選択して、アドレスの下位8ビツトを指
定し、これと共に部分レジスタR2又はR3を選
択してアドレスの上位8ビツトを指定する。この
ようにしてアドレス指定した後に、部分レジスタ
R0又はR1の選択したものの内容を増減回路2
5により+1又は−1、或いは+2、若しくは−
2すればよい。或いはスクラツチパツドレジスタ
アドレス指定の場合のように部分レジスタR0,
R1の一方のみを選択してアドレスの下位8ビツ
トを指定し、上位8ビツトは全て0にし、その
後、その選択したR0又はR1の内容のみを増減
回路25で±1、又は±2のインクリメント或い
はデクリメントを行う。
アドレス指定の場合は先のレジスタ間接アドレス
指定におけるように、部分レジスタR0又はR1
の一方を選択して、アドレスの下位8ビツトを指
定し、これと共に部分レジスタR2又はR3を選
択してアドレスの上位8ビツトを指定する。この
ようにしてアドレス指定した後に、部分レジスタ
R0又はR1の選択したものの内容を増減回路2
5により+1又は−1、或いは+2、若しくは−
2すればよい。或いはスクラツチパツドレジスタ
アドレス指定の場合のように部分レジスタR0,
R1の一方のみを選択してアドレスの下位8ビツ
トを指定し、上位8ビツトは全て0にし、その
後、その選択したR0又はR1の内容のみを増減
回路25で±1、又は±2のインクリメント或い
はデクリメントを行う。
以上述べたようにこの発明のアドレス指定方式
によれば各種のアドレス指定方式を行うことがで
きる。しかも1つの部分レジスタの内容を変更す
るには2バイト命令で行うことができる。しかも
1つの部分レジスタのみを変更すればよい場合が
あり、その場合は2バイト命令で済むが、従来に
おいては下位8ビツトのみを変更する場合でも、
16ビツトレジスタの内容を変更することになるた
め、3バイト命令を必要としたことからするとこ
の発明のアドレス指定方式によれば命令数が少な
く、プログラムの量も従来より少なくて済む。ま
た先に述べたように上位指定用の部分レジスタ群
と、下位指定用の部分レジスタ群とからそれぞれ
選択して組合せることにより、効率よくアドレス
を発生できる。
によれば各種のアドレス指定方式を行うことがで
きる。しかも1つの部分レジスタの内容を変更す
るには2バイト命令で行うことができる。しかも
1つの部分レジスタのみを変更すればよい場合が
あり、その場合は2バイト命令で済むが、従来に
おいては下位8ビツトのみを変更する場合でも、
16ビツトレジスタの内容を変更することになるた
め、3バイト命令を必要としたことからするとこ
の発明のアドレス指定方式によれば命令数が少な
く、プログラムの量も従来より少なくて済む。ま
た先に述べたように上位指定用の部分レジスタ群
と、下位指定用の部分レジスタ群とからそれぞれ
選択して組合せることにより、効率よくアドレス
を発生できる。
第1図は従来の汎用レジスタをアドレス指定に
利用する場合を説明するための図、第2図はこの
発明によるアドレス指定方式の一例を示すブロツ
ク図である。 11……メモリ、12……アドレスバツフア、
13……データバツフア、14……命令レジス
タ、15……命令デコーダ、16……データバ
ス、17,18……演算レジスタ、19……演算
回路、21,22……汎用レジスタ、23……ス
タツクポインタ、24……プログラムカウンタ、
25……増減回路、26……アドレスバス。
利用する場合を説明するための図、第2図はこの
発明によるアドレス指定方式の一例を示すブロツ
ク図である。 11……メモリ、12……アドレスバツフア、
13……データバツフア、14……命令レジス
タ、15……命令デコーダ、16……データバ
ス、17,18……演算レジスタ、19……演算
回路、21,22……汎用レジスタ、23……ス
タツクポインタ、24……プログラムカウンタ、
25……増減回路、26……アドレスバス。
Claims (1)
- 1 所定ビツト長のレジスタを少なくとも2個有
し、各レジスタを上位側アドレスおよび下位側ア
ドレスを指定する複数のブロツクに分割し、第1
および第2のレジスタの各上位側アドレス指定ブ
ロツクのうちの一方、および第1および第2のレ
ジスタの各下位側アドレス指定ブロツクのうちの
一方を選択してこれらを組み合わせてアドレス情
報を作成することを特徴とするアドレス指定方
式。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP11714378A JPS5543680A (en) | 1978-09-22 | 1978-09-22 | Address designation system |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP11714378A JPS5543680A (en) | 1978-09-22 | 1978-09-22 | Address designation system |
Publications (2)
Publication Number | Publication Date |
---|---|
JPS5543680A JPS5543680A (en) | 1980-03-27 |
JPS623462B2 true JPS623462B2 (ja) | 1987-01-24 |
Family
ID=14704514
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP11714378A Granted JPS5543680A (en) | 1978-09-22 | 1978-09-22 | Address designation system |
Country Status (1)
Country | Link |
---|---|
JP (1) | JPS5543680A (ja) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH0427830Y2 (ja) * | 1986-04-16 | 1992-07-03 |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
DE69434971T2 (de) | 1993-05-27 | 2008-01-17 | Matsushita Electric Industrial Co., Ltd., Kadoma | Programmumsetzungseinheit |
-
1978
- 1978-09-22 JP JP11714378A patent/JPS5543680A/ja active Granted
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH0427830Y2 (ja) * | 1986-04-16 | 1992-07-03 |
Also Published As
Publication number | Publication date |
---|---|
JPS5543680A (en) | 1980-03-27 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP3670041B2 (ja) | 不揮発性メモリチップイネーブル符号化方法、コンピュータシステム、およびメモリコントローラ | |
US4481570A (en) | Automatic multi-banking of memory for microprocessors | |
JPH0411957B2 (ja) | ||
JPS6017130B2 (ja) | アドレス制御装置 | |
EP0382246A2 (en) | Bit addressing system | |
US4805092A (en) | Electronic circuit for extending the addressing capacity of a processor | |
JPS6041769B2 (ja) | アドレス指定方式 | |
JPS623462B2 (ja) | ||
US4796177A (en) | Address extension system | |
EP0217479A2 (en) | Information processing unit | |
US4602330A (en) | Data processor | |
JPS644207B2 (ja) | ||
EP0387888A2 (en) | Microprocessor system having an extended address space | |
JPS5886651A (ja) | ワ−ド編制メモリのバイト参照方法及びメモリ・システム | |
JP2005222519A (ja) | メモリに記憶されたデータワード内のビット値へのアクセス | |
JP2658473B2 (ja) | マイクロコンピュータ | |
JPS586970B2 (ja) | Romアドレスのシ−ケンス制御方式 | |
JPS622332B2 (ja) | ||
JPS5987567A (ja) | 可変長デ−タ記憶制御方式 | |
JP2005505848A (ja) | 拡張アドレス指定可能空間を有したマイクロプロセッサ | |
JPS59144966A (ja) | デ−タ処理装置 | |
JPH01281544A (ja) | 情報処理システム | |
JPH0731636B2 (ja) | メモリアドレス回路 | |
JPS6112582B2 (ja) | ||
JPH0789439B2 (ja) | 半導体集積回路装置 |