JPS623330A - 加算器 - Google Patents

加算器

Info

Publication number
JPS623330A
JPS623330A JP61142437A JP14243786A JPS623330A JP S623330 A JPS623330 A JP S623330A JP 61142437 A JP61142437 A JP 61142437A JP 14243786 A JP14243786 A JP 14243786A JP S623330 A JPS623330 A JP S623330A
Authority
JP
Japan
Prior art keywords
addition
register
correction
carry
storage register
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
JP61142437A
Other languages
English (en)
Inventor
Shiii Miraa Terensu
テレンス・シィー・ミラー
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.)
Hewlett Packard Japan Inc
Original Assignee
Yokogawa Hewlett Packard 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 Yokogawa Hewlett Packard Ltd filed Critical Yokogawa Hewlett Packard Ltd
Publication of JPS623330A publication Critical patent/JPS623330A/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/4921Single digit adding or 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)
  • Executing Machine-Instructions (AREA)
  • Calculators And Similar Devices (AREA)

Abstract

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

Description

【発明の詳細な説明】 〔産業上の利用分野〕 本発明は計算機7ステムにおけるALU(g術論理演算
ユニット)で実行する加算演算に関し、特に1個また°
は複数個のBCD(2進化10進数)等の2進符号化デ
ィジットを有する演算数に関する連続加算演算に関する
ものである。
〔従来技術とその問題点〕
ALUで実行される算術計算のほとんどは、単純な加算
を用いて成し逐げることができる。例えば、乗法は演算
数による繰り返し加算演算のシーケンスで実現できる。
10進数またはデータは、通膚、BCDI桁が4ビツト
の2進符号で表わされる。2進符号の4ビツト情報は、
16進数字までコード化が可能なので10進数のコード
化に用いる場合では、加算演算を行う前に予め各BCD
ディジットにプラス6補正することによりげたをはかせ
(Prebias )なげればならない。加算演算が完
了すると前に加えた6補正分を加算演算の結果、桁上げ
が発生しなかった全てのディジットから差し引かなけれ
ばならなかった(マイナス6補正)。繰り返し加算演算
のシーケンスを必要とする算術計算の場合、最初の演算
結果よりプラス6補正弁を差し引き(マイナス6補正)
、そして次の加算演算のためにプラス6補正を行なわな
ければならなかった。このように繰り返し加算演算のシ
ーケンスにおける各加算演算間に2つの中間の演算処理
が必要であった。
〔発明の目的〕
従って、本発明の目的は上述の問題点を解消しBCD等
の2進符号化数についての操り返し加算等を高速に行う
10進加算器を提供することにある。
〔発明の概要〕
本発明の一実施例に係る加算器は、8CDフオーマツト
10進数の繰り返し加算の実行中に、前回の加算直後に
その演算結果のうちオーバフローあるいは術上げを起こ
したBCDディジットの全てにプラス6補正をする。本
加算器は加算演算の結果、各BCDディジット毎に桁上
げの発生があったか否かを示す論理信号を供給する手段
を備えている。各加算毎に2つの中間処理を必要する従
来の加算器に比べ、本加算器では桁上げが発生したBC
Dディジットのみにプラス6補正をすることにより中間
処理を1つに微少させている。
〔発明の実施例〕
第1A図と第1B図に本発明の実施例を示し、これらに
基づいて以下に説明する。ALUIOは、記憶レジスタ
5から第1の演算数を受信し、記憶レジスタ3から第2
の演算数を受信し、そして所与の演算を実行させ、その
結果を記憶レジスタ7に記憶させるためライン8上に出
力させる。ALUloは、第1と第2の演算数を、各々
ライン4.6上から受信する加算レジスタ11と桁上げ
記憶レジスタ13と6補正記憶レジスタ15で構成する
。ライン2上の制御信号は加算または他の所望の演算の
実行を入LUIOに指示する。データはBcDフォーマ
ットで記憶され使用される。BCDフォーマットは、例
えば、8ビツトの入5CIIコード(16進数)または
数字データをコード化するために用いられることがある
。10進数データがBCDにコード化されている場合、
適当な桁上げを起させるため、データの算術計算を行う
前にデータ・ワードにげたをはかせなければならないっ
6を加えることによってデータ・ワードにげたをはかせ
ることをここではプラス6補正と定義する。グラス6補
正は加算演算シーケンスの終了後、6を差し引かなけれ
ばならない(マイナス6補正)。
第2図は、第1B図に示す加算レジスタ11の詳細図で
ある。以下、第2図に泪って説明するっ加算レジスタ1
1は、複数個のユニットに細区分され、各ユニットは4
ビツトの情報を有する。第2図は32ビツトワード用の
加算レジスタ11を示し、8個のユニット210,22
0.230.240.250゜260.270.280
は、記憶レジスタ5と記憶レジスタ3から、各々、4ピ
ント情報を受信する。ユニット210,220,230
.240%250.260.270.280の各ユニッ
トは1桁上げ記憶レジスタ13にストアされる桁上げ信
号と記憶レジスタ7にストアされる出力結果を供給する
。ライン4は(第1A図参照)、ライン211.221
.231.241.251.す61.271.281で
構成され、各ラインは記憶レジスタ5から4ビツト情報
を伝送する。ライン6は(第1B図参照)、ライン21
3,223.233,243,253.263゜273
.283 で構成され、各ラインは記憶レジスタ3から
4ビツト情報を伝送する。
ライン217.227.237.247.257.26
7.277.287は、各ユニット間の桁上げラインを
構成し、桁上げもしくはオーバーフローが生じた場合、
ユニットから次の上位ユニットへ桁上げ信号を送る。ラ
イン14(第1B図参照)は、ライン219.229.
239.249.259,269,279.289で構
成され、各々のユニットから桁上げ信号を桁上げ記憶レ
ジスタ13(第18図参照)に送る。ライン8(第1A
図と第18図参照)は、ライン215%225゜235
.245.255.265.275.285で構成され
、各ラインは4ビツトの演算結果を記憶レジスタ7へ伝
送する。ライン212,222,232.242.25
2.262.272.282の各う、インは6補正記憶
レジスタ15(第1B図参照)から4ビツト情報を伝送
する。
第1A図、第1B図、第2図において、加算しジスタ1
1に伝送される4ビツト情報群のおのおのはBCDデジ
ントを構成する。第1、第2、第3そし−〔第4の演算
数を加算する場合、第1の演算数は記憶レジスタ5から
ライン4を介して加算レジスタIIK送られ、記憶レジ
スタ5にストアされる。この際凶データ・ワードのBC
Dディジットは加算レジスタ11のユニット210,2
20.230、240.250.260,270,28
0の適当なひとつに各々伝送される。第1の演算数は次
にBCDの6を6補正記憶レジスタ15からライン21
2゜222.232,242,252.262.272
%282  を介して加算レジスタ11の各ユニットに
伝送することによってげたをはかすことができる。この
ようにして、各BCDディジットに6を加算し、その結
果を加算レジスタ11に保持する。
数字をBCDフォーマントでコード化する場合、各4ビ
ツトのユニットは、0(0000(2進))から9([
)ol(2進))の範囲内の数字を有する。加算レジス
タ11が上述の6補正操作を実行する時、ユニット21
0.220.230.240.250.260.270
.280からの桁上げライン217,227.237.
247.257、267.277、287  が論理1
であるか否かを調べる。どれかの桁上げラインが論理1
となるのは、それに対応するユニットでプラス補正を行
なった時に桁上げもしくはオーバーフローが生じたこと
を意味する。すなわちここで論理1となった桁上げライ
ンに対応したBCDディジットは不正ディジット(例え
ば9より大きい等)または不適確ニコード化されたディ
ジットであることが指示される。
記憶レジスタ3からの第2の演算数はライン213.2
23%233,243.253,263,273.28
3を介して加算レジスタ11に送られる。セして6補正
された第1の演算数に加算され、その演算結果は次の操
作のために加算レジスタ11に保持される。オーバーフ
ローしたユニットは論理1を対応する桁上げライン上に
出力する。桁上げライン上の桁上げ信号はライン219
,229%239,249.259.269.279.
289を介して佑上げ記憶レジスタ13に伝送される。
加算レジスタ11の数に第30演算数を加算する前に6
補正操作が再度行なわれなければならない。ユニット2
10.220.230.24へ250、260,270
,280  の各ユニットのうち前回の加算演算で桁上
げもしくはオーバーフローしなかったユニットはプラス
6補正分を保持している。
再度、6補正しなければならないBCDディジットはオ
ーバーフローもしくは桁上げが発生したユニットに含ま
れるディジットのみである。桁上げ記憶レジスタ13内
の各桁上げ信号は各々論理1かどうか調べられ、ユニッ
ト210.220.230.240゜250.260,
270.280  のうち桁上げ記憶レジスタ13に論
理1がストアされている各ユニットに対して6補正記憶
レジスタ15からのプラス6補正が行なわれる。第3の
演算数は、ここで、レジスタ(図示せず)から加算レジ
スタ11に送られ。
加算演算が繰り返される。更に、オーバーフローシタユ
ニットのディジットの6補正を再度行ない、第4の演算
数が加算レジスタ11に送られ、加算演算が繰り返され
、加算レジスタ11にその演算結果を保持させる。所与
の演算数が全て加算されると桁上げもしくはオーバーフ
ローしなかった各ユニットのBCDディジットから加え
られていた6補正分を差し引く。これにより第1ないし
第4の演算数のlO進加算結果が得られる。
〔発明の効果〕
以上説明したように10進加算を繰り返χす場合にマイ
ナス6補正を加算演算終了毎にせずに、連続的に加算を
行ない、各演算毎に桁上げされたディジットのみをプラ
ス6補正することにより簡単な構成でかつ高速に演算処
理を実行させることができる。
尚、本発明はBCD符号化された数以外の連続加算にも
適用できることは当業者には明らかであろう。
【図面の簡単な説明】
第1A図は、本発明の実施例の加算器のブロック図。第
1B図は、第1A図に示すALUのブロック図。第2図
は、第1B図に示す加算レジスタの詳細図。 3.5.7:記憶レジスタ。 1 o  : ALU。 11:加算レジスタ、 13:慣上げ記憶レジスタ、 15:6補正記憶レジスタ、 210.220.230.240,250.260.2
70.280 :ユニット。

Claims (1)

  1. 【特許請求の範囲】 2進符号化ディジットから成る複数個の演算数の連続的
    加算を行う加算器について、 前記演算数の各ディジットに対応する複数個のユニット
    を有する加算手段と、 第1の前記演算数と補正値を加算演算して最初の中間結
    果を得るため前記加算手段に入力する手段と、 前記中間結果に前記演算数を順次加算して次の中間結果
    を得る手段と、 前記各加算演算で桁上げが発生した場合に桁上げ信号を
    出力する手段と、 前記中間結果中の前記桁上げが発生したディジットのみ
    に前記補正値を加算するフィードバック手段とを具備す
    ることを特徴とする加算器。
JP61142437A 1985-06-28 1986-06-18 加算器 Pending JPS623330A (ja)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US06/750,116 US4718033A (en) 1985-06-28 1985-06-28 Intermediate decimal correction for sequential addition
US750116 1985-06-28

Publications (1)

Publication Number Publication Date
JPS623330A true JPS623330A (ja) 1987-01-09

Family

ID=25016563

Family Applications (1)

Application Number Title Priority Date Filing Date
JP61142437A Pending JPS623330A (ja) 1985-06-28 1986-06-18 加算器

Country Status (4)

Country Link
US (1) US4718033A (ja)
EP (1) EP0206275A3 (ja)
JP (1) JPS623330A (ja)
CA (1) CA1246746A (ja)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS563328A (en) * 1979-06-21 1981-01-14 Akebono Brake Ind Co Ltd Disc brake

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4805131A (en) * 1987-07-09 1989-02-14 Digital Equipment Corporation BCD adder circuit
US7299254B2 (en) * 2003-11-24 2007-11-20 International Business Machines Corporation Binary coded decimal addition
US7519645B2 (en) * 2005-02-10 2009-04-14 International Business Machines Corporation System and method for performing decimal floating point addition

Family Cites Families (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
FR2291542A1 (fr) * 1974-01-07 1976-06-11 Cii Operateur de caracteres travaillant en decimal binaire
US3937941A (en) * 1974-11-27 1976-02-10 Signetics Corporation Method and apparatus for packed BCD sign arithmetic employing a two's complement binary adder
US3958112A (en) * 1975-05-09 1976-05-18 Honeywell Information Systems, Inc. Current mode binary/bcd arithmetic array
DE2737483C3 (de) * 1977-08-19 1980-07-03 Siemens Ag, 1000 Berlin Und 8000 Muenchen Korrektur-Schaltungsanordnung für Additions- oder Substraktionsoperationen mit nicht-hexadezimalen Operanden in hexadezimalen Rechenwerken
JPS5957342A (ja) * 1982-09-28 1984-04-02 Nec Corp 10進加算装置

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS563328A (en) * 1979-06-21 1981-01-14 Akebono Brake Ind Co Ltd Disc brake
JPS6335854B2 (ja) * 1979-06-21 1988-07-18 Akebono Brake Ind

Also Published As

Publication number Publication date
EP0206275A2 (en) 1986-12-30
US4718033A (en) 1988-01-05
CA1246746A (en) 1988-12-13
EP0206275A3 (en) 1988-10-05

Similar Documents

Publication Publication Date Title
US6233597B1 (en) Computing apparatus for double-precision multiplication
US5508951A (en) Arithmetic apparatus with overflow correction means
US4366548A (en) Adder for exponent arithmetic
US4805131A (en) BCD adder circuit
JPH0477338B2 (ja)
JPS62191926A (ja) 演算装置
US5195051A (en) Computation of sign bit and sign extension in the partial products in a floating point multiplier unit
JPS623330A (ja) 加算器
US3937941A (en) Method and apparatus for packed BCD sign arithmetic employing a two's complement binary adder
US6546411B1 (en) High-speed radix 100 parallel adder
JPH1091395A (ja) プロセッサ
JPS6120134A (ja) 平方根計算装置
JPS59139443A (ja) コ−ド変換方式
EP0203599A2 (en) Apparatus to determine conditions in a calculating unit
JP2842768B2 (ja) 浮動小数点演算装置
SU824203A1 (ru) Устройство дл сложени п-разр дныхдЕС ТичНыХ чиСЕл
JPH0474218A (ja) 演算回路
SU1322266A1 (ru) Устройство дл умножени
SU579613A1 (ru) Устройство дл последовательного сложени и вычитаний чисел
SU451078A1 (ru) Устройство для сложения-вычитания двоичных чисел
JPH02165326A (ja) 非回復型除算器
JPH02284225A (ja) 演算処理装置
JPS63136827A (ja) ビツト配列転置回路
JPH0242251B2 (ja)
JPS622329B2 (ja)