JPS61221932A - n進加算装置 - Google Patents

n進加算装置

Info

Publication number
JPS61221932A
JPS61221932A JP6210585A JP6210585A JPS61221932A JP S61221932 A JPS61221932 A JP S61221932A JP 6210585 A JP6210585 A JP 6210585A JP 6210585 A JP6210585 A JP 6210585A JP S61221932 A JPS61221932 A JP S61221932A
Authority
JP
Japan
Prior art keywords
adder
word
operand
addition
ary
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.)
Pending
Application number
JP6210585A
Other languages
English (en)
Inventor
Shoji Tashiro
田代 章二
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.)
Toshiba Corp
Original Assignee
Toshiba Corp
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 Toshiba Corp filed Critical Toshiba Corp
Priority to JP6210585A priority Critical patent/JPS61221932A/ja
Publication of JPS61221932A publication Critical patent/JPS61221932A/ja
Pending legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F7/00Methods or arrangements for processing data by operating upon the order or content of the data handled
    • G06F7/38Methods or arrangements for performing computations using exclusively denominational number representation, e.g. using binary, ternary, decimal representation
    • G06F7/48Methods or arrangements for performing computations using exclusively denominational number representation, e.g. using binary, ternary, decimal representation using non-contact-making devices, e.g. tube, solid state device; using unspecified devices
    • G06F7/491Computations with decimal numbers radix 12 or 20.
    • G06F7/492Computations with decimal numbers radix 12 or 20. using a binary weighted representation within each denomination
    • G06F7/493Computations with decimal numbers radix 12 or 20. using a binary weighted representation within each denomination the representation being the natural binary coded representation, i.e. 8421-code
    • G06F7/494Adding; Subtracting
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2207/00Indexing scheme relating to methods or arrangements for processing data by operating upon the order or content of the data handled
    • G06F2207/492Indexing scheme relating to groups G06F7/492 - G06F7/496
    • G06F2207/4924Digit-parallel adding or subtracting
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F7/00Methods or arrangements for processing data by operating upon the order or content of the data handled
    • G06F7/38Methods or arrangements for performing computations using exclusively denominational number representation, e.g. using binary, ternary, decimal representation
    • G06F7/48Methods or arrangements for performing computations using exclusively denominational number representation, e.g. using binary, ternary, decimal representation using non-contact-making devices, e.g. tube, solid state device; using unspecified devices
    • G06F7/499Denomination or exception handling, e.g. rounding or overflow
    • G06F7/49905Exception handling
    • G06F7/4991Overflow or underflow

Landscapes

  • Engineering & Computer Science (AREA)
  • Computing Systems (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Computational Mathematics (AREA)
  • Mathematical Analysis (AREA)
  • Mathematical Optimization (AREA)
  • Pure & Applied Mathematics (AREA)
  • General Engineering & Computer Science (AREA)

Abstract

(57)【要約】本公報は電子出願前の出願データであるた
め要約のデータは記録されません。

Description

【発明の詳細な説明】 [発明の技術分野] この発明は、第1および第2オペランド間のn進加算を
所定桁数から成るワード単位で実行するn進加算装置に
関する。
[発明の技術的背景] この種加算装置、例えば10進加算装置は、一般に第2
図に示すように構成されている。同図において、11は
第1オペランド格納用のレジスタ・ファイル(RV)、
12は第2オペランド(並びに加算結果)格納用のレジ
スタ・ファイル(RLI)である。レジスタ・ファイル
it、 12は4ワード構成となっている。この例では
1ワードは4バイト構成であり、1バイトで10進1桁
が示される。
13はレジスタ・ファイル11.12から1ワ一ド単位
で順次取出されるワード間の10進加算を行なう10道
加算器、14はキャリー・フラグである。
上記した加算装置では、キャリー・フラグ14は加算開
始前に予めゼロ・クリアされる。またレジスタ・ファイ
ル11.12の全ワードもゼロ・クリアされる。そして
加算時において、まず第1オペランドがレジスタ・ファ
イル11に、第2オペランドがレジスタ・ファイル12
に、それぞれ第Oワードから順にワード単位で格納され
る。この際、第1および第2オペランドの最上位バイト
を含む最上位ワードの無効データ部分(即ちオペランド
の構成データを含まない部分)にはフィル・キャラクタ
としてゼロが格納される。例えば第1オペランドが6バ
イト、第2オペランドが7バイトであれば、レジスタ・
ファイル11については第1ワードの上位2バイトの位
置に、レジスタ・ファイル12については第1ワードの
上位1バイトの位置(符号aで示されている)にそれぞ
れゼロが格納される。
レジスタ・ファイル11.12へのオペランド格納が終
了すると、レジスタ・ファイル11.12からまず第0
ワードが加算器13に取出され、両データ間の加算が行
なわれる。加算器13の加算結果はレジスタ・ファイル
12の第09−ドの位置に書込まれる。また加算器13
のキャリー出力端子COからのキャリー出力はキャリー
・フラグ14に記憶される。
このキャリー・フラグ14の記憶内容は加算器13のキ
ャリー入力端子CIに供給され、次ワードの加算時のキ
ャリー入力に用いられる。第09−ド闇の加算が終了す
ると次の第1ワードがレジスタ・ファイル11.12か
らそれぞれ取出され、加算器13において加算が行なわ
れる。加算器13の加算結果はレジスタ・ファイル12
の第1ワードの位置に書込まれる。以上の動作により、
第1および第2オペランドの加算が終了する。
このようにして加算演算が終了すると、次にその加算の
結果オーバー・フローが生じたか否かを調べる必要があ
る。この場合、第2図に示す従来の加算装置では、レジ
スタ・ファイル12の第1ワードの符号aで示されるバ
イト(桁)がゼロでないかどうかを調べることにより、
オーバー・フローの有無を判別することができる。
[背景技術の問題点] 上記したように従来の加算装置では、加算演算の結果オ
ーバー・フローが生じたか否かを調べるのに、加算結果
を格納しているレジスタ・ファイルを再度アクセスして
該当するバイト(桁)を調べなければならないため、処
理の複雑化および処理速度の低下を招く問題があった。
[発明の目的] この発明は上記事情に鑑みてなされたものでその目的は
、オーバー・フローの有無をキャリー・フラグ(フリッ
プ70ツブ)で示すことができ、もってオーバー・フロ
ーのチェックの簡略化が図れるn進加算装置を提供する
ことにある。
[発明の概!!] この発明によれば、第1および第2オペランド闇のn進
加算を所定桁数から成るワード単位で実行するn進用算
器を備えたn進加算装置が提供される。
上記n進加算装置は、n進用算器の加算演算対象となる
第1オペランド側ワード並びに第2オペランド側ワード
のうち予め定められたオペランド側のワードについては
その無効データ部分を桁単位で所定値n−1に置換して
n進用算器に供給する手段と、フリップ70ツブとを有
している。このフリップ70ツブは、n進用算器−のキ
ャリー入力端子にキャリー入力を供給すると共にn進用
算器のキャリー出力端子からのキャリー出力を記憶する
キャリー・フラグとして用いられるもので、上記予め定
められたオペランド側のワードについてその無効データ
部分を桁単位で所定値n−1に置換し、且つ第1および
第2オペランドのうちデータ長の長いオペランドに対応
するワード数分のn進加算を行なった際には、オーバー
・フ〇−の有無を示すことになる。
[発明の実施例] 第1図はこの発明の一実施例に係る10道加算装置の構
成を示す。同図において、21は第1オペランド格納用
のレジスタ・ファイル(RV)、22は第2オペランド
(並びに加算結果)格納用のレジスタ・ファイル(RU
)である。レジスタ・ファイル21.22は4ワード構
成となっている。この例では17−ドは4バイト構成で
あり、1バイトで10進1桁が示される。レジスタ・フ
ァイル22からの出力(1ワード)は、セレクタ23に
供給される。セレクタ23は、レジスタ・フ?′イル2
2からの出力のうちで第2オペランドの構成データを含
まない部分(即ち無効データ部分)をバイト(桁単位で
所定1i19に置換するように構成されている1セレク
タ23の出力は10進加算器24の入力ボート已に供給
される。加算器24の入力ポートAにはレジスタ・ファ
イル21からの出力(1ワード)が供給される。加算器
24のキャリー出力端子GOからのキャリー出力はフリ
ップフロップから成るキャリー・フラグ25に供給され
、キャリー・フラグ25からの出力はキャリー入力とし
て加算器24のキャリー入力端子CIに供給される。ま
た加算器24の加算結果は、レジスタ・ファイル22に
供給される次に第1図の構成の動作を、6バイト構成の
請1オペランドと7バイト構成の第2オペランドとの加
算を行ない、その結果をレジスタ・ファイル22に書込
む場合を例にとって説明する。
まず、図示せぬ制御部の制御により、11オペランドが
主メモリ(図示せず)から読出され、レジスタ・ファイ
ル21の第Oワードから順にワード単位で格納される。
このとき、第1オペランドの最上位バイトを含む最上位
ワードの無効データ部) 分(この例では第1ワードの
上位2バイト)には1 フィル・キャラクタとしてゼロ
が格納される。次に第2オペランドが主メモリから請出
され、レジスタ・ファイル22の第Oワードから順にワ
ード単位で格納される。このときも第1オペランドの場
合と同様に、第2オペランドの最上位バイトを含む最上
位ワードの無効データ部分(この例では第1ワードの上
位1バイト)にはフィル・キャラクタとしてゼロが格納
される。
なお、レジスタ・ファイル21の全ワードは、上7記の
第1オペランド格納前に予めゼロ・クリアされている。
これは、第1オペランドのデータ長が第2オペランドの
それよりも短く、且つ両オペランドの最上位バイトが同
じワード位置に無い場合、第1オペランドより上位のワ
ードをゼロ゛としておくことにより、第2オペランドに
対応するワード数分だけ加算できることを保証するため
である。
また、キャリー・フラグ25についても加算前にゼロ・
クリアされる。これは、Wilおよび第2オペランドの
最下位ワード(第Oワード)の加算時の加算器24(の
キャリー入力端子CI)へのキャリー入力をゼロにする
ためである。
以上の準備が終了すると、レジスタ・ファイル21、2
2内の最下位ワードである第Oワードのデータが図示せ
ぬlllJWIJ部の制御により取出される。レジスタ
・ファイル21からの第Oワードのデータは加算器24
の入力ポートAに供給され、レジスタ・ファイル22か
らの第Oワードのデータはセレクタ23に供給される。
セレクタ23は、レジスタ令ファイル22から供給され
るワードデータそのもの、同ワードデータの上位1バイ
ト(桁)が所定19に置換されたワード、同じく上位2
バイトがそれぞれ所定値9に置換されたワード、上位3
バイトがそれぞれ9に置換されたワードのいずれか1つ
を、レジスタ・ファイル22から供給されるワードデー
タのうちで第2オペランドの構成データを含まない部分
のバイト(桁)数(即ち無効データバイト数)に応じて
選択する。この無効データバイト数は、第2オペランド
の未加算バイト数により算出されるもので、未加算バイ
ト数が4バイト以上であれば0.3バイトであれば1.
2バイトであれば2.1バイトであれば3である。レジ
スタ・ファイル22から第Oワードのデータが供給され
たこの例では、第2オペランドの未加算バイト数は7バ
イトであり4バイト以上あるので、無効データバイト数
はOである。この場合セレクタ23は、レジスターファ
イル22からの第07−ドのデータをそのまま加算器2
4の入力ポートBに供給する。
加算器24は、入力ポートAに供給されるレジスタ・フ
ァイル21からの第0ワードのデータと、セレクタ23
から供給される(レジスターファイル21からの)第O
ワードのデータとの加算を行なう。
加算器24の加算結果は、レジスタ・ファイル22に供
給され、その第09−ドの位置に書込まれる。
また加算器24のキャリー出力端子COがらのキャリー
出力は加算124に記憶される。
次に、レジスタ・ファイル21,2.2内の第19−ド
のデータが取出され、レジスタ・ファイル21からの第
1ワードのデータは加算器24の入力ポートAに、レジ
スタ・ファイル22からの第1ワードのデータはセレク
タ23に供給される。セレクタ23は、第2オペランド
の未加算バイト数が3バイトであり、したがって無効デ
ータバイト数が1バイトであることから、レジスタ・フ
ァイル22からの第1ワードのデータの上位1バイトを
9に置換して加算器24の入力ポートBに供給する。加
算器24のキャリー入力端子CIには、キャリー・フラ
グ25の出力、即ち前回の加算時のキャリー出力がキャ
リー入力として供給される。
加算器24では、入力ポートA、Bに供給されたワード
データ間の加算を、前回の加算時のキャリー出力内容を
キャリー入力にして実行する。この場合、もし第1およ
び第2オペランドの加算でオーバー・フローが生じるも
のであれば、加算器24の入力ポートBに供給される第
2オペランド側の第1ワードがその上位1バイト(無効
データバイト)を9に置換したものであることから、キ
ャリー出力端子COからはキャリーが出力される。加算
器24の加算結果は、レジスタ・ファイル22に供給さ
れ、その第1ワードの位置に書込まれる。また加算器2
4のキャリー出力端子coからのキャリー出力はキャリ
ー・フラグ25に記憶される。上記の説明から明らかな
ように、加算終了時のキャリー・フラグ25の内容は加
算の結果オーバー・フローが生じたか否かを示す。した
がって、第1および第2オペレーション間の加算の結果
オーバー・フローが生じたか否かを調べるために、従来
のように加算結果が格納されているレジスタ・ファイル
22の第1ワードの最上位バイトがゼロでないかどうか
を調べるといった煩雑な処理が不要となる。
上記したように、この実施例による10進加算装置は、
第2オペランドを格納するレジスタ・ファイル22の出
力側と加算器24の入力ポートBとの間にセレクタ23
を設け、レジスタ・ファイル22からワード単位で取出
される加算対象データのうち(第2オペランドよりも上
位の)無効データ部分をバイト(桁)単位で所定値9に
置換して、第1および第2オペランドのうちのデータ長
の長い方のオペランドに対応するワード数分だけ加算を
実行することにより、オーバー・フロー情報をキャリー
・フラグ25に取出すようにしたものである。
したがって、第1オペランドのデータ長が第2オペラン
ドのそれよりも長く、且つ両オペランドの最上位バイト
が同じワード位置に無い場合、第2オペランドより上位
のバイトから、第1オペランドの最上位バイトを含む最
上位ワードに対応するワード位置の全バイトまで予めバ
イト単位で9に置換しておく必要がある。もし、セレク
タ23にレジスタ・ファイル22からのワードデータの
各バイトを全て9に置換して出力する機能を持たせるな
らば、上記のように予め9に置換しておく必要は無い。
なお、前記実施例では、レジスタ・ファイル22の出力
側と加算器24の入力ポート8との間にセレクタ2゛3
を設けた場合について説明したが、レジスタ・ファイル
21の出力側と加算器24の入力ポートAとの間に設け
てもよく、またレジスタ・ファイル21またはレジスタ
・ファイル22の入力側に設け、オペランド格納時にオ
ペランドよりも上位のバイト(桁)を予め9に置換する
ようにしてもよい。
また、前記実施例では、この発明を10進加算装置に実
施した場合について説明したが、この発明はn進加算装
置全般に応用できる。但、し、n進加算装置の場合、置
換に用いられる所定値をn−1にする必要がある。した
がって2進加算装置であれば、1が適用される。
[発明の効果] 以上詳述したようにこの発明によれば、オーバー・フロ
ーの有無を、加算装置が本来有しているキャリー・フラ
グ(フリップフロップ)で示すことができるので、オー
バー・フローのチェックの簡略化が図れ、高速処理が可
能となる。
【図面の簡単な説明】 第1図はこの発明の一実施例に係る10進加算装置のブ
ロック構成図、第2図は従来例を示す図である。 21、22・・・レジスタ・ファイル、23・・・セレ
クタ、24・・・10進加算器、25・・・キャリー・
フラグ(フリップ70ツブ)。 出願人代理人 弁理士 鈴 江 武 彦第1図

Claims (1)

    【特許請求の範囲】
  1. 第1および第2オペランド間のn進加算を所定桁数から
    成るワード単位で実行するn進加算器を備えたn進加算
    装置において、上記n進加算器の加算演算対象となる上
    記第1オペランド側ワード並びに第2オペランド側ワー
    ドのうち予め定められたオペランド側のワードについて
    はその無効データ部分を桁単位で所定値n−1に置換し
    て上記n進加算器に供給する手段と、上記n進加算器の
    キャリー入力端子にキャリー入力を供給すると共に、上
    記n進加算器のキャリー出力端子からのキャリー出力を
    記憶するフリップフロップとを具備し、上記第1および
    第2オペランドのうちデータ長の長いオペランドに対応
    するワード数分のn進加算を行なうようにしたことを特
    徴とするn進加算装置。
JP6210585A 1985-03-28 1985-03-28 n進加算装置 Pending JPS61221932A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP6210585A JPS61221932A (ja) 1985-03-28 1985-03-28 n進加算装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP6210585A JPS61221932A (ja) 1985-03-28 1985-03-28 n進加算装置

Publications (1)

Publication Number Publication Date
JPS61221932A true JPS61221932A (ja) 1986-10-02

Family

ID=13190435

Family Applications (1)

Application Number Title Priority Date Filing Date
JP6210585A Pending JPS61221932A (ja) 1985-03-28 1985-03-28 n進加算装置

Country Status (1)

Country Link
JP (1) JPS61221932A (ja)

Similar Documents

Publication Publication Date Title
US4272828A (en) Arithmetic logic apparatus for a data processing system
JPS6240740B2 (ja)
EP0718980A1 (en) Data compression method of individual sequences of strings of a data stream based on a dictionary and device for performing the same
JPH0414385B2 (ja)
JPH0145649B2 (ja)
EP0173040A2 (en) Vector processing system
US4611278A (en) Wraparound buffer for repetitive decimal numeric operations
EP1019829B1 (en) Method and apparatus for transferring data between a register stack and a memory resource
US5265204A (en) Method and apparatus for bit operational process
JPH034936B2 (ja)
JPH027097B2 (ja)
US4364025A (en) Format switch
JPS61221932A (ja) n進加算装置
US4956805A (en) Circuitry for character translate functions
JPH1091593A (ja) マイクロプロセッサと付加的計算ユニットとを含むデータ処理装置
JPH0895850A (ja) マイクロプロセッサ
JPS5856040A (ja) デ−タ処理装置
JPS5844551A (ja) デ−タ書込み制御方式
JP2639212B2 (ja) 積和演算器
GB1089307A (en) Data processing apparatus
JPS60673Y2 (ja) メモリ−アドレス指定装置
JPS59106047A (ja) マイクロコンピユ−タ
JPS60146336A (ja) デ−タフロ−計算機
JPH01126730A (ja) スタック・メモリ装置
JPS62182852A (ja) 信号処理プロセツサ