JPS5949616B2 - 演算方式 - Google Patents

演算方式

Info

Publication number
JPS5949616B2
JPS5949616B2 JP51122871A JP12287176A JPS5949616B2 JP S5949616 B2 JPS5949616 B2 JP S5949616B2 JP 51122871 A JP51122871 A JP 51122871A JP 12287176 A JP12287176 A JP 12287176A JP S5949616 B2 JPS5949616 B2 JP S5949616B2
Authority
JP
Japan
Prior art keywords
instruction
address
register
arithmetic
executed
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
Application number
JP51122871A
Other languages
English (en)
Other versions
JPS5348631A (en
Inventor
浩 門田
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
NEC Corp
Original Assignee
Nippon Electric Co Ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Nippon Electric Co Ltd filed Critical Nippon Electric Co Ltd
Priority to JP51122871A priority Critical patent/JPS5949616B2/ja
Publication of JPS5348631A publication Critical patent/JPS5348631A/ja
Publication of JPS5949616B2 publication Critical patent/JPS5949616B2/ja
Expired legal-status Critical Current

Links

Description

【発明の詳細な説明】 本発明は演算結果を得るために同一演算命令を複数回繰
わ返し実行する必要があるような演算(例えば乗算)の
演算方式に関するものである。
従来、このような演算の演算方式としては、同一演算命
令を繰り返し実行させるべき回数をデータとして与え、
上記演算命令を1回実行する毎に該データから1を減じ
、この値が0になつた時点で演算終了とする方式が最も
一般的である。第1図にこの演算方式のフローチャート
を示す。この演算方式の場合、第1図のごと<、まずス
テップaでデータがoかどうか判断し、0でなければ、
ステップをでデータから1を減じステップcで演算命令
を実行し、再びステップaに戻るループが形成されてお
わ、データがNであればN回ループして3×N個のステ
ップの演算時間を費す。本発明の目的は上述のループで
費すステップ数を削減し演算時間の短縮化を図ることに
ある。以下、演算結果を得るために同一演算命令を複数
回繰り返し実行する必要がある演算として乗算を例にと
り図面を参照して本発明を詳細に説明する。第2図は従
来のROMおよびレジスタによる演算方式の乗算ルーチ
ンのフローチャートである。
図中、Xは演算結果を格納するレジスタ、Yは被演算数
を格納するレジスタ、zは演算数を格納するレジスタで
ある。まず同図ステップ1でZレジスタの最下位桁ZL
が0であるか判断をし、次に\0であればZLから1を
減じ(同図ステップ2)、次に加算命令X + Y−−
Xを実行し同図ステップ1へ戻る。
もしステップ1でZL=0となればステップ4、5を実
行しXおよびZのレジスタを1桁右シフト(RS)する
。ステップ5でzレジスタがすべてoすなわちZ=0な
らば演算を終了し、z\0ならば再びステップ1へ移り
Z=0になるまで同様のループをくわかえす。上記乗算
ルーチン中最も演算時間のかかるのはステップ1−2−
3のループである。
すなわちzレジスタがN桁で各桁の内容がすべて9であ
れば3×9×N=27Nステップをついやすことになる
。また第2図においては、ステップ3からステップ1へ
自由にアドレスが移れるハードウェアを想定したが、ア
ドレス指定を逐次カウンターにより+1して行なう方式
に訃いては、ステツプ3からステツプ1へシーケンスを
制御する場合アドレスジヤンプ命令(JUMP)が必要
となり、前述のループは4×9XN=36Nステツプに
なる。
一方、ステツプ1−4−5−6−1のループは処理桁に
つき1度しかないので4×N=4Nステツプをついやす
にすぎない。すなわち、本発朋は上記1−2−3のルー
プが上記1−4−5−6−1のループに比べて費すステ
ツプ数が多いことに着目し該1−2−3のループがつい
やすステツプ数を削減することにより演算時間の短縮を
図つたものである。
次に、第3図、第4図を用い本発明の乗算に対する一実
施例を説明する。
第3図は本発明の一実施例のハードウエアを示したもの
である。
図において、1aと1bとを含む部分が演算結果を格納
するXレジスタ、2が被演算数を格納するYレジスタ、
3aと3bとを含む部分が演算数(すなわち加算命令X
+Y−Xを繰り返し実行すべき回数データ)を格納する
zレジスタであb1いずれも循環保持型のレジスタであ
る。なお、1b1 3bはそれぞれXレジスタ、Zレジ
スタの4ビツトからなる最下位桁格納部である。4は読
み出し専用メモリ(以下ROMと称す)、5はROM4
のアドレスを指定するアドレス指定レジスタ(以下AR
と称す)、6はインストラクシヨンデコーダ(以下1D
と称す)、7は10進加算機能を有するフル・アダー(
以下FAと称す)、8は指定された桁に相当するタイミ
ング信号を発生するカウンタ、9は4ビツトのラツチ、
10は判定回路、11〜18はID6のインストラクシ
ヨンにより開閉するゲータ、19〜29は信号線である
第4図は本発明の一実施例である乗算ルーチンのフロー
チヤートを示した図である。
第4図において、各命令ステツプの右肩の数字はステツ
プ番号、左側のARL=0〜9はROM4における各命
令ステツプのアドレスの下位番地(ARL)が0〜9で
あることを示す。ステツプ1のZL−→ARLなる命令
がROM4より読み出されると、まずインストラクシヨ
ン19eによりzレジスタの内容を信号線23に出力さ
せるべくゲート16を開かせる。次に、インストラクシ
ヨン19jによりカウンタ8にZ1に相当するタイミン
グ信号を発生させ、同時にインストラクシヨン19hに
よりゲート17を上記タイミング信号期間開かせる。こ
れによつて、信号線24にZLの内容を出力し9にラツ
チさせる。次に実行すべき命令のアドレスはROM出力
の一部28、29によつて指定されるのであるが、ZL
−ARL実行時にはインストラクシヨン191が29の
替りにラツチ7の出力を信号線25を介してAR5の下
位4ビツト5bに入力させる。このようにカウンタ8と
ゲート17とラツチ9とはZレジスタの最下位桁ZLを
AR5に転送する手段を構成している。従つてZLの内
容が9ならばステツプ2へ移行し、上から1番目の加算
命令X+Y−Xを実行する。この時はインストラクシヨ
ン19cによりゲート13がFA7へXレジスタの内容
を出力し、Yレジスタの内容はインストラクシヨン19
eによりゲート14が開かれることによりFA7に入る
。FA7は10進加算をしその結果は信号線26を通じ
インストラクシヨン19aによつて開かれたゲート11
を介し再びXレジスタに入る。ステツプ2の命令を実行
する時、ROM4は信号線28、29を介して次に実行
すべきアドレスとしてステツプ3(ARL=8)を指定
する。X+Y−Xの命令はステツプ10の上から9番目
まで同様にして9回実行され、zL=m(mは0から9
までの整数)ならば上から9−m+1番目目の加算命令
までm回X+Y−Xの命令を実行する。ステツプ11の
zレジスタ右シフト命令(Z→RS)がROM4より読
み出させると、インストラクシヨン19fによりゲート
15が開き、信号線22を通じて信号が循環する。ステ
ツプ12においても、インストラクシヨン19bにより
開いたゲート12と、信号線26と、インストラクシヨ
ン19aにより開いたゲート11とにより右シフトパス
を形成し、Xレジスタ右シフト命令(X−RS)を実行
する。続いてステツプ13ではインストラクシヨン19
gにより判定回路10へzレジスタの内容が出力され、
ZX0ならば信号線27へアドレス修飾信号を出し、次
実行アドレスをステツプ1に戻す。上述の様に各ステツ
プを実行すると、第2図のループ1−2−3に相当する
ステツプ数はzの各桁の内容がすべて9であつても(9
+1)×N=10Nステツプで済ませられる。
これは第2図のZL−1−ZL及びZL\0の命令をN
回実行する代りに、Z,−ARLの命令と連続して実行
される様にアドレスを割6つけた9ステツプのX+Y−
X命令とを用いたからである。なお、ZL−ARLの機
能は通常データによつてアドレスを制御される手段とし
て多くの電卓のハードウエアに備えられている。
本発明によれば演算に使用されるROMのステツプ数を
わずか増加させるのみで簡単に演算時間の短縮を図るこ
とが可能になる。
次にシステムが逐次カウンターによりアドレスを+1し
て指定する場合を考えると、筆4図の様に次に実行すべ
きアドレスを9番地から直接8番地に指定することは不
可能である。
しかし計算機に補数命令ZL−ZLがあれば、第5図の
ごとくZL−ARLの命令の直前スアツプとしてZL一
Z1なる命令ステツプを設け9個の加算命令の番地AR
Lを06〜14に割り付けることにより本発明により本
発明を実施できる。何故ならば、2進4ビツトで考える
なら9の補数は6でありARL=06番地から逐次14
番地までX+Y−Xが実行されるからである。以上に乗
算を例にとり本発明を説明したが、本発明はそれに限定
されるものではなく、演算結果を得るために同一演算命
令を複数回繰b返し実行する必要があるその他の演算に
も本発明が適用可能であることは勿論である。
【図面の簡単な説明】
筆1図は従来の演算方式のフローチヤートを示した図、
填2図は従来の乗算の演算方式のフローチヤートを示し
た図、第3図は本発明の一実施例のハードウエアを示し
たブロツク図、第4図は本発明の一実施例のフローチヤ
ートを示した図、第5図は本発明の他の実施例のフロー
チヤートを示した図である。

Claims (1)

    【特許請求の範囲】
  1. 1 同一演算を複数回連続して実行する演算方式におい
    て、演算命令が格納されているメモリと、このメモリへ
    アドレスを供給して前記演算命令を読み出すアドレス手
    段と、同一演算を繰り返し実行すべき回数を指定する回
    数データを格納する手段と、前記回数データを前記アド
    レス手段に送る手段とを有し、前記回数データを前記ア
    ドレスの一部として用い、該アドレスによつて指定され
    る回数分連続して前記演算命令を読み出し、それによつ
    て連続して演算を実行するようにしたことを特徴とする
    演算方式。
JP51122871A 1976-10-15 1976-10-15 演算方式 Expired JPS5949616B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP51122871A JPS5949616B2 (ja) 1976-10-15 1976-10-15 演算方式

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP51122871A JPS5949616B2 (ja) 1976-10-15 1976-10-15 演算方式

Publications (2)

Publication Number Publication Date
JPS5348631A JPS5348631A (en) 1978-05-02
JPS5949616B2 true JPS5949616B2 (ja) 1984-12-04

Family

ID=14846685

Family Applications (1)

Application Number Title Priority Date Filing Date
JP51122871A Expired JPS5949616B2 (ja) 1976-10-15 1976-10-15 演算方式

Country Status (1)

Country Link
JP (1) JPS5949616B2 (ja)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
USD603346S1 (en) 2008-12-11 2009-11-03 Black & Decker Inc. Automatic light switch

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
USD603346S1 (en) 2008-12-11 2009-11-03 Black & Decker Inc. Automatic light switch

Also Published As

Publication number Publication date
JPS5348631A (en) 1978-05-02

Similar Documents

Publication Publication Date Title
US4635292A (en) Image processor
US4539635A (en) Pipelined digital processor arranged for conditional operation
JPS6351287B2 (ja)
JPH03286332A (ja) デジタルデータ処理装置
US3234367A (en) Quotient guess divider
US4598358A (en) Pipelined digital signal processor using a common data and control bus
US5349671A (en) Microprocessor system generating instruction fetch addresses at high speed
US3001708A (en) Central control circuit for computers
JPS6051733B2 (ja) 指数関数演算装置
US5390306A (en) Pipeline processing system and microprocessor using the system
US5014233A (en) Divider for carrying out high speed arithmetic operation
US4878191A (en) Multiplication circuit capable of operating at a high speed with a small amount of hardware
JPH034936B2 (ja)
RU2066067C1 (ru) Центральный процессор для многопроцессорной вычислительной системы
US4723258A (en) Counter circuit
US5650952A (en) Circuit arrangement for forming the sum of products
JPH0222413B2 (ja)
JPS63111535A (ja) デ−タ処理装置
JP3166781B2 (ja) 加算回路
JPS6115233A (ja) 乗算器
JPS6236255B2 (ja)
JP2605792B2 (ja) 演算処理装置
SU1200280A1 (ru) Устройство дл умножени
GB857511A (en) Improvements in or relating to dividing multiplying arrangements for electronic digital computing machines
JPH06162067A (ja) ベクトル命令制御装置および制御方法