JP3421933B2 - 演算処理装置及び電子計算機 - Google Patents

演算処理装置及び電子計算機

Info

Publication number
JP3421933B2
JP3421933B2 JP29047494A JP29047494A JP3421933B2 JP 3421933 B2 JP3421933 B2 JP 3421933B2 JP 29047494 A JP29047494 A JP 29047494A JP 29047494 A JP29047494 A JP 29047494A JP 3421933 B2 JP3421933 B2 JP 3421933B2
Authority
JP
Japan
Prior art keywords
digit
digits
value
data
decimal
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 - Fee Related
Application number
JP29047494A
Other languages
English (en)
Other versions
JPH08129479A (ja
Inventor
弘之 河▲崎▼
Original Assignee
弘之 河▲崎▼
有限会社心地産業
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 弘之 河▲崎▼, 有限会社心地産業 filed Critical 弘之 河▲崎▼
Priority to JP29047494A priority Critical patent/JP3421933B2/ja
Priority to US08/544,474 priority patent/US5822233A/en
Publication of JPH08129479A publication Critical patent/JPH08129479A/ja
Application granted granted Critical
Publication of JP3421933B2 publication Critical patent/JP3421933B2/ja
Anticipated expiration legal-status Critical
Expired - Fee Related 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/49Computations with a radix, other than binary, 8, 16 or decimal, e.g. ternary, negative or imaginary radices, mixed radix non-linear PCM

Description

【発明の詳細な説明】
【0001】
【産業上の利用分野】この発明は、ディジタル信号を用
いて計算乃至情報処理を行なう、演算処理装置及び電子
計算機に係り、詳しくは十進法や2進法と同等、もしく
はこれらに取って代わる演算を行ない、これによって演
算精度が向上し、計算速度も向上する演算処理装置及び
電子計算機に関する。
【0002】
【従来の技術】電子計算機をはじめ、ディジタル信号を
用いて計算乃至情報処理を行なうディジタル信号処理機
器はいずれも、0と1の2個の信号からなる2進数を用
いて、デ−タを記憶し、演算を行なうものであり、十進
法で計算する演算処理装置も、十進数の1桁を4桁の2
進数を用いて表わし、2進数と十進法を併用したもので
ある。
【0003】
【発明が解決しようとする課題】日常生活で使われる十
進法は、正の数を表現することに、重きが置かれてお
り、負の数を表現するには、絶対値が等しい正の数の左
側に負を表わす記号(−)を付ける場合が多い。
【0004】それ故、負の数を用いて四則演算する場
合、負を表わす記号を外した値を絶対値として求め、こ
れを用いて計算した後、改めて必要に応じて負を表わす
記号を付与するなどしなければならない。そのため、正
と負で取扱いが異なることがある。
【0005】2進法では、正の数と負の数の取扱いを別
にするのは、煩わしいのでこれ等を同一に取扱い得るよ
うに、負の数は2の補数の形にする場合が多い。然しな
がらこの方法では、元の値の有効数字が少ない程、2の
補数の形にしたときの零でない桁が多くなり、その分だ
け計算時間が余計に掛るという問題が有った。
【0006】又、計算で求めた数が、必要以上の桁数に
なった場合、或る桁以下の部分を丸めて、必要な桁数の
数にするとき、数の丸め方とそのときの誤差が、数の表
記方法に依存するという問題があった。
【0007】この発明は、かかる点に鑑みてなされたも
ので、十進法や2進法と同等、もしくはこれらに取って
代わる演算を行ない、これによって演算精度が向上し、
計算速度も向上する演算処理装置及び電子計算機を提供
することを目的としている。
【0008】
【課題を解決するための手段】前記課題を解決するため
に、請求項1記載の発明の演算処理装置は、1〜nのn
個の正の整数を表わすn個の信号と−1〜−nのn個の
負の整数を表わすn個の信号と零を表わす1個の信号の
合計(2n+1)個の信号の中から選ばれた1個の信号
でもって1桁の数を表わし、nは1以上の正の整数であ
る1桁乃至複数桁の(2n+1)進数を用いて演算する
ことを特徴としている。
【0009】請求項2記載の発明の電子計算機は、1〜
nのn個の正の整数を表わすn個の信号と−1〜−nの
n個の負の整数を表わすn個の信号と零を表わす1個の
信号の合計(2n+1)個の信号の中から選ばれた1個
の信号でもって1桁の数を表わし、nは1以上の正の整
数である1桁乃至複数桁の(2n+1)進数のデ−タを
記憶する記憶領域と、この記憶領域から取出した1個乃
至複数個の(2n+1)進数のデ−タを入力とし1個乃
至複数個の(2n+1)進数のデ−タを出力とする演算
処理部とを有し、前記(2n+1)進数のデ−タを取扱
うことを特徴としている。
【0010】請求項3記載の発明の電子計算機は、前記
演算処理部が、整数型データを取扱う整数演算部と、浮
動小数点型数値デ−タの仮数部を取扱う仮数演算部とか
ら成り、浮動小数点型数値デ−タの指数部は前記整数演
算部で処理することを特徴としている。
【0011】即ち、この発明の演算処理装置及び電子計
算機は、1〜nのn個の正の整数を表わすn個の信号と
−1〜−nのn個の負の整数を表わすn個の信号と零を
表わす1個の信号の合計(2n+1)個の信号の中から
選ばれた1個の信号でもって1桁の数を表わし、nは1
以上の正の整数である1桁乃至複数桁の(2n+1)進
数を用いて演算を行なう。nが1のときには(2n+
1)進数は3進数のことであり、nが4のときには(2
n+1)進数は9進数のことであり、nが13のときに
は(2n+1)進数は27進数のことである。nは、上
記の数に限られることはなく、1以上の正の整数であれ
ば良く、このことは、(2n+1)は3以上の正の奇数
であれば良い。これらの数の表記方法及び演算方法を総
称して(2n+1)進法と言う。又、(2n+1)進法
で表記された数を(2n+1)進数と言う。
【0012】これに対して従来の表記方法は、1〜nの
n個の正の整数を表わすn個の記号と零を表わす1個の
記号の合計(n+1)個の記号の中から選ばれた1個の
記号でもって1桁の数を表わすので、(2n+1)進法
に対して(n+1)進法と言うことができる。
【0013】上記、従来の(n+1)進法にくらべて、
本件発明者が創出した(2n+1)進法は、−1〜−n
のn個の負の整数を表わすn個の記号を用いることが追
加されているだけであって、数の表記方法は従来の(n
+1)進法に類似している。
【0014】小数点を基準として、小数点の左側を整数
部と言い、小数点のすぐ左の桁を整数第1桁という。整
数第1桁のすぐ左隣の桁が、整数第2桁である。又、小
数点の右側を小数部と言い、小数点のすぐ右隣の桁が小
数第1桁であり、小数第1桁のすぐ右隣の桁が小数第2
桁である。(2n+1)進法を用いて或る複数桁の数を
表記したとき、その数の示す値は、各記号の表わす値
(−n〜n)に整数第k桁には(2n+1)k-1を、小
数第j桁には(2n+1)-jをそれぞれ掛けて、表記さ
れている全部の桁についてそれらの和を求めることによ
って得られる。
【0015】整数部・小数部共に、小数点から遠ざかる
方向に或る桁から先、零を表わす記号以外の記号が出現
しないとき、整数第1桁以外の前記或る桁から先にあ
る、零を表わす記号を省略してもよい。
【0016】又、或る数を表記したとき、整数部のみか
らなるときには、小数点と小数部を省略する。然しなが
ら、別の或る数を表記したとき、小数部のみからなると
きには、小数点の存在を明示するために、整数部は整数
第1桁に零を表わす記号のみを書き、小数点と小数部と
を書く。
【0017】小数部がある桁数を周期として循環する循
環小数のとき、1周期の始点と終点の桁の記号の上に循
環節を表わす点を記入し、終点よりも右の桁を省略す
る。始点と終点が同じ桁のとき、即ち循環節が1桁のみ
のときには、循環節を表わす点は、1個所のみに書く。
【0018】(2n+1)進法では、全部の桁が零を表
わす記号・信号又はそれらを省略したものであるときに
は、その値は零であり、零以外の記号・信号が含まれて
いるときには、それらの記号・信号の内、最も上位の桁
(以下、これを正負の符号を表わす桁と言う)の記号・
信号が、正を表わすn個の記号・信号の内の1つである
ときには、その数は正であり、負を表わすn個の記号・
信号の内の1つであるときには、その数は負である。
【0019】
【作用】請求項1記載の発明の演算処理装置は、1〜n
のn個の正の整数を表わすn個の信号と−1〜−nのn
個の負の整数を表わすn個の信号と零を表わす1個の信
号の合計(2n+1)個の信号の中から選ばれた1個の
信号でもって1桁の数を表わし、nは1以上の正の整数
である1桁乃至複数桁の(2n+1)進数を用いて演算
する、従来存在しなかった全く新しい演算方法の演算処
理装置を提供する。
【0020】また、これによって(2n+1)進法の表
記方法及び演算方法の特性を活用し得るので、演算精度
が向上し、計算速度も向上する。
【0021】請求項2記載の発明の電子計算機は、1〜
nのn個の正の整数を表わすn個の信号と−1〜−nの
n個の負の整数を表わすn個の信号と零を表わす1個の
信号の合計(2n+1)個の信号の中から選ばれた1個
の信号でもって1桁の数を表わし、nは1以上の正の整
数である1桁乃至複数桁の(2n+1)進数のデ−タを
記憶する記憶領域と、この記憶領域から読出した1個乃
至複数個の(2n+1)進数のデ−タを入力とし1個乃
至複数個の(2n+1)進数のデ−タを出力とする演算
処理部とを有し、前記(2n+1)進数のデ−タを取扱
うので、演算処理部と記憶領域との間で、データを複写
・移動させるときデータの表記方法を変える必要がな
く、(2n+1)進数のままで記憶できるので、処理速
度が向上し、数値の持っている精度も保持される。
【0022】請求項3記載の発明の電子計算機は、前記
演算処理部が、整数型データを取扱う整数演算部と、浮
動小数点型数値デ−タの仮数部を取扱う仮数演算部とか
ら成り、浮動小数点型数値デ−タの指数部は前記整数演
算部で処理するので、整数演算部で処理される整数型デ
ータと浮動小数点型数値データの指数部は右詰めされて
いて正負の符号を表わす桁よりも上位の桁は全部零であ
って計算の対象にする必要がなく、また、仮数演算部で
処理される浮動小数点型数値デ−タの仮数部は左詰めさ
れていて小数点位置が固定されているので、それぞれの
特性に合った処理をすることができる。
【0023】前記整数型データは、右詰めされていて正
負の符号を表わす桁よりも上位の桁は全部が零を表わす
信号であってこれを省略して記憶することができ、ま
た、前記浮動小数点型数値データの仮数部は、左詰めさ
れていて小数点位置が固定されているから、循環小数の
ときには循環節の終点の桁よりも下位の桁を、また、循
環小数でないときには有効数字の最も下位の桁よりも下
位の桁を、省略して記憶することができるので、記憶領
域を有効に無駄なく使うことができる。
【0024】
【実施例】以下、本件発明者が創出した(2n+1)進
法並びに(2n+1)進数について詳述し、更にこの発
明の演算処理装置及び電子計算機の実施例について説明
する。
【0025】(2n+1)進法とは、nを1以上の正の
整数とするとき、(1〜n)のn個の正の整数を表わす
n個の記号と、(−1〜−n)のn個の負の整数を表わ
すn個の記号と、零を表わす1個の記号の合計(2n+
1)個の記号の中から選ばれた1個の記号でもって1桁
の数を表わす1桁乃至複数桁の数の表記方法並びに演算
方法である。又、(2n+1)進法で表記された数を
(2n+1)進数と言う。従来の技術である十進法が、
nを9としたときの、(1〜9)の9個の正の整数を表
わす9個の記号(1〜9)と、零を表わす1個の記号
(0)の合計10個の記号を用いるのに対して、負を表
わすn個の記号を用いることが追加されているだけであ
って、その他の表記方法は類似している。或る複数桁の
数を表記したとき、その数の示す値は各記号の表わす値
(−n〜n)に、整数第k桁には(2n+1)k-1を、
小数第j桁には(2n+1)-jをそれぞれ掛けて、表記
されている全部の桁についてそれらの和を求めることに
よって得られる。(2n+1)進法では、表記されてい
る全部の桁が零を表わす記号またはそれらを省略したも
のであるときにはその値は零であり、零以外の記号が含
まれているときには、それらの記号のうち、最も左にあ
るもの(即ち、正負の符号を表わす桁の記号)が、正を
表わすn個の記号の内の1つであるときには、その数は
正であり、負を表わすn個の記号の内の1つであるとき
には、その数は負である。
【0026】以下、(2n+1)進法の事例として、n
が1のときの3進法を事例1、nが4のときの9進法を
事例2、nが13のときの27進法を事例3として示
す。nはこれらの値に限られることはなく、正の整数で
あれば良い。即ち、(2n+1)は正の3以上の奇数で
あれば良く、組合わせは、無限に考えられる。
【0027】図1に、事例1、事例2、事例3で用いる
記号を示す。1桁の記号として1文字でなければならな
いことはない。例えば、従来の技術である時間・角度の
分秒に使われる60進法では零は00、1は01、2は
02、・・・・・、59は59と、1桁の記号に2つの
数字を組合わせて用いている。例えば、nが4の9進法
のとき、零を表わす記号を±0、(1〜4)の正の整数
を表わす記号をそれぞれ+1、+2、+3、+4、(−
1〜−4)の負の整数を表わす記号をそれぞれ−1、−
2、−3、−4として、これら2文字ずつが1桁の数を
表わす記号であってもよい。
【0028】図1に示すごとく、ここではすべて1桁に
は1文字を当てはめた。即ち、事例1の3進法(a)で
は、正の1を表わす記号をY、負の−1を表わす記号を
W、零を表わす記号をxとする。事例2の9進法(b)
では、零と正の整数(1〜4)を表わす記号は十進法と
同じもの(0〜4)を用いて、又、(−1〜−4)の負
の整数を表わす記号には、絶対値の等しい正の整数を表
わす数字を丸で囲った記号(〜)を用いる。事例3
の27進法(c)では、零を表わす記号をφ、正の整数
(1〜13)を表わす記号を英字の(A〜M)、負の整
数(−1〜−13)を表わす記号を英字の(Z〜N)と
する。
【0029】図2は、これらを用いて十進数の(−20
〜20)の整数を表わしたときの表記例を2の補数を用
いた2進数の場合と対比して示す。(a)は事例1の3
進数、(b)は事例2の9進数、(c)は事例3の27
進数の場合であり、いずれも左側の零を表わす記号は省
略されている。又、この表に記載されている数はいずれ
も整数であって、小数点は省略されているが、いずれの
欄も一番右の桁のすぐ右に有ると見なしうる。この小数
点の位置を基準にして、事例1の3進数(a)を2桁ず
つに分けて、その2桁の値に相当する事例2の9進法の
記号を当てはめると、9進法表記の数(b)になる。同
様に、小数点の位置を基準にして、事例1の3進数
(a)を3桁ずつに分けて、その3桁の値に相当する事
例3の27進法の記号を当てはめると、27進法表記の
数(c)になる。
【0030】これと逆に、事例2の9進法で表記されて
いる数(b)を事例1の3進法の表記(a)にするに
は、9進数の各桁の1文字ずつを3進法の該当する2桁
に置換えれば良い。同様に、事例3の27進法で表記さ
れている数(c)を事例1の3進法の表記(a)にする
には、27進数の各桁の1文字ずつを3進法の該当する
3桁に置換えれば良い。
【0031】十進法で負の数を表記するには、絶対値が
等しい正の数の左に負を表わす記号(−)を付ける。こ
れに対して(2n+1)進法では、各桁の記号の内、零
を表わす記号以外の全部の記号を、絶対値が等しく符号
の異なる対の記号の他方のものに置換えることによって
得られる。即ち、事例1の3進法(a)の場合、YとW
を入れ換える。事例2の9進法(b)の場合、1と、
2と、3と、4とを入れ換える。事例3の27進
法(c)の場合、AとZ、BとY、・・・・・、MとN
を入れ換える。
【0032】図2には、同じ数を2の補数で表わした2
進法表記(d)も示す。全部の桁が0のときにはその数
が零であり、いずれかの桁に少なくとも1つの1がある
場合、一番左の桁が0のときにはその数は正であり、一
番左の桁が1のときにはその数は負である。負の数は左
側が1で満たされているので、十進数や(2n+1)進
数のようには、左側の零を表わす記号を省略することが
できず、当然計算のときにも省略することができないた
め、その分だけ計算時間も掛ることになる。図2(d)
には、8桁の2進数を示しているが、もっと絶対値の大
きい値を取扱いうるように桁数を多くした場合、左側の
桁を省略できないデメリットは大きい。
【0033】このように表記方法は、従来の技術である
十進法と(2n+1)進法では大差ないように見える
が、本質は大きく異なる。
【0034】例えば、十進数の54.27(どんな値で
も良い)に使われている記号は、その記号自体が値を表
わし、それが使われている場所(桁)によって、掛ける
べき十の羃乗が決められる。ところで、その記号の表わ
す値は、丁度その値を示すだけでなく、その右側に続く
記号が表わすであろう範囲をも示している。この例で
は、5は(5以上6未満)の範囲を、4は(4以上5未
満)の範囲を、可能性として持っている。これを図3に
示す。
【0035】図3(a)の十進法の表示では、負の数
は、その絶対値に負を表わす記号を付けるので、その右
側に続く記号が表わすであろう範囲も、正の場合と負の
場合で異なり、0を中心として対象の広がりになる。負
の数を表わす記号列の中に使われた時、2は(−3超−
2以下)の範囲を、3は(−4超−3以下)の範囲を可
能性として持っている。尚、零が負の数の中で使われた
とき、右端の黒丸は−50.0のような使われ方の時を
示す。
【0036】図3(b)の2進法では、十進法のごとく
正と負とで、その右側に続く記号が表わすであろう範囲
が異なる煩わしさを避けるために2の補数を用いる場合
が多い。そのため、図3(b)に示すように各記号(0
と1)が、正の数の中で使われた時と、負の数の中で使
われた時とで、その右側に続く記号が表わすであろう範
囲が異なることはない。然しながら、有限の桁数で表示
することの出来る値全体で見ると、その範囲の両端が異
なっている。例えば、8桁で表わしうる整数の範囲は、
−128〜127であり、16桁で表わしうる整数の範
囲は、−32768〜32767である。
【0037】従来の技術では、記号の持つ値を起点とし
て、一方向にのみ広がる範囲であった。即ち、4では4
以上、2では2以上のように。これはなにも十進法に限
ったことではなく、2進法においても、また60進法に
おいても同様である。
【0038】ところが、本件発明者が創出した(2n+
1)進法では、図4に示すように、その範囲は、記号の
持つ値を中心として、両側に広がる。それは正と負を全
く同様に取扱い得るためである。その結果、事例1の3
進法(a)では、Yは1を中心として両側に1/2ずつ
を、xは零を中心として両側に1/2ずつを、Wは−1
を中心として両側に1/2ずつをその範囲とする。そし
てその範囲の両端は、循環小数表示を用いて無限桁の表
示まで可能にすると両端は黒丸になり、循環小数を用い
ない有限桁の表示(b)であれば白丸になる。両端黒丸
になる場合、
【0039】
【数1】 は共に同じ1/2を表わすことになる。循環小数を用い
ない場合、有限の桁数で表示できる数は、数直線の上で
は不連続になり、表わせる数と表わせない数がある。こ
れがたまたま1/2の倍数に重なっただけであり、境界
となる1/2の倍数は近似値で以って表示するしかな
い。同様に事例2の9進法について循環小数表示を用い
る場合を、図4(c)に示す。各記号と、その右側に続
く記号が表わすであろう範囲は、その記号が持つ値を中
心として、両側に1/2ずつ広がっている。これは、小
数の最大値が(1/2)、小数の最小値が(−1/2)
であることに基き、すべての(2n+1)進法に共通に
言えることである。それをここで証明する。
【0040】零を表わす記号をφ、nを表わす記号を
α、−nを表わす記号をβ、1を表わす記号をγとす
る。
【0041】
【数2】 ここでは便宜上、小数点を基準にして計算したが、この
ことは、その他のすべての桁に当てはめることができ、
しかもnの値に関係なく成り立つ。それ故、(2n+
1)進法においては、数を表わす記号列の途中でそれよ
りも小さい桁の部分を切捨てて丸めた場合、元の値との
差の絶対値は、切捨てた後の最小桁の表わす値の1/2
以下である。循環小数を用いると、その境界では、
【0042】
【数3】 が成り立ち、これの小数点以下を丸めて、近似値を求め
る場合、φとすべきか、γとすべきか、迷うところであ
る。このような場合、計算の途中では循環小数をそのま
ま用いて、計算結果を印刷などの出力にするとき、この
ような循環小数が残っていればそれをその目的に合せて
丸めれば良い。こうすることによって、演算の都度、演
算結果を丸めて近似値を出す場合にくらべて、集積誤差
を減らすことができる。
【0043】次に、(2n+1)進法の四則演算につい
て述べる。筆算の方法は、従来技術である十進法の筆算
に類似しているが、個々の記号の表わす値が、正のとき
と負のときがあり、これらが混在していることに着目す
る必要がある。
【0044】加算 (被加数)+(加数)=(和) は、交換の法則、即ち被加数と加数を入れ換えてもよ
い。又、小数点の位置を合せて、下位の桁(右側)か
ら、桁ごとに足し算を行ない、その桁の値と桁上がりを
求め、逐次上位(左側)の桁に移って行く。図5に事例
1の3進法の加算のときの桁ごとの演算の入力と出力の
関係を示す。被加数と加数の一方を入力A(21)、他
方を入力B(22)として、この図を見る。最小桁(最
も右側の桁)にあっては、桁上がり入力はないので、桁
上がり(23)は零を表わす記号xの欄(24)を見
る。入力A(21)と入力B(22)が共に記号xのと
き、出力は記号x(25)である。入力A(21)が記
号x、入力B(22)が記号Wのとき、出力は記号W
(26)である。又、入力A(21)、入力B(22)
共に記号Yのとき、出力は2桁の記号YW(27)であ
る。出力の右側の桁は、その桁の和を表わし、左側の桁
は桁上がり出力を表わす。桁上がり出力が零の場合、こ
れを省略して記載しているので、出力が1桁のみの欄は
桁上がり出力が記号xであると読取れる。次に、すぐ左
の桁に移って演算する。下位(右側)の桁からの桁上が
りが有るので、桁上がり(23)と、入力A(21)、
入力B(22)の組合わせで出力の欄を特定し、その桁
の和と桁上がり出力を得る。順次上位(左側)の桁の演
算を行ない、被加数・加数共に、零を表わす記号以外の
記号が、その桁よりも左に出現しなくなって、且つ、桁
上がりの出力も零を表わす記号xになったとき、演算を
終了する。
【0045】事例2の9進法の加算の入出力の関係を図
7に示す。紙面の都合で図5とは、配置が異なるが、同
様の見方をすることができる。図5及び図7を見てわか
るように、(2n+1)進法では1桁の数を表記するの
に、n個の正の記号と、n個の負の記号と、零を表わす
1個の記号の合計(2n+1)個の記号の中から選ばれ
た1個の記号を用いるので、1桁の加算を行なうと、正
と負で相殺する場合が多く、従来の技術である十進法や
2進法の演算にくらべて、桁上がりの頻度が少ない。
【0046】減算 (被減数)−(減数)=(差) の演算は、前記の方法によって減数の符号を正負反転し
て、加算を実行する。
【0047】乗算 (被乗数)×(乗数)=(積) の演算も交換の法則によって、被乗数と乗数を入れ換え
て演算してもよい。事例1の3進法の桁ごとの乗算の入
出力の関係を図6に示す。事例2の9進法の桁ごとの乗
算の入出力の関係を図8に示す。図8に示されるごと
く、事例2の9進法の乗算では、桁上がりが有り、それ
も1、だけでなく2、も含まれる。これに対して、
事例1の3進法の乗算では、図6に示されるように、桁
上がりが無く、計算が容易である。これは、3進法の1
桁に使われる記号が、正の整数1を表わす記号Yと、負
の整数−1を表わす記号Wと、零を表わす記号xで表記
されていることから当然と言えば当然である。
【0048】事例1の3進法の乗算の筆算の例を図9に
示す。乗数の1桁を取出して、その桁の記号の表わす値
と位取りの零を表わす記号を一緒に被乗数に掛けたもの
を書き出して、それらの和を求める。従来の技術である
十進法の筆算と類似の書き方であり、位取りの零を表わ
す記号も、途中の段階ではしばしば省略される。乗数の
1桁を取出したとき、それが零を表わす記号xの場合、
積も零になるので記述を省略することも、十進法の場合
と同様である。乗数から取出した1桁が、記号Yのとき
にはその値は(+1)であるから、被乗数をそのまま、
又、記号Wのときにはその値は(−1)であるから被乗
数の正負の符号を反転して桁位置を合せて書き出す。
【0049】乗算の具体的な例として、図9の(f)を
用いて説明する。被乗数は、YWYxWYWxx(3
1)であり、乗数は、YxW(32)である。被乗数の
右端の2桁のxxは、位取りの零を表わす記号として、
途中の段階では記述を省略する。乗数(32)の整数第
1桁の記号Wと、被乗数を掛けたものとして、被乗数の
正負の符号を反転した中間値(33)WYWxYWYを
書き出す。乗数(32)の整数第2桁は、零を表わす記
号xなので、これを被乗数に掛けた中間値の記述を省略
する。乗数(32)の整数第3桁は記号Yなので、被乗
数から位取りの零を表わす記号を除いた中間値(34)
YWYxWYWをそのまま記述する。中間値(33)と
中間値(34)を足しあわせて、位取りの零を表わす記
号xxを補うと、積(35)が求まる。
【0050】乗数の零を表わす記号以外の記号が、3個
以上の場合、その個数と同じ個数の中間値が得られ、そ
の中間値全部を加算して積が求められる。例えば、図9
の(c)の中間値(36)WxY、中間値(37)Wx
Y、中間値(38)YxWの如く、これらを全部書き出
してまとめて足し算を行なってもよいし、算盤を使うと
きのように、中間値(36)と中間値(37)の足し算
を行ない、次にこれに中間値(38)を足し込む方法で
も良い。
【0051】図9全体は、階乗の計算の過程を示す図で
あり、この計算結果をまとめると、図10になる。事例
1の3進法による表記(a)、事例2の9進法による表
記(b)、事例3の27進法による表記(c)を、十進
法の表記(e)と対比してある。この場合、いずれも正
の値であり、(2n+1)進法では正負の符号を表わす
記号は、いずれも正を表わす記号の内の1つである。
【0052】除算 (被除数)÷(除数)=(商) の場合、従来の技術である十進法とは、やや異なる。被
除数と除数の関係から、商の1桁ずつを求めるのは同じ
であるが、違いは求められた1桁の記号の持っている意
味が、図3と、図4に示すごとく異なることによる。従
来の技術である十進法では、商の1桁として求める値は
剰余が負とならない最大のものであり、これを上位(左
側)の桁から順に探すことで商が得られる。これに対し
て、(2n+1)進法では、剰余は正の場合もあり、負
の場合もある。そして、各記号の表わす値の範囲は、1
/2の倍数が境界になる。
【0053】(2n+1)進法の除算の具体的な例とし
て、事例1の3進法の除算の筆算の例を、図11及び図
12に示す。図11の(c)を用いて、除算の方法を詳
述する。被除数はYYWWx(41)、除数はYWx
(42)である。各記号の表わす値の範囲が、1/2の
倍数であることに着目して、1/2の倍数が探し易いよ
うに、被除数を2倍しておく。被除数と同じ値(43)
を被除数(41)に加算して最初の剰余(44)とす
る。商の1桁ずつを求めるのであるが、その1桁は、前
述のごとく正の場合もあり、負の場合もある。剰余(4
4)と除数(42)の正負の符号が同じとき、商の1桁
は正の1を表わす記号Yになり、剰余(44)と除数
(42)の正負の符号が異なるとき、商の1桁は負の−
1を表わす記号Wになる。このようにして求めた1桁の
記号Y(45)と除数(42)の積を剰余(44)から
引いたとき、その差(47)の符号が、剰余と同じにな
る最も左の桁にこれを書く。この筆算の場合、減算を行
なう代わりに正負の符号を反転して加算を行なう方法を
採用する。商の1桁の記号Y(45)と除数(42)の
積を符号反転してWYx(46)を書き、これと剰余
(44)との和(47)を求める。尚、和(47)は、
この場合正確には、xxYxYxであるが、必要な桁の
みを記述して、下位の桁を省略してある。ここで、この
和(47)と剰余(44)の正負の符号が同じであるこ
とを確認する。最初に被除数を2倍してあるので、ここ
で(46)と同じもの(48)を書いて同じく加算する
と、2番目の剰余(49)が求められる。この2番目の
剰余(49)に対して、前の剰余(44)に行なったと
同じ操作を行なう。この2番目の剰余(49)の正負の
符号は負であり、除数(42)の正負の符号とは異なる
ので、商の1桁は負の−1を表わす記号W(50)にな
る。この記号W(50)と除数(42)の積を符号反転
する。即ち、除数(42)と同じYWx(51)を書き
出し、これと2番目の剰余(49)との和(52)を求
めて、和(52)と2番目の剰余(49)の正負の符号
が同じであることを確認する。ここで(51)と同じも
の(53)を書いて同じく加算すると、3番目の剰余
(54)が求められる。この操作を繰り返して、剰余
(55)の全部の桁が零を表わす記号xになったとき、
割り切れたことを意味するので、必要に応じて位取りの
零を表わす記号xを補正して計算は終了する。
【0054】割り切れないとき、演算の余りを求めるに
は、最初に被除数を2倍してあるので、最後の剰余を
(1/2)倍しなければならない。
【0055】被除数が正の整数1のとき、得られた商を
除数の逆数という。事例1の3進法で逆数を計算する筆
算の例として、図13に正の整数(2〜8)の逆数演算
を示す。除数が3の羃乗の場合、図13の(b)に示す
ごとく割り切れて、逆数もまた3の羃乗になるが、その
他の整数の逆数はいずれも循環小数になる。
【0056】図13の(c)を用いて逆数演算の筆算の
方法を詳述する。被除数はY.xxx(61)、除数は
YY(62)である。除数(62)は整数であり小数点
は省略されているが、これを書くとすると、YY.にな
る。計算の途中では、小数点の記述を省略して演算し、
求めた商の各桁を表わす記号の並びに整数第1桁と位取
りの零を表わす記号xを必要に応じて補い、小数点を記
述する。図11に示した除算の例と同様に、被除数(6
1)と同じ値(63)を被除数に加算して最初の剰余
(64)とする。剰余(64)と除数(62)の正負の
符号が同じであるから商の1桁は正の1を表わす記号Y
(65)であり、これの桁位置を探し出して、2番目の
剰余(66)を得る。同様に商の1桁のW(67)と3
番目の剰余(68)を得る。この3番目の剰余(68)
は、最初の剰余(64)を2桁右に桁移動したものと同
じであり、商の次の1桁のY(69)も前記商の1桁の
Y(65)を2桁右に桁移動したものと同じになる。こ
のように最初の剰余を桁移動したものと同じ剰余になっ
たとき、以後演算を継続すると、商の各桁も、同じ桁数
分だけ桁移動したものと同じになり、その結果同じ桁数
を周期としての繰り返しとなる。この例の場合、商は2
桁を周期として、循環節YWの組合わせを繰り返すこと
になる。即ち、循環小数の始点がY(65)、終点がW
(67)、周期が2桁、即ち、循環節の桁数は2であ
り、これに小数点と、整数第1桁の零を表わす記号xと
循環小数を表わす点を始点のY(65)と終点のW(6
7)の上部に補って、商
【0057】
【数4】 を得る。
【0058】このようにして求めた整数(2〜27)の
逆数を図14に示す。事例1の3進数(a)の場合、同
じ図14に対比して示す十進数(e)の場合に比べて、
循環小数の出現する頻度が多い。循環小数は、有限の桁
数の記号の列を記憶し、演算に用いるだけで、無限の桁
数の演算を行なったのと同じ精度の演算結果が得られ
る。尚、同図中に示す「3進数の循環節の桁数」(f)
が0の項は、逆数演算で割り切れたことを示す。
【0059】被除数が1でない、即ち、逆数演算でなく
通常の除算では、剰余が以前に出現した剰余と同じかど
うかを判定するのは困難である。それ故、通常の除算の
場合、除数の逆数を求めて、これに被除数を掛ける手順
を取れば、循環小数を有効に利用して、有限の桁数の演
算で無限桁の精度の計算を行なうことができる。
【0060】科学技術計算などでは、浮動小数点表示デ
−タが使われる。即ち1つの数を小数点を含む仮数部
と、整数のみからなる指数部に分割して記憶し、演算に
用いる。(2n+1)進法においても、この浮動小数点
表示のデ−タを用いることができる。指数部の整数値が
表わす(2n+1)の羃乗と、仮数部の積が元の値と一
致するように小数点位置を定めれば良いので、小数点位
置を1桁動かすのに従って、指数部の整数を1だけ加え
るか減ずればよく、その組合わせは幾通りも許される。
しかしながら、通常は浮動小数点表示のメリットを活用
するために、仮数部は有効数字のみからなり、しかも小
数点位置も一定の位置に固定しておけば、その都度小数
点位置を明示する必要がなく、演算処理も容易になる。
【0061】ここでは、(2n+1)進法の浮動小数点
表示デ−タの仮数部は、正負の符号を表わす記号の1桁
のみを整数部とし、それよりも小さい桁は全部小数部に
含まれるようにする(これを浮動小数点表示の正規化と
言う)。これによって、仮数部の最大の桁、即ち仮数部
の整数部の桁が、零を表わす記号のときには、その数は
零である。又、整数部の桁の記号が、(1〜n)のn個
の正の整数を表わす記号の内の1つであれば、その数は
正であり、仮数部は(1/2)〜(2n+1+1/2)
の範囲の値になる。整数部の桁の記号が、(−1〜−
n)のn個の負の整数を表わす記号の内の1つであれ
ば、その数は負であり、仮数部は−(1/2)〜−(2
n+1+1/2)の範囲の値になる。この浮動小数点表
示の仮数部において、循環小数の始点の桁位置と終点の
桁位置を仮数部の記号列と共に取扱うことによって、記
憶するときの桁数を圧縮し、演算するときにも少ない桁
数でもって無限の桁数を演算したのと同じ精度が得られ
る。
【0062】次に、(2n+1)進法の事例1の3進法
の平方根を、筆算で求める方法を示す。図15(a)
は、√2の演算の過程を示す図であり、十進法の場合と
類似しているので、ここでは理論的説明は省略して、過
程のみを示す。先ず、平方根を求める元の値(71)を
書く。小数点を基準に2桁ずつに分割し、元の値(7
1)2桁について平方根1桁を求める。元の値(71)
の整数部YWの平方根の近似値として、Y(72)を書
き、この近似値と同じ値Y(73)を左側に同じもの2
個を2段に書き、これらの和を計算して、近似値の2倍
の値YW(74)を得る。一方、近似値の二乗を元の値
から引く代わりに、近似値のY(72)の二乗の正負の
符号を反転して得たW(75)を元の値YW(71)に
加算して、第1の近似残余Y(76)を得る。近似値の
次の桁のY(77)を求めて、この近似値の1桁と同じ
値のY(78)を近似値の2倍の値YW(74)に並べ
て書き、これに今回の近似値の1桁Yを足して、第2の
近似値の2倍YxW(79)を求め、一方YW(74)
とY(78)を並べて書いたYWYに今回の近似値の1
桁Y(77)を掛けて正負の符号を反転したWYW(8
0)を第1の近似残余に加算して第2の近似残余YW
(81)を得る。尚、求めるべき近似値の1桁は、近似
残余(76)(81)等と近似値の2倍の値(74)
(79)等の正負の符号が同じときには正の整数1を表
わす記号Yになり、異なるときには負の整数−1を表わ
す記号Wになる。これを上記の方法によって、前の近似
残余の正負の符号を表わす記号の桁位置よりも次の近似
残余の正負の符号を表わす記号の桁位置が右側の桁に移
動するように、順次桁を移動しながら求めて行けば、元
の値(71)の平方根の近似値(82)が得られる。
【0063】前述のごとく、(2n+1)進法は、正の
数と負の数を全く対等に扱う。平方根を求める元の値
(71)は正でなければならないが、求める平方根は、
正と負と両方が求められる筈である。それ故、図15
(a)の整数部の近似値(72)をWとしてみると、同
様の方法で、図15(a)で求められた平方根の正負の
符号を反転した値W.WWYWYYxx・・・・・が得
られる。
【0064】図15(b)に同図(a)で求めた平方根
の検算例を示す。ここでは、算盤を用いて加算をする要
領で行なう筆算の方法を示す。先ず、平方根の近似値
(82)に、その第1の桁(72)を掛けて、第1の検
算値(83)を得る。次に、平方根の近似値(82)に
第2の桁(77)を掛けて得た値(84)を第1の検算
値(83)に足して第2の検算値(85)を得る。これ
を順次右の桁に移動しながら続けると、検算値は元の値
(71)に近付いていく様子がわかる。尚、図中の縦線
(86)は、この検算で用いた平方根の近似値(82)
の有効数字の桁の範囲を示しており、最下段では、この
範囲まで検算値が正しく求められている様子がわかる。
【0065】次に、図15の(a)で求めた√2の近似
値(82)を限られた桁数の範囲で検算したときの検算
値がどのようになるかを、図16乃至図18に示す。図
15の(b)と同様、算盤を用いて加算する要領であ
り、図16の(a)は4桁の算盤、同図(b)は5桁の
算盤、・・・・を用いて加算を行なったときを示す。こ
れらの図からわかるように、4桁の算盤を用いる場合、
√2の近似値は、Y.YYである。3進法で表記した
Y.YYを十進数に換算すると、
【0066】
【数5】 である。又、5桁の算盤を用いる場合の√2の近似値
は、Y.YYWであり、これを十進数に換算すると、
【0067】
【数6】 であり、十進法にくらべて、(2n+1)進法の演算精
度が、いかに優れているかがわかる。図18の(b)に
示す25桁の場合、√2の近似値(82)の全部の桁を
使った例であり、これ以下の桁数の場合、√2の近似値
(82)の右方の桁を切捨てて演算したことになる。こ
の場合、検算値の誤差は最大でも末尾2桁以下である。
それに対して、図18の(c)(d)(e)は、√2の
近似値(82)よりも算盤の桁数が多かった場合であ
り、いくら算盤の桁数が多くても、演算に使う値の桁数
が少ないと、それ以上の部分は全部が誤差になることを
示しており、循環小数が使える場合、循環小数によって
無限の桁まで表示できることがいかに有意義かがわか
る。
【0068】一般に平方根を求めるとき、2桁ずつ桁移
動して小数点を演算し易い位置に持って行って計算し、
その後小数点位置を修正して正しい平方根を求める方法
が使われる。(2n+1)進法でも同様のことが言え
る。事例1の3進法では、最初の桁、即ち図15(a)
の例ではY(72)の桁位置を定めるのが困難なときが
ある。これには次に示す方法による。整数部が1桁のY
のときの最大値は
【0069】
【数7】 であり、これの二乗は
【0070】
【数8】 であり、これを十進数に換算すると、1.5とその二乗
の2.25になる。又、整数部が1桁のYのときの最小
値は
【0071】
【数9】 であり、これの二乗は
【0072】
【数10】 であり、これを十進数に換算すると、0.5とその二乗
の0.25になる。故に、平方根を求める元の値が、
【0073】
【数11】 の間の値であれば、平方根の第1近似値としてY.が得
られる。それ故、元の値を浮動小数点表示したときの指
数部が偶数で且つ仮数部が上記範囲の値になるように桁
移動し(このことを平方根演算の正規化という)、仮数
部の平方根を算出し、指数部は1/2倍すれば、元の値
の平方根が求められる。
【0074】次に、添付図面に基き、この発明の実施例
を詳細に説明する。
【0075】図19乃至図21はこの発明の第一の実施
例を示す3進法の演算処理装置の演算回路図、図22は
この発明の第二の実施例の電子計算機の概略構成図、図
23はこの発明の第三の実施例の電子計算機の概略構成
図である。
【0076】図19に示す、第一の実施例の演算処理装
置は、第1桁演算回路(1)、第2桁演算回路(2)、
第3桁演算回路(3)、・・・第N桁演算回路(N)を
有し、入力Aの信号と入力Bの信号を用いて演算し、演
算結果を出力の信号にする。第1桁演算回路(1)は、
図20のように構成され、最下位の桁の演算を行なう回
路であって、より下位の桁からの桁上がりを入力するこ
とはない。入力Aの第1桁(最下位の桁)の信号A1に
よって駆動電源1からの接続を切換える切換えスイッチ
1(101)と、入力Bの第1桁(最下位の桁)の信号
B1によって駆動電源2への接続を切換える切換えスイ
ッチ2(102)を有する。切換えスイッチ1(10
1)と切換えスイッチ2(102)が、それぞれ入力信
号A1と入力信号B1によって、切換わることによっ
て、各交点に用意されている9個の演算素子(103)
aibj(i=1〜3、j=1〜3)のうちの1つが選
択され、駆動電源1と駆動電源2の電位差によって作動
する。この実施例で駆動電源1は5Vであり、駆動電源
2は0Vであるが、この電圧は、後述の駆動素子(10
4)が、作動する電圧であれば、他の電圧に変えてもよ
い。
【0077】この9個の演算素子(103)の回路の重
複する部分を省略して図21に示す。切換えスイッチ1
(101)は、3進法の記号、即ち正の整数1を表わす
記号Y、負の整数−1を表わす記号W、零を表わす記号
xそれぞれに対応して、正の整数1を表わす基準電源Y
と同じ電圧の信号、負の整数−1を表わす基準電源Wと
同じ電圧の信号、零を表わす基準電源xと同じ電圧の信
号のいずれかが、入力信号A1として与えられたとき、
その信号の電圧によって、a1、a2、a3のいずれか
1つの接点が閉じ、残る2つの接点が開くようになって
いる。これと同様に、切換えスイッチ2(102)は、
3進法の記号に対応して、正の整数1を表わす基準電源
Yと同じ電圧の信号、負の整数−1を表わす基準電源W
と同じ電圧の信号、零を表わす基準電源xと同じ電圧の
信号のいずれかが、入力信号B1として与えられたと
き、その信号の電圧によって、b1、b2、b3のいず
れか1つの接点が閉じ、残る2つの接点が開くようにな
っている。図20及び図21に示す状態に切換えスイッ
チ1(101)と切換えスイッチ2(102)の接点が
なっているとき、駆動電源1と駆動電源2は、切換えス
イッチ1(101)によって選択された回路a1と切換
えスイッチ2(102)によって選択された回路b3を
介して演算素子(103)a1b3のみに接続される。
この実施例で、基準電源Yは10V、基準電源xは0
V、基準電源Wは5Vであるが、これをそれぞれ基準電
源Yは5V、基準電源xは0V、基準電源Wは−5Vな
ど他の電圧の組合わせにしても良い。
【0078】図21を用いて、演算素子(103)の作
動する様子を示す。切換えスイッチ1(101)の各接
点a1、a2、a3と、切換えスイッチ2(102)の
各接点b1、b2、b3の組合わせに対応する9個の交
点には、それぞれ駆動素子(104)があり、切換えス
イッチ1(101)と切換えスイッチ2(102)の組
合わせで9個の中から選択された1個の駆動素子(10
4)(図20、図21に示す状態に切換えスイッチがな
っているときにはa1b3の駆動素子)が、駆動電源1
と駆動電源2の電位差によって作動し、出力1への9個
の開閉スイッチ1(105)のうちa1b3の1個と、
桁上がりへの9個の開閉スイッチ2(106)のうちa
1b3の1個を開から閉にし、残りの各8個は開のまま
で変えない。一方、出力1への9個の開閉スイッチ1
(105)と、桁上がりへの9個の開閉スイッチ2(1
06)はそれぞれ9個の切換えスイッチ3(107)と
9個の切換えスイッチ4(108)を介して、基準電源
Y、基準電源x、基準電源Wに接続されている。この切
換えスイッチ3(107)と切換えスイッチ4(10
8)は、図示していない駆動方法によって演算の内容に
従って図5、図6に示す状態などに切換えられる。
【0079】即ち、演算内容例えば加算、減算、正負の
符号の反転、桁を左又は右に移動するなどに対応して、
又、桁上がりの信号のY、x、Wなどのあらゆる組合わ
せに対応して、切換えスイッチ3(107)と切換えス
イッチ4(108)を予め設定しておいた演算回路を用
意しておいて、前記演算内容や桁上がりの信号によって
選出した9個の演算素子(103)の中から、入力信号
Aの1桁と入力信号Bの1桁の組合わせによって、1個
の演算素子(103)を選定し、出力信号及び桁上がり
の信号を得るようにすると、高速の演算が行なえる。
尚、演算速度を犠牲にしてコスト低減を計るならば、前
記演算内容と桁上がりの入力信号によって、切換えスイ
ッチ3(107)と切換えスイッチ4(108)を図5
に示す状態にその都度切換えるようにしてもよい。演算
速度をもっと犠牲にして更にコスト低減を計るならば、
入力信号A(21)と入力信号B(22)、桁上がり
(23)の組合わせによって与えられた状態(25)
(26)(27)などに切換えられる1個の切換えスイ
ッチ3(107)と1個の切換えスイッチ4(108)
のみを有する回路にすることもできる。又、切換えスイ
ッチは1個のみで、切換えスイッチ3(107)相当の
出力信号を取出した後、切換えスイッチの設定を変え
て、切換えスイッチ4(108)相当の桁上がり信号を
取出すこともできる。
【0080】図21に示す回路で、切換えスイッチ3
(107)と切換えスイッチ4(108)が図に示すよ
うに設定されているとき、入力信号A1がa1、入力信
号B1がb1のときには、出力1は基準電源Wと同じ電
圧の信号になり、桁上がり1は基準電源Yと同じ電圧の
信号になる。
【0081】ここで得られた桁上がり1は、図19に示
すごとく入力A2、入力B2と共に第2桁演算回路
(2)に与えられ、出力2と桁上がり2が得られる。順
次、このようにして第N桁演算回路(N)から出力Nと
桁上がりNが得られるが、演算処理装置の桁数がN桁で
あり、この桁上がりNが基準電源xと同じ電圧でなく、
基準電源Y又は基準電源Wと同じ電圧のときには、演算
できない桁数に到達したものとして、桁あふれのエラ−
信号を発する。尚、図19には1桁ずつの演算回路
(1)(2)(3)・・・(N)をN個設けておいて、
入力Aの1桁と入力Bの1桁と1桁下位の桁の演算結果
による桁上がりを用いて演算し、その桁の出力と1桁上
位の桁への桁上がりを得る。然しながら、このように、
同時並行で処理するのでなく、演算回路は1桁分のみで
これを用いて桁上がりの順番に合せて第1桁から順次1
桁ずつタイミングを変えて演算するようにしても良い。
【0082】図19乃至図21は、動作原理をわかり易
くするために、切換えスイッチや、開閉スイッチを組込
んだ回路図を示したが、これらはトランジスタやスイッ
チング素子を用いてもよい。又、演算処理装置全体を1
つの集積回路(IC)にしても、又、高密度集積回路
(LSI)に組込んでも良い。
【0083】ここでは、第一の実施例として3進法の演
算処理装置を示したが、これと同様にして5進法の演算
処理装置も作ることができる。この場合、基準電源は
(−2〜2)の整数に対応してそれぞれ、例えば0V、
2.5V、5V、7.5V、10Vの5レベルとしてこ
れらの電圧と同じ電圧の信号によって切換わる切換えス
イッチのいずれもが5接点になり、図20に示す各交点
にある演算素子(103)の個数が25個必要になる。
このようにして、この第一の実施例は、(2n+1)進
法全般に対応する演算処理装置に適用できる。
【0084】図22は、第二の実施例の電子計算機の概
略構成図である。電子計算機の記憶領域(111)は、
その処理系が取扱うのに適した数を記憶するのに必要な
桁数分に分割されており、その各々の場所に番地(アド
レス)が、付けられている。1個の数を記憶するには、
その分割された場所の1個乃至複数個を使用する。従来
の電子計算機では、例えば2進法の8桁即ち8ビットを
1バイトとし、1個の数に1〜16バイトを使用してい
る。
【0085】この第二の実施例の電子計算機の記憶領域
(111)は、第一の実施例の演算処理装置と同様、3
進法の(−1〜1)の整数を表わす信号として、電圧を
0V、5V、10Vの3つのレベルの信号にして、6桁
分を1つの番地に格納し記憶する。この第二の実施例で
は、電圧レベルを用いて記憶しているが、これに限られ
ることはなく、磁気を使って、無磁化の状態、N→S、
S→Nの3レベルを用いても、又、光の偏向角を変えて
3レベルを記憶する等の方法を用いてもよい。この第二
の実施例の3進法6桁で表わしうる数は十進数の(−3
64〜364)であり、3進法12桁で表わしうる数は
十進数の(−265720〜265720)であり、後
者は2進法では約19ビットのデ−タ量に相当する。
【0086】この記憶領域(111)からデ−タを読出
すには、指定されたデータが記憶されている記憶領域
(111)の番地から、3進法12桁分のデータを一時
的に保存できる記憶領域取出し口(112)に、そのデ
ータを一旦複写してから、次に目的の場所に複写する。
これと逆に、この記憶領域(111)にデータを格納す
るには、3進法12桁分のデータを一時的に保存できる
記憶領域格納口(113)に一旦複写してから、次にこ
のデータを格納する記憶領域(111)の番地にそのデ
ータを複写する手順を取る。図22には、記憶領域(1
11)と演算処理部(114)との間でのデータの移動
の経路を示しているが、図示しない入出力機器と記憶領
域(111)との間でもデータの移動方法は類似してい
る。この演算処理部(114)には、2つの置数器即ち
置数器1(115)と置数器2(116)及び算盤の役
目をする1つの演算器(117)がある。
【0087】以下、データの移動の様子を逐次説明す
る。記憶領域(111)内の指定のデータが格納されて
いる番地とその次の番地にあるデータが、記憶領域取出
し口(112)に複写される。これによって、記憶領域
(111)にある指定のデータが消滅することはない。
次にこの記憶領域取出し口(112)のデータが置数器
1(115)又は置数器2(116)のいずれかに複写
される。このときにも、記憶領域取出し口(112)の
データが消滅することはない。記憶領域(111)内の
指定のデータが3進法6桁又は12桁のときには、これ
でデータの移動は終るが、もっと桁数が多い場合、記憶
領域(111)内の指定のデータが格納されている番地
の続きの番地から、上記と同様に記憶領域取出し口を経
て、置数器1(115)又は置数器2(116)に複写
される。このようにして、その数を表わすのに必要な桁
数分のデータが置数器1(115)又は置数器2(11
6)に複写される。
【0088】上記とは逆に、データを記憶領域(11
1)内の所定の番地に格納するとき、データは演算器
(117)又は置数器2(116)から3進法の12桁
分のデータが記憶領域格納口(113)に複写され、そ
のデータが3進法6桁分のときには記憶領域(111)
の所定の番地に、又、そのデータが3進法12桁のとき
には所定の番地と次の番地に複写される。そのデータが
3進法の12桁分よりも桁数が大きいときには、記憶領
域(111)内の番地を逐次変えながら前記動作を繰り
返して全部の桁のデータを記憶領域(111)内に複写
する。尚、通常、演算を行なうのに2つの数が必要なと
き、その一方は演算処理部(114)にある数が用いら
れ、他方は記憶領域(111)内から置数器1(11
5)又は置数器2(116)に複写して使用する。又、
演算結果は、演算処理部(114)内の置数器2(11
6)又は演算器(117)内にあり、そのデータを記憶
領域(111)に格納する命令を出したときにのみ、記
憶領域格納口(113)を経て、記憶領域(111)内
の所定の番地及びそれに続く番地に複写するようになっ
ている。
【0089】次に、図22を用いて、第二の実施例の電
子計算機における四則演算の要領を説明する。
【0090】加算:(被加数)+(加数)=(和) 被加数は演算器(117)にある数が使われる。加数を
記憶領域(111)から記憶領域取出し口(112)を
経て置数器1(115)に複写する。演算器(117)
の数に置数器1(115)の数を足し込む。和は演算器
(117)に置かれている。
【0091】減算:(被減数)−(減数)=(差) 加算と同様であるが、演算器(117)の数に置数器1
(115)の数を足し込むときに置数器1(115)の
数の正負の符号を反転して足し込むように演算する。差
は演算器(117)に置かれている。
【0092】乗算:(被乗数)×(乗数)=(積) 被乗数は、置数器1(115)にある数が使われる。乗
数を記憶領域(111)から記憶領域取出し口(11
2)を経て置数器2(116)に複写する。演算器(1
17)の全桁を零を表わす信号に置換える(このことを
クリヤすると言う)。置数器2(116)に置かれてい
る数から1桁ずつを取出して、その1桁の信号とその桁
位置によって求められた値を置数器1(115)の数に
掛けて演算器(117)の数に足し込む。置数器2(1
16)に置かれている数の全部の桁について足し込む操
作が終ったとき、乗算の演算は終了し、積は演算器(1
17)に置かれている。
【0093】除算:(被除数)÷(除数)=(商) 被除数は演算器(117)にある数が使われる。演算器
(117)にある数に同じ数を足し込んで2倍する。除
数を記憶領域(111)から記憶領域取出し口(11
2)を経て置数器1(115)に複写する。以後、前述
の筆算の除算と同じ要領で商を1桁ずつ求め、この商を
置数器2(116)に置く。
【0094】この第二の実施例では、デ―タの移動の様
子をわかり易く説明するために、図22に置数器1(1
15)、置数器2(1l6)と演算器(1l7)を別々
の機能を有するものとして示したが、これに限られるこ
とはなく、これらはいずれも3進法の1桁乃至複数桁の
数を記憶し、更に(l)桁ごとの加算を実行する機能、
(2)桁上がりの処理を実行する機能、(3)正負の符
号を反転する機能、(4)桁ごとに論理演算する機能、
(5)複数桁の信号を1桁ごとに個々の数を表わす信号
と見なして、これ等の和を求める機能、(6)上位方向
又は下位方向へ1桁乃至複数桁、桁移動する機能、
(7)上位方向又は下位方向へ桁移動し、それによって
消滅した信号を反対側の端から復活させてあたかも桁ご
とに回転しているように移動する機能、(8)零を表わ
す信号以外の信号が、上端又は下端の桁に出現するまで
桁移動する機能、(9)そのとき移動した桁数をカウン
トする機能、などの機能の全部又は―部を有するものを
複数個備えて、これらを使用目的に応じて使い分け、
又、演算器として多くの桁数が必要なときには、これら
の内のいくつかを連結して1つの演算器として使うよう
にしたものであってもよい。
【0095】この第二の実施例の電子計算機では、記憶
領域を3進法6桁を単位としてこれに1つの番地を割当
ててあるので、このデータを3進法表記のまま外部に取
出して見ることもできるがそうすると桁数ばかりが多く
なり、非常に見にくいものとなる。それ故、これを2桁
ごとに区切って9進法表記にすることも、又3桁ごとに
区切って27進法表記にして見るのにも都合が良い。
【0096】第二の実施例に示す電子計算機は、これを
独立したものとして、データの入力、十進数など日常使
用している数から3進数への変換、演算などを行なっ
て、3進数から十進数など日常使用している数への変
換、データの印刷・画面表示などの出力、数値制御(N
C)機械の制御、その他、通信などを行なうときにも、
全部の処理を3進数のみで行なってもよいが、従来の電
子計算機と組合せて、前記処理の内、一部のみを3進数
に置換えて処理するようにしても良い。
【0097】図23は、第三の実施例の電子計算機の概
略構成図であり、この電子計算機の記憶領域(111)
は、3進法6桁の大きさに区切られており、その区画ご
とに番号が付けられている。その番号のことを番地(ア
ドレス)と言い、記憶領域の1区画の大きさ、即ち3進
法6桁分の大きさをここでは1ワ−ドと言う。この記憶
領域(111)には、演算や情報処理に使われるデータ
が特定の形式の数値に置換えられた数値データを記憶す
るだけでなく、電子計算機が実行する命令群と、その命
令群の実行順序を変更する変更指令とからなるプログラ
ムも記憶されている。
【0098】この第三の実施例の電子計算機は、前記第
二の実施例と同様に、記憶領域(111)から読出した
データを3ワ−ド分の容量を持つ記憶領域取出し口(1
12)に一旦複写してから、次に目的の場所に複写す
る。この第三の実施例の電子計算機の演算処理部は、整
数値や文字列データと浮動小数点型数値データの指数部
を取扱う整数演算部(121)と、浮動小数点型数値デ
ータの仮数部を取扱う仮数演算部(131)とから成
る。各演算部は、前記第二の実施例の電子計算機と同様
に、整数演算部(121)には、置数器3(122)、
置数器4(123)と演算器2(124)があり、仮数
演算部(131)には、置数器5(132)、置数器6
(133)と演算器3(134)がある。又、各演算部
から記憶領域(111)へ格納するには、各演算部にあ
るデータを3ワ−ド分の容量を持つ記憶領域格納口(1
13)に一旦複写して、次に記憶領域(111)内のそ
のデータを格納するために割当てられた場所に複写す
る。
【0099】この第三の実施例の電子計算機では、記憶
領域(111)に記憶されている内容を書替えたり、内
容を読出す方法に、直接アドレス方式と、間接アドレス
方式の二通りがある。前記命令群の内容や、命令群の実
行順序を変更する変更指令の内容を書替えるときには、
直接アドレス方式によって記憶領域(111)のアドレ
スを直接指定して、その1ワ−ド及びそれに続く領域を
必要なワ−ド数だけ書替える。これに対して、前記数値
データは、図示していないデータ領域管理テ−ブルを利
用して間接アドレス方式で指定されたアドレスの1ワ−
ド及びそれに続く領域を必要なワ−ド数だけ書替えて格
納される。このデータ領域管理テ−ブルは、実行中のプ
ログラムの中で使われる変数の個数に相当するだけの大
きさが用意されており、その個々の変数に対応する所に
は、その変数の数値データを格納している記憶領域(1
11)のアドレスとその数値データに使われているワ−
ド数が記憶されている。
【0100】プログラムの実行に際して、データ領域管
理テ−ブルは、そのプログラムの中で使われる変数の個
数に相当する大きさの場所が割当てられているだけであ
って、何も書かれていない白紙の状態である。プログラ
ムの実行が開始されて数値データを格納するときに、記
憶領域(111)内の空いている領域の情報と、その数
値データが必要とするワ−ド数から適当な場所を見つけ
出してそのアドレスとワ−ド数をデータ領域管理テ−ブ
ルに書き、そのアドレスから始まる前記ワ−ド数分の領
域に数値データを書込む。尚、数値データを格納すると
き、その変数に割当てられたデータ領域管理テ−ブルの
アドレスが既に記入済みであって、ワ−ド数が今回の数
値データを格納するのに必要な大きさになっているとき
には、記憶領域(111)内に新たな場所を取るのでな
く、前回と同じ場所が使われる。このとき既に取られて
いるワ−ド数が、今回必要とするワ−ド数よりも小さい
ときには、前回の場所は放棄され、今回新たな場所が確
保され、データ領域管理テ−ブルが書き改められる。こ
のようにすると、必要となるであろうワ−ド数のわかっ
ている数値データに対しては、予めそのワ−ド数分の領
域を初期値設定で確保しておくと、何度も領域を取り直
さなくてもよい。又、予めその大きさがわかっていない
数値データを格納する変数に対しては、必要以上に大き
な場所を用意しておくことはなく、その数値データの値
によって必要なだけの大きさの領域を使用することで記
憶領域(111)を有効に利用できる。
【0101】この第三の実施例の電子計算機で取扱う数
値データには、整数型数値データと浮動小数点型数値デ
ータの二種類があり、いずれもその数値データが必要と
するワ−ド数分の領域に格納される可変長になってい
る。浮動小数点型数値データは、仮数型データ構造(1
50)の仮数部と、整数値や文字列データを格納するた
めの整数型データ構造(140)と同じデータ構造の指
数部で構成されている。
【0102】図24に示す前記整数型データ構造(14
0)は、3進法3桁の有効桁数(141)と整数値の下
位3桁(142)が指定のアドレスに格納される。有効
桁数(141)は、正の整数値であって負や零になるこ
とはない。それ故、3桁の3進数で表わし得る最大の範
囲は、十進数に換算すると(1〜27)なので、これか
ら十進数の14を引いた値(−13〜13)を有効桁数
(141)の3進法3桁に書く。この有効桁数(14
1)の示す値が、−10以上のとき、即ち、実際の桁数
が4以上のとき、1ワ−ドのみでは格納できないので、
このアドレスに続く領域(143、144、145な
ど)が必要なワ−ド数分だけ使われる。即ち、このアド
レスの次の番地には整数値の第4桁から第9桁が、更に
その次の番地には第10桁から第15桁までが格納され
る。図24の(142、143、144、145など)
に記入されている(1〜27)の数字はこの桁番号を示
す。このようにして、整数型データ構造(140)に使
われるワ−ド数は1ワ−ドから最大で5ワ−ドであり、
1ワ−ド(141、142)のときに記憶できる変数の
値は十進数の(−13〜13)であり、2ワ−ド(14
1、142、143)のときには十進数の(−9841
〜9841)であり、3ワ−ド(141、142、14
3、144)のときには十進数の(−7174453〜
7174453)を変数の値として記憶できる。尚、整
数型数値データの値が零のときには、有効桁数(14
1)は1桁を表わすWWWであり、これを十進数に換算
すると(−13)になり、整数値の下位3桁(142)
はxxxとする。
【0103】前記浮動小数点型数値データは、浮動小数
点表示の正規化された仮数部と指数部とから成るが、記
憶領域(111)に格納されるときには、指数部の値を
格納する整数型データ構造(140)と仮数部の値を格
納する仮数型データ構造(150)の両者でもって1つ
の数を表わす。整数型データ構造(140)は、前述の
図24を用いて説明したものと同じであり、このアドレ
スが、データ領域管理テ−ブルに書かれる。然しながら
データ領域管理テ−ブルに書かれるワ−ド数は、この整
数型データ構造(140)に使われるワ−ド数のみでな
く、後述の仮数型データ構造(150)に使われるワ−
ド数との和が書かれる。
【0104】図25に仮数型データ構造(150)を示
す。前記指数部の値を格納する整数型データ構造に使わ
れた領域の続きのアドレスに、循環小数の始点の桁番号
(151)、その次のアドレスに循環小数の終点の桁番
号(152)が書かれる。この循環小数の始点と終点の
桁番号は仮数部の小数第j桁の値jが書かれるが、この
とき仮数部の整数第1桁を表わすには、jの値として零
が書かれる。図25の仮数データ(153、154)に
はこの桁番号の数字(0〜11)と小数点(155)の
位置を示す。又、これら循環小数の始点の桁番号(15
1)と終点の桁番号(152)は、いずれも零及び正の
整数であり、3進法6桁で表わし得る範囲は十進数の
(−364〜364)なので、この数に十進数の364
を足した数とすれば、この3進法6桁で十進数の(0〜
728)の範囲を表わすことができる。一方、仮数部の
値を記憶するために最大で121ワ−ドまでを許容する
としたとき、その桁番号は、十進数で(0〜725)に
なる。前述のごとく、循環小数の循環節の桁数が1桁で
循環節の始点と終点が同じ桁になるときには、始点の桁
番号(151)と終点の桁番号(152)には同じ値を
書く。又、仮数型データ構造(150)の仮数部は循環
小数の終点の桁よりも下位の桁は書く必要がないので、
これを記憶するのに使われるワ−ド数は、終点の桁番号
(152)の値から算出されるワ−ド数になる。即ち、
終点の桁番号(152)の値が十進数の(−359)の
とき、それが表わす桁番号は十進数の364を足すと5
であり、ワ−ド数は1になるので、仮数型データ構造
(150)全体では、始点の桁番号(151)1ワ−ド
と終点の桁番号(152)1ワ−ドと仮数データ(15
3)1ワ−ドの合計3ワ−ドになる。
【0105】仮数型データ構造(150)に記憶すべき
数値データの値が、循環小数でなく整数値や、小数値で
も1/3のごとく3進法表示で割切れる数を桁移動して
正規化したものであるときには、終点の桁番号(15
2)は、仮数部の有効数字の末尾を指す桁番号が書かれ
る。このとき、始点の桁番号(151)は、循環小数で
はないことを表わすために、終点の桁番号(151)よ
りも大きい値にされる。ここではその代表値の、桁数と
して記憶できる最大の値、即ち十進数の(728)相当
の値が書かれる。尚、円周率を表わすπや√2のごと
く、上記の範囲では循環小数として表わせない値や、理
論的にも循環小数にならない数を記憶するには、そのプ
ログラムが必要とする有効数字の桁数分の仮数部の値を
書き、前記の割切れる数のときと同様に、その仮数部の
末尾の桁番号を終点の桁番号(152)に書き、始点の
桁番号(151)には十進数の(728)相当の値を書
く。
【0106】上記の手順で格納した数値データを記憶領
域(111)から読出すには、数値データを格納した変
数名からデータ領域管理テ−ブルを参照して、数値デー
タのアドレスとワ−ド数を得る。このアドレスは整数型
データ構造(140)の有効桁数(141)と整数値の
下位3桁(142)のアドレスを指している。このアド
レスとこれに続く2ワ−ド分(143、144)の内容
を記憶領域(111)から記憶領域取出し口(112)
へ複写し、有効桁数(141)には十進数の14に相当
する3進数のYWWWを足して、この値を図示していな
いカウンタ−に複写する。そして、その整数型数値デー
タの用途によって、置数器3(122)又は置数器4
(123)にその桁数分のデータを正しい配列になるよ
うに右詰めで複写する。カウンタ−に複写した桁数が、
16以上のときには、更に次の3ワ−ドを記憶領域(1
11)から記憶領域取出し口(112)へ複写し、置数
器3(122)又は置数器4(123)へ必要なワ−ド
数分だけ追加する。このようにして最大27桁の整数値
を記憶領域(111)から置数器3(122)又は置数
器4(123)へ複写する。尚、カウンタ−の指す桁の
信号によって、その整数型数値データの正負の符号又は
零であることがわかる。
【0107】記憶領域(111)から読出した数値デー
タが、浮動小数点型数値データのときには、プログラム
ではその変数名からその数値データが、浮動小数点型数
値データであることは当然わかっているので、浮動小数
点型数値データの読出し命令の作業の一環として整数型
データ構造(140)の次のアドレスから3ワ−ド分、
即ち仮数型データ構造(150)の始点の桁番号(15
1)と終点の桁番号(152)と仮数部の(0〜5)桁
の仮数データ(153)の3ワ−ドを、記憶領域(11
1)から記憶領域取出し口(112)へ複写し、次にそ
れぞれ図示しない始点カウンタ−と終点カウンタ−へ複
写し、仮数部の(0〜5)桁のデータはその数値データ
の用途によって、置数器5(132)又は置数器6(1
33)へ左詰めで複写する。次に、終点カウンタ−の値
から算出された桁数が6以上のとき、そのワ−ド数分の
仮数部のデータを、記憶領域(111)から記憶領域取
出し口(112)を経て、置数器5(132)又は置数
器6(133)へ正しい配列になるように左詰めで複写
する。尚、この仮数部は、0桁の信号によって、正負の
符号又は零であることがわかる。
【0108】仮数部の桁数が、仮数演算部(131)の
取扱い得る桁数よりも大きいとき、これを何回かに分け
て演算することもできる。この例として、3進法の筆算
では、図15に示した手順で行なった√2の計算を電子
計算機では、漸近法を用いて図26に示す手順で演算す
る。即ち、式(161)に示すように、平方根の近似値
Aとそのときの誤差Eから次の近似値を求めて、次第に
誤差を小さくして行く方法である。図26に示すよう
に、平方根を求める値C(162)は、2.0であり、
その平方根の最初の近似値として、A0(163)を3
進数のY.Y即ち4/3とする。このときの誤差E1
(164)は、式(161)のE1の二乗の項を省略し
て、誤差の近似値
【0109】
【数12】 なる循環小数になる。平方根の第2の近似値A1(16
5)をY.YYWYWと小数第5桁までの数としたと
き、上記と同様にE2(166)の近似値はx.xxx
xxWxxWxxWYとなり小数第6桁から小数第13
桁に有効数字を持つ値が求められ、小数第5桁より上位
の桁には誤差がなかったことがわかる。次の平方根の近
似値A2(167)を小数第13桁までにして、上記と
同様の演算を行なうと、そのときの誤差E3(168)
の近似値として小数第13桁から小数第20桁に有効数
字を持つ値が求められた。このことは、平方根の近似値
A2(167)の小数第13桁が不適当であったことを
示しており、小数第13桁の値は誤差の近似値を足すこ
とで修正されて、平方根の近似値A3(169)が求め
られる。このように(2n+1)進法では、図4に示す
ごとく、各桁の記号又は信号の表わす値が、それよりも
下位に続く桁が表わすであろう値の範囲の中央にあり、
誤差が小さいので、又、正と負の記号を対等に用いるの
で、相殺する場合が多く桁上がりが少ない。このこと
は、図16〜18にも見られるごとく最大でも2桁の差
であり、仮数演算部(131)の桁数の制約で一度に演
算できないとき、これを何回かに分けて演算しても良
い。図26に示す√2の演算のときにも、この演算を仮
数演算部(131)の内部だけで行なうのではなく、記
憶領域(111)との間で数値データを一時的に格納し
たり、読出したりしながら行なう。
【0110】最終的に求められた数値データを演算器か
ら記憶領域(111)へ格納するときには、前記の方法
によってその数値データが整数値や文字列データの整数
型数値データのときには、カウンタ−の値から必要とす
る記憶領域(111)のワ−ド数が算出できる。又その
数値データが浮動小数点型数値データのときには、正規
化された仮数部になるように桁位置を修正した後、指数
部のカウンタ−の値と仮数部の終点カウンタ−から必要
とする記憶領域(111)のワ−ド数が算出できる。こ
のワ−ド数を用いてデータ領域管理テ−ブルを参照して
格納するアドレスを得る。次に整数演算部(121)の
内容を整数型データ構造(140)にして記憶領域格納
口(113)へ3ワ−ド分ずつ複写し、有効桁数(14
1)と整数値の下位3桁(142)から順番に記憶領域
(111)のアドレスから順番に複写して格納する。そ
の数値データが浮動小数点型数値データのときには更に
仮数演算部(131)の内容を仮数型データ構造(15
0)にして記憶領域格納口(113)へ複写し、始点の
桁番号(151)から順番に記憶領域(111)に3ワ
−ド分ずつ複写して格納する。
【0111】
【発明の効果】前記のように、請求項1記載の演算処理
装置は、1〜nのn個の正の整数を表わすn個の信号と
−1〜−nのn個の負の整数を表わすn個の信号と零を
表わす1個の信号の合計(2n+1)個の信号の中から
選ばれた1個の信号でもって1桁の数を表わし、nは1
以上の正の整数である1桁乃至複数桁の(2n+1)進
数を用いて演算するので、従来存在しなかった全く新し
い演算方法の演算処理装置を提供することができる。
【0112】また、これによって(2n+1)進法の表
記方法及び演算方法の特性を活用して、演算精度が向上
し、計算速度も向上する。
【0113】請求項2記載の電子計算機は、1〜nのn
個の正の整数を表わすn個の信号と−1〜−nのn個の
負の整数を表わすn個の信号と零を表わす1個の信号の
合計(2n+1)個の信号の中から選ばれた1個の信号
でもって1桁の数を表わし、nは1以上の正の整数であ
る1桁乃至複数桁の(2n+1)進数のデ−タを記憶す
る記憶領域と、この記憶領域から読出した1個乃至複数
個の(2n+1)進数のデ−タを入力とし1個乃至複数
個の(2n+1)進数のデ−タを出力とする演算処理部
とを有し、前記(2n+1)進数のデ−タを取扱うの
で、演算処理部と記憶領域との間で、データを複写・移
動させるときデータの表記方法を変える必要がなく、
(2n+1)進数のままで記憶できるので、処理速度が
向上し、数値の持っている精度も保持される。
【0114】請求項3記載の電子計算機は、前記演算処
理部が、整数型データを取扱う整数演算部と、浮動小数
点型数値デ−タの仮数部を取扱う仮数演算部とから成
り、浮動小数点型数値デ−タの指数部は前記整数演算部
で処理するので、整数演算部で処理される整数型データ
と浮動小数点型数値データの指数部は右詰めされていて
正負の符号を表わす桁よりも上位の桁は全部零であって
計算の対象にする必要がなく、また、仮数演算部で処理
される浮動小数点型数値デ−タの仮数部は左詰めされて
いて小数点位置が固定されているので、それぞれの特性
に合った処理をすることができる。
【0115】前記整数型データは、右詰めされていて正
負の符号を表わす桁よりも上位の桁は全部が零を表わす
信号であってこれを省略して記憶することができ、ま
た、前記浮動小数点型数値データの仮数部は、左詰めさ
れていて小数点位置が固定されているから、循環小数の
ときには循環節の終点の桁よりも下位の桁を、また、循
環小数でないときには有効数字の最も下位の桁よりも下
位の桁を、省略して記憶することができるので、記憶領
域を有効に無駄なく使うことができる。
【図面の簡単な説明】
【図1】(2n+1)進法の表記に用いる記号を示す図
である。
【図2】(2n+1)進法の表記例を示す図である。
【図3】従来の技術である十進法と2進法に用いられる
記号の意味する範囲を示す図である。
【図4】(2n+1)進法に用いられる記号の意味する
範囲を示す図である。
【図5】3進法の加算の入出力の関係を示す図である。
【図6】3進法の乗算の入出力の関係を示す図である。
【図7】9進法の加算の入出力の関係を示す図である。
【図8】9進法の乗算の入出力の関係を示す図である。
【図9】3進法の乗算の例として階乗の計算の過程を示
す図である。
【図10】階乗計算の結果を示す図である。
【図11】3進法の除算の例を示す図である。
【図12】3進法の除算の例を示す図である。
【図13】3進法の逆数計算の例を示す図である。
【図14】逆数計算の結果を示す図である。
【図15】3進法の√2の計算と検算を示す図である。
【図16】3進法の√2の検算を示す図である。
【図17】3進法の√2の検算を示す図である。
【図18】3進法の√2の検算を示す図である。
【図19】第一の実施例の3進法の演算回路を示す図で
ある。
【図20】第一の実施例の3進法の演算回路を示す図で
ある。
【図21】第一の実施例の3進法の演算回路を示す図で
ある。
【図22】第二の実施例の電子計算機の概略構成図であ
る。
【図23】第三の実施例の電子計算機の概略構成図であ
る。
【図24】整数型データ構造を示す図である。
【図25】仮数型データ構造を示す図である。
【図26】漸近法による近似値の求め方を示す図であ
る。
【符号の説明】
101 切換えスイッチ1 102 切換えスイッチ2 103 演算素子 111 記憶領域 114 演算処理部 121 整数演算部 131 仮数演算部
───────────────────────────────────────────────────── フロントページの続き (58)調査した分野(Int.Cl.7,DB名) G06F 7/38 G06F 7/49 G06F 9/305

Claims (3)

    (57)【特許請求の範囲】
  1. 【請求項1】1〜nのn個の正の整数を表わすn個の信
    号と−1〜−nのn個の負の整数を表わすn個の信号と
    零を表わす1個の信号の合計(2n+1)個の信号の中
    から選ばれた1個の信号でもって1桁の数を表わし、n
    は1以上の正の整数である1桁乃至複数桁の(2n+
    1)進数を用いて演算することを特徴とする演算処理装
    置。
  2. 【請求項2】1〜nのn個の正の整数を表わすn個の信
    号と−1〜−nのn個の負の整数を表わすn個の信号と
    零を表わす1個の信号の合計(2n+1)個の信号の中
    から選ばれた1個の信号でもって1桁の数を表わし、n
    は1以上の正の整数である1桁乃至複数桁の(2n+
    1)進数のデ−タを記憶する記憶領域と、この記憶領域
    から読出した1個乃至複数個の(2n+1)進数のデ−
    タを入力とし1個乃至複数個の(2n+1)進数のデ−
    タを出力とする演算処理部とを有し、前記(2n+1)
    進数のデ−タを取扱うことを特徴とする電子計算機。
  3. 【請求項3】前記演算処理部は、整数型データを取扱う
    整数演算部と、浮動小数点型数値デ−タの仮数部を取扱
    う仮数演算部とから成り、浮動小数点型数値デ−タの指
    数部は前記整数演算部で処理することを特徴とする特許
    請求項2記載の電子計算機。
JP29047494A 1994-10-31 1994-10-31 演算処理装置及び電子計算機 Expired - Fee Related JP3421933B2 (ja)

Priority Applications (2)

Application Number Priority Date Filing Date Title
JP29047494A JP3421933B2 (ja) 1994-10-31 1994-10-31 演算処理装置及び電子計算機
US08/544,474 US5822233A (en) 1994-10-31 1995-10-18 Digital arithmetic calculator and digital computer using non-redundant (2N+1) notation system with a radix of (2N+1)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP29047494A JP3421933B2 (ja) 1994-10-31 1994-10-31 演算処理装置及び電子計算機

Publications (2)

Publication Number Publication Date
JPH08129479A JPH08129479A (ja) 1996-05-21
JP3421933B2 true JP3421933B2 (ja) 2003-06-30

Family

ID=17756485

Family Applications (1)

Application Number Title Priority Date Filing Date
JP29047494A Expired - Fee Related JP3421933B2 (ja) 1994-10-31 1994-10-31 演算処理装置及び電子計算機

Country Status (2)

Country Link
US (1) US5822233A (ja)
JP (1) JP3421933B2 (ja)

Families Citing this family (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP4545832B2 (ja) * 1997-11-10 2010-09-15 ティーエスエスアイ システムズ リミティド 物品にラベルを貼る方法
FR2815146B1 (fr) * 2000-10-11 2004-05-28 Gemplus Card Int Representation arithmetique minimale d'un nombre n en base relative r pour decomposer des operations de calcul notamment en cryptographie
WO2005085991A1 (en) * 2004-03-08 2005-09-15 Sergeev Yaroslav Computer system for storing infinite, infinitesimal, and finite quantities and executing arithmetical operations with them
US20100023569A1 (en) * 2008-07-22 2010-01-28 Daw Shien Scientific Research & Development, Inc. Method for computerized arithmetic operations
WO2012143016A1 (en) * 2011-04-18 2012-10-26 Abo Warda Magdi Al Saeed Ahmed Magdi's logic (ternary logic)
JP6324264B2 (ja) * 2014-08-22 2018-05-16 ルネサスエレクトロニクス株式会社 三値内積演算回路、三値内積演算処理プログラム、及び、三値内積演算回路による演算処理方法
JP6350296B2 (ja) * 2015-01-19 2018-07-04 富士通株式会社 処理プログラム、処理装置および処理方法

Family Cites Families (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4110831A (en) * 1977-06-29 1978-08-29 International Business Machines Corporation Method and means for tracking digit significance in arithmetic operations executed on decimal computers
US4229801A (en) * 1978-12-11 1980-10-21 Data General Corporation Floating point processor having concurrent exponent/mantissa operation
US4488252A (en) * 1982-02-22 1984-12-11 Raytheon Company Floating point addition architecture
US4758972A (en) * 1986-06-02 1988-07-19 Raytheon Company Precision rounding in a floating point arithmetic unit
US5031136A (en) * 1986-06-27 1991-07-09 Matsushita Electric Industrial Co., Ltd. Signed-digit arithmetic processing units with binary operands
US4866655A (en) * 1986-07-18 1989-09-12 Matsushita Electric Industrial Co., Ltd. Arithmetic processor and divider using redundant signed digit
US4979140A (en) * 1988-03-31 1990-12-18 Texas Instruments Incorporated Signed digit adder circuit
US5243551A (en) * 1989-05-17 1993-09-07 The Secretary Of State For Defence In Her Britannic Majesty's Government Of The United Kingdom Of Great Britain And Northern Ireland Processor suitable for recursive computations
US5267186A (en) * 1990-04-02 1993-11-30 Advanced Micro Devices, Inc. Normalizing pipelined floating point processing unit
US5317755A (en) * 1991-04-10 1994-05-31 General Electric Company Systolic array processors for reducing under-utilization of original design parallel-bit processors with digit-serial processors by using maximum common divisor of latency around the loop connection

Also Published As

Publication number Publication date
JPH08129479A (ja) 1996-05-21
US5822233A (en) 1998-10-13

Similar Documents

Publication Publication Date Title
Shiva Introduction to logic design
US4224676A (en) Arithmetic logic unit bit-slice with internal distributed iterative control
US6138135A (en) Propagating NaNs during high precision calculations using lesser precision hardware
JP7096828B2 (ja) 入力オペランド値を処理するための装置及び方法
Cook et al. System design of a dynamic microprocessor
Cavanagh Computer arithmetic and Verilog HDL fundamentals
Kneusel Numbers and computers
JP3421933B2 (ja) 演算処理装置及び電子計算機
JPS648856B2 (ja)
JP2021515936A (ja) 16ビット浮動小数点乗算器を用いた行列と行列の乗算による複数精度整数乗算器
Peterson Computer organization and assembly language programming
US3641331A (en) Apparatus for performing arithmetic operations on numbers using a multiple generating and storage technique
Lewin et al. Theory and design of digital computer systems
Bromley Babbage's Analytical Engine Plans 28 and 28a. The programmer's interface
Wilkes Arithmetic on the EDSAC
US3757097A (en) Ediate arithmetic results extra bit for floating decimal control and correction of false interm
McWhorter The small electronic calculator
JPS6170635A (ja) 丸め制御装置
JPS6120134A (ja) 平方根計算装置
Hintze Fundamentals of digital machine computing
JPS59188790A (ja) シグナルシ−ケンス高速生成装置
JP7381426B2 (ja) 演算回路
Summerville Embedded Systems Interfacing for Engineers using the Freescale HCS08 Microcontroller I: Machine Language Programming
US20040117415A1 (en) Arithmetic and relational operations
Silvester et al. Computer Engineering: Circuits, Programs, and Data

Legal Events

Date Code Title Description
LAPS Cancellation because of no payment of annual fees