JPS6237739A - ソ−ト処理装置 - Google Patents

ソ−ト処理装置

Info

Publication number
JPS6237739A
JPS6237739A JP17576485A JP17576485A JPS6237739A JP S6237739 A JPS6237739 A JP S6237739A JP 17576485 A JP17576485 A JP 17576485A JP 17576485 A JP17576485 A JP 17576485A JP S6237739 A JPS6237739 A JP S6237739A
Authority
JP
Japan
Prior art keywords
sorting
data
descending
ascending
input
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
JP17576485A
Other languages
English (en)
Inventor
Tetsuji Sato
哲司 佐藤
Nobuo Tsuda
津田 伸生
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.)
NTT Inc
Original Assignee
Nippon Telegraph and Telephone 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 Nippon Telegraph and Telephone Corp filed Critical Nippon Telegraph and Telephone Corp
Priority to JP17576485A priority Critical patent/JPS6237739A/ja
Publication of JPS6237739A publication Critical patent/JPS6237739A/ja
Pending legal-status Critical Current

Links

Landscapes

  • Input From Keyboards Or The Like (AREA)

Abstract

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

Description

【発明の詳細な説明】 (1)  発明の属する技術分野 本発明は、文字列や数値データを対象としたソート処理
装置に関し、特にソート対象データ相互、データ内の複
数の領域に対して昇順あるいは降順にソートするソート
処理装置の構成に関する。
(2)従来の技術とその問題点 ソートとは、与えられたデータの集まりを所定の順序に
並び替える処理である。電子計算機におけるソート処理
とは、数値あるいは文字列として与えられたデータが、
計算機内部では“0”あるいは“1”の二値符号で表記
されている事から、二値符号の持つ数値的意味に基づい
て、与えられたデータを相互に比較し、それぞれのデー
タの大小関係によって、昇順(小さいものから大きいも
のへの順)あるいは降順(大きいものから小さいものへ
の順)にデータを並び変えることである。
一般に、ソート対象とするデータをレコー1:と称し、
レコードはデータ相互の比較を行って大小関係を判定す
るキ一部と比較を行わない部分とに分けることができる
。このレコードを、文字列や正整数(符号なし整数)に
限定した場合には、二進符号で表されたレコードのキ一
部を十位桁はど優位性を持たせて比較することによって
、ソート処理を行うレコード相互の大小関係を決定でき
る。
文字列や正整数以外の例えば実数等であっても適当な変
換処理によって、大小関係を損なわないように文字列あ
るいは正整数に変換することができる。
従来、このようなソート処理を、メモリ装置(メモリ)
と中央演算装置(CP U)を中核として構成した汎用
の電子計算機で実行する場合には、メモリとCPU間の
データ転送やCPU内での比較が逐次処理である、一度
に2個のデータ間の比較しか出来ない等の理由により、
ソート処理で対象とするレコード数が大量の場合には、
処理に要する時間が極めて長くなるという問題があった
かかるソート処理時間に関する問題を解決する従来技術
として、専用のソート処理装置を用いて、データ相互の
比較による大小関係の判定と、データの転送を並列に行
って高速化を図る方法が、例えば、特願昭58−188
368号や特19n昭59−163519号に既知であ
る。
第1図は、従来技術の一例であるソート処理装置の構成
図である。本装置は、比較の対象となるデータを保持す
るための第1のメモリ1及び第2のメモリ2、比較器3
、この比Φ々器3によって得られた判定結果を保持する
ためのフラグレジスタ4および入出力回路5からなるユ
ニット6の?jj数個を一次元縦続接続した構成を有し
ている。本装置では、データ相互の比較と転送を複数の
ユニットで同時に実行できるため1、以下に説明する動
作原理に従って、レコード数に比例する時間でソート処
理を行うことができる。
第2図は、第1図のソート処理装置の動作原理図であり
、−例として、「0」から「9」までの−桁の数値デー
タのうち、r3J 、r6J 、r5J 。
r2j、r4J、rlJの、6個のレコードを降順にソ
ートする場合の動作を示している。第2図では、第1図
における第1のメモリ1および第2のメモリ2とフラグ
レジスタ4のみを簡略に示しており、他の回路は省略し
である。
ソート処理を行うに当って、始めに本装置では、全ての
ユニットの第1のメモリ1および第2のメモリ2の内容
を初期設定する。ここでは、降順にソートする場合の例
であり、この場合にはデータの最小値である「0」を設
定する。本装置では、順次レコードを入力する入力操作
と、順次レコードを出力する出力操作とでソート処理を
行う。−回の入力操作で各ユニットでは、データの右方
向への転送と2個のデータ間での比較とを行う。この場
合、転送されるデータは第1および第2のメモリに保持
された2個のデータのうち小さい方である。この時、デ
ータの転送と同期して1個のレコードをソート処理装置
に入力し、最左端のユニットの第1のメモリ1あるいは
第2のメモリ2のいずれかのうち転送によって空になっ
た方のメモリに保持する。(Tl〜T6) この人力操作を繰り返して6個のレコード全てを入力し
た段階で、今度は出力操作によって順次データを隣接す
る左側のユニットに転送する。この時、転送するデータ
はユニット内の2個のデータのうち大きい方であり、最
右端のユニットには「0」を入力する。(T7〜T12
) 以上、入力操作の繰り返しによってデータが順次入力さ
れ、データの入力が完了した段階で出力操作を実行する
ことにより、最大値から順次ソート済みのレコードが降
順に取り出される。ここで説明したソート処理の例では
、レコード数に等しい入力操作回数と出力操作回数でソ
ート処理が行える。
この従来のソート処理装置を用いて昇順にソートする場
合には、初期設定として、全ユニットの第1のメモリ1
および第2のメモリ2に、データの最大値として「9」
を設定しておき、入力操作時には、各ユニットで比較し
た2個のデータのうち、大きい方を右方向に転送し、出
力操作時には、各ユニットで比較した2個のデータのう
ち、小さい方を左方向に転送する。従って、この従来の
ソート処理装置では、降順ソートの場合と昇順ソートの
場合とでは、各ユニットの初期設定する値を変更する問
題と、入力操作時および出力操作時の転送データの大小
を逆にしなければならない問題があった。このため、−
次元接続した比較転送ユニットの制御回路が複雑になり
、ソート処理装置の回路規模の増大や、装置全体の動作
速度が低下する問題があった。
(3)発明の目的 本発明の目的は、ソート処理装置において、降順あるい
は昇順のいずれであってもソートできる構成とするとと
もに、レコード内に複数のキ一部を設け、入力操作およ
び出力操作と同期してビット反転手段を制御することに
よって、複数のキーのそれぞれに対して昇順あるいは降
順にソートするマルチキーソートが可能なソート処理装
置を提供することにある。
(4)発明の構成 (4−1)発明の特徴と従来技術との差異本発明は、ソ
ート処理器のデータ入出力部に、入力あるいは出力する
データのビットを制御によって反転するビット反転手段
を具備したことを最も主要な特徴とする。従来のソート
処理装置で降順ソートと昇順ソートを行うためには、−
次元接続した複数個のユニットの各々で初期設定するす
る値を変更し、さらに、入力操作時および出力操作時に
転送するデータの大小を変更するため、−次元接続した
比較転送ユニットの制御回路が複雑になり、ソート処理
装置の回路規模の増大や、装置全体の動作速度を制限す
る要因となっていた。
本発明に基づくソート処理装置では、比較転送処理を行
うユニットを昇順ソートあるいは降順ソートのいずれか
一方に限定して実現することから、従来のソート処理装
置に比べて制御が闇路になり、この結果回路量の削減と
動作速度の向上が図れる。
さらに、従来のソート処理装置では、レコードを複数の
データに分割し、分割したデータに対する入力操作ある
いは出力操作の繰り返しによって、データ長が長いレコ
ードをソートするが、この入力操作および出力操作と同
期して該ビット反転手段を制御することによって、従来
のソート処理装置では実現することがほとんど不可能で
あった、レコード内に複数のキーを設定し、それぞれの
キーに対して降順あるいは昇順にソートするマルチキー
ソートを実現することが可能となった。
(4−2)実施例 以下、本発明を実施例を参照して詳細に説明する。第3
図は、本発明の詳細な説明するソート処理装置の全体構
成図である。本実施例では、レコード長の長いデータを
ソートするために、レコードを複数のデータに分割し、
分割したデータを単位として入力操作あるいは出力操作
を行う場合を示している。図中の7は転送データの切替
回路、8はレジスタA、9はレジスタB、10はビット
反転回路、11は排他的論理和をとるEXORゲート、
12はビット反転回路を制御する反転制御端子、13と
14はソート対象データの入力端子と出力端子、15は
降順ソート処理器である。切替回路7とレジスタ8,9
で転送回路を形成する。
降順ソート処理器15は、データの比較転送処理を行う
ユニット6の繰り返し構造からなり、降順ソート専用で
ある。従って、各ユニットではソート処理を行う際に、
第1のメモリであるメモリAと第2のメモリであるメモ
リBをともにオール“O″に初期設定する。ここで、オ
ール“O”とは、メモリの全ビットを理論値“0”に設
定することである。この時、フラグレジスタ4も同時に
理論値“O”に初期設定する。
本降順ソート処理器における入力操作と出力操作は、転
送と比較の2つのフェーズからなる。入力操作における
転送フェーズでは、左方向からの転送データをレジスタ
AあるいはレジスタBにセントする。この時、メモリA
あるいはメモリB内の対応するデータを切替回路7を介
して右方向に送出するとともに、反対側のレジスタBあ
るいはレジスタAに対応するメモリからデータを読み込
む。比較フェーズでは、レジスタA及びレジスタBにセ
ットされた2個のデータを比較するとともに、レジスタ
A及びレジスタBのイ直をメモリAおよびメモリBに書
き込む。この転送フェーズと比較フェーズからなる入力
操作を繰り返してルーコードの入力が完了した段階で、
ルコード分の比較結果をフラグレジスタ4にセットする
。ルーコードの入力が完了したら、新たにセットしたフ
ラグレジスタの値に基づいて、次のレコードの入力を行
う。
全レコードの入力が終了した段階で、今度は出力操作を
行う。出力操作における転送フェーズでは、右方向から
の転送データをレジスタAあるいはレジスタBにセット
する。この時、メモリAあるいはメモリB内の対応する
データを切替回路7を介して左方向に送出するとともに
、反対側のレジスタBあるいはレジスタAに対応するメ
モリからデータを読み込む。出力操作における比較フェ
ーズは、入力操作と同じである。以上示したように、入
力操作時には、各ユニットでフラグレジスタ4の値に基
づいて切替回路7を制御して、レジスタA8およびレジ
スタB9の内で小さい方を右方向に転送する。出力操作
時には、入力操作時と同様に、フラグレジスタ4の値に
基づいて切替回路7を制御して、レジスタA及びレジス
タBの内で大きい方を左方向に転送する。これらの入力
操作の繰り返しと出力操作の繰り返しによって、降順に
ソートされた結果が得られる。
第3図に示す、本発明実施例におけるソート処理装置で
降順ソートを行う場合には、反転制御端子12を論理値
“0”に設定し、昇順ソートを行う場合には、反転制御
端子12を“1”に設定する。
ビット反転回路10は、転送データの各ビットにEXO
Rゲートを負荷し、ビット毎に反転/非反転の制御を行
う。第4図は、EXORゲートの入出力関係を示した図
である。EXORゲートの出力は、2つの入力の排他的
論理和であるから、片方の入力を反転制御端子とすると
、他方の入力端子の反転/非反転を制御できる。
本ソート処理装置が、ソート対象とするデータは、文字
列あるいは正整数であるから、ビット反転を行うことよ
って、′1″の補数をとることになり、ビット反転操作
により、2個のデータの大小関係を逆転させることがで
きる。従って、入力データの各ビットを反転した後に、
降順ソート処理器15に入力し、得られた出力を再度ビ
ット反転することで昇順にソートできる。
次に、本実施例に示すソート処理装置で、レコード内に
複数のキーを設定し、複数のキーのそれぞれに対して、
昇順あるいは降順にソートするマルチキーソートについ
て具体例を用いて説明する。
第5図は、10進4桁の正整数を対象として、千の位を
降順に、百の位を昇順に、十の位、−の位を降順にソー
トする場合の例である。本例では、各数字を1バイトで
表わし、1バイト単位で比較と転送の入出力操作を行う
。反転制御信号Cは、各位の入出力操作と同期して、千
の位は論理値“0”、百の位は論理値“1”、十の位は
論理値“0”、−の位は論理値“0”を反転制御端子1
2から与える。この結果、入力レコードは、ビット反転
回路10によって、百の位のみがビット反転して補数と
なっている。図では、各桁を16進表示していることか
ら、ビット反転操作によって、1(2進表示でoooi
 >はE(2進表示で1110)に、2はDに、3はC
に変換されている。この反転処理後の各レコードを降順
ソート処理器15に入力し、降順にソートする。得られ
た結果を再度ビット反転回路10に入力し、反転制御信
号Cに基づいて百の位のみビット反転することによって
、各レコードのビットパターンを再現する。以上示した
ように、ソート対象データを複数に分割し、分割したレ
コードのそれぞれの入力操作あるいは出力操作と同期し
て、ビット反転手段を制御することによって、ソート対
象データ内に複数の領域を設定して、それぞれの領域に
対して他の領域とは独立に昇順又は降順にソートするこ
とにより容易にマルチキーソートを行うことができる。
本実施例では、降順ソート処理器15とビット反転回路
を組合わせた場合を示したが、昇順ソートのみを実行で
きる昇順ソート処理器を降順ソート処理器の代わりに用
いた場合でも、反転制御信号の論理値(0,1)を木実
側倒とは逆にすることによって、容易に昇順/降順ソー
トおよびマルチキーソートを行うことができる。
(5)発明の効果 以上実施例をもって説明したように、本発明のソート処
理装置では、降順あるいは昇順のいずれか一方にソート
できるソート処理器に対して、レコードを入力、出力す
る入出力部に、制御によってデータのビットを反転する
ビット反転手段を具備したことによって、降順あるいは
昇順のいずれであってもソート可能とするとともに、レ
コード内に複数のキ一部を設け、入力操作および出力操
作と同期してビット反転手段を制御することによって、
複数のキーのそれぞれに対して昇順あるいは降順にソー
トするマルチキーソートを実現したことである。
従来のソート処理装置で降順ソートと昇順ソートを行う
ためには、−次元接続した複数個のユニットの各々で初
期設定する値を変更し、さらに、人力操作時および出力
操作時に転送するデータの大小を変更しなければならな
い。このため、ユニットの制御回路が複雑になり、ソー
ト処理装置の回路量が増加するとともに、処理速度を制
限する要因となっていた。本発明では、降順ソートある
いは昇順ソートのいずれかのソート処理器で十分である
から、ソート処理装置の回路量の削減と、処理速度を向
上できる利点がある。
さらに、従来のソート処理装置では回路が複雑になり、
実現することが困難であったマルチキーソートをわずか
な付加回路で実現できる利点がある。
【図面の簡単な説明】
第1図は従来のソート処理装置の構成図、第2図は第1
図に示したソート処理装置の動作原理図、第3図は本発
明の一実施例であるソート処理装置の構成図、第4図は
第3図に示したビット反転回路を構成するEXORゲー
トの動作図、第5図は第3図のソート処理装置による複
数キーに対するソート処理の動作説明図である。 1・・・第1のメモリ、 2・・・第2のメモリ、3・
・・比較器、  4・・・フラグレジスタ、5・・・入
出力回路、 6・・・ユニット、7・・・切替回路、 
 8・・・レジスタA。 9・・・レジスタB、 10・・・ビット反転回路、1
1・・・EXORゲート、 12・・・反転制御端子、
13・・・入力データ端子、 14・・・出力データ端
子、15・・・降順ソート処理器。

Claims (1)

    【特許請求の範囲】
  1. (1)2個のデータを保持するメモリと、該メモリに保
    持されたデータ間の大小関係を判定する比較器と、該比
    較器による該メモリに保持された2個のデータの大小関
    係にもとづいて、該2個のデータのいずれか一方を右方
    向又は左方向に転送するための転送回路とを少なくとも
    有する比較転送ユニットの一次元アレイ構造からなるソ
    ート処理器を備えて、文字列あるいは正整数を対象とし
    て昇順あるいは降順のいずれかにソートできるソート処
    理装置において、 前記ソート処理器を降順又は昇順に特定されたソート処
    理器に構成するするとともに、該ソート処理器にソート
    対象データを入力あるいは出力する際に二値符号で表わ
    されたソート対象データの各々のビットを反転するか否
    かの機能を有するビット反転手段を具備し、該ビット反
    転手段のビット反転操作を実行するか否かによって昇順
    あるいは降順のいずれのソートも実行できるように構成
    されたことを特徴とするソート処理装置。
JP17576485A 1985-08-12 1985-08-12 ソ−ト処理装置 Pending JPS6237739A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP17576485A JPS6237739A (ja) 1985-08-12 1985-08-12 ソ−ト処理装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP17576485A JPS6237739A (ja) 1985-08-12 1985-08-12 ソ−ト処理装置

Publications (1)

Publication Number Publication Date
JPS6237739A true JPS6237739A (ja) 1987-02-18

Family

ID=16001846

Family Applications (1)

Application Number Title Priority Date Filing Date
JP17576485A Pending JPS6237739A (ja) 1985-08-12 1985-08-12 ソ−ト処理装置

Country Status (1)

Country Link
JP (1) JPS6237739A (ja)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH01211191A (ja) * 1988-02-19 1989-08-24 Fujitsu Ltd 辞書ソーティング処理装置
EP0803800A3 (en) * 1996-04-26 1997-12-03 Mitsubishi Denki Kabushiki Kaisha A sort processor and a sort processing device

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH01211191A (ja) * 1988-02-19 1989-08-24 Fujitsu Ltd 辞書ソーティング処理装置
EP0803800A3 (en) * 1996-04-26 1997-12-03 Mitsubishi Denki Kabushiki Kaisha A sort processor and a sort processing device

Similar Documents

Publication Publication Date Title
US3675001A (en) Fast adder for multi-number additions
US5268856A (en) Bit serial floating point parallel processing system and method
US3109162A (en) Data boundary cross-over and/or advance data access system
US3293418A (en) High speed divider
US3026034A (en) Binary to decimal conversion
US5511189A (en) Data sorting apparatus capable of detecting completion of data sorting early and sorting method therefor
JPS6237739A (ja) ソ−ト処理装置
JPS6142031A (ja) ソ−ト処理装置
US4719590A (en) Apparatus and method for performing addition and subtraction
US3700872A (en) Radix conversion circuits
US3125676A (en) jeeves
JPS6278627A (ja) ソ−ト処理装置
RU2021633C1 (ru) Устройство для умножения чисел
RU2028664C1 (ru) Устройство для параллельной обработки данных
JP2674810B2 (ja) 多重化n連一致保護回路
SU1499345A1 (ru) Устройство дл выделени единиц из позиционного кода
US5912831A (en) Process and system for adding or substracting symbols in any base without converting to a common base
JP2752220B2 (ja) 文字列処理装置
JPS6327732B2 (ja)
SU554537A1 (ru) Устройство дл суммировани п-разр дных чисел массива
JPS59123048A (ja) ソ−ト処理装置
SU1300641A1 (ru) Устройство дл преобразовани двоично-дес тичного кода в двоичный
JPH0250258A (ja) ベクトル処理装置
SU1053100A1 (ru) Устройство дл определени среднего из нечетного количества чисел
JPH0519736B2 (ja)