JP2620545B2 - Editing device driven by table - Google Patents

Editing device driven by table

Info

Publication number
JP2620545B2
JP2620545B2 JP4304483A JP4304483A JP2620545B2 JP 2620545 B2 JP2620545 B2 JP 2620545B2 JP 4304483 A JP4304483 A JP 4304483A JP 4304483 A JP4304483 A JP 4304483A JP 2620545 B2 JP2620545 B2 JP 2620545B2
Authority
JP
Japan
Prior art keywords
data
edit
display
code
editing
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 - Lifetime
Application number
JP4304483A
Other languages
Japanese (ja)
Other versions
JPS58221443A (en
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
Priority claimed from US06/358,543 external-priority patent/US4625294A/en
Priority claimed from US06/358,509 external-priority patent/US4538225A/en
Application filed by データー・ゼネラル・コーポレーション filed Critical データー・ゼネラル・コーポレーション
Publication of JPS58221443A publication Critical patent/JPS58221443A/en
Application granted granted Critical
Publication of JP2620545B2 publication Critical patent/JP2620545B2/en
Anticipated expiration legal-status Critical
Expired - Lifetime legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F40/00Handling natural language data
    • G06F40/10Text processing
    • G06F40/103Formatting, i.e. changing of presentation of documents
    • G06F40/106Display of layout of documents; Previewing
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F40/00Handling natural language data
    • G06F40/10Text processing
    • G06F40/166Editing, e.g. inserting or deleting

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Audiology, Speech & Language Pathology (AREA)
  • Health & Medical Sciences (AREA)
  • Computational Linguistics (AREA)
  • General Health & Medical Sciences (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Artificial Intelligence (AREA)
  • Input From Keyboards Or The Like (AREA)
  • Digital Computer Display Output (AREA)
  • Document Processing Apparatus (AREA)
  • Executing Machine-Instructions (AREA)

Description

【発明の詳細な説明】 (発明の背景) (発明の分野) 本発明は、一般的に言えばデイジタル・データ処理シ
ステムにおけるデータ修正装置に関し、特にターミナル
・キーボードおよびユーザにより修正されるデータを表
示するためのターミナル・ディスプレイを含む入出力シ
ステムにおいて、ターミナルからの打鍵によりユーザが
データの修正を行うことを可能にしかつターミナル・デ
ィスプレイに修正結果を表示するための装置に関する。
Description: BACKGROUND OF THE INVENTION Field of the Invention The present invention relates generally to data modification devices in digital data processing systems, and more particularly to displaying a terminal keyboard and data modified by a user. In an input / output system including a terminal display for inputting data, an apparatus for enabling a user to correct data by a key input from a terminal and displaying a correction result on the terminal display.

(従来技術の説明) 従来技術においては、コンピュータ・システムのユー
ザは、汎用編集プログラムや特定のアプリケーションの
ための単一目的の編集機能によってターミナルからデー
タを修正していた。
Description of the Prior Art In the prior art, a user of a computer system modified data from a terminal with a general purpose editing program or a single purpose editing function for a particular application.

汎用編集プログラマは、データの修正のための広範囲
の機能を提供する。このようなプログラムは、ターミナ
ルから編集指令を受取ることにより作動する。編集プロ
グラムは、編集指令に応答して、データの表示、データ
の修正および修正されたデータの表示を行なう。多くの
汎用編集プログラムは、マクロ能力、即ち一連の編集機
能からなるプログラムであるマクロをユーザが作成して
これを実行することを許容する能力を有する。このよう
なマクロ能力はユーザに対して編集指令の組合せから新
たな編集機能を作る方法を提供する。いくつかの汎用編
集プログラムはまた、ユーザが1回の打鍵でマクロの実
行を可能にするようにターミナルの1つのキーと1つの
マクロとを関連させる方法を提供する。この能力を用い
て、ユーザは汎用編集プログラムを種々の特定の目的に
役立たせることができる。
General purpose editing programmers provide a wide range of functions for modifying data. Such a program operates by receiving an edit command from a terminal. The editing program displays the data, corrects the data, and displays the corrected data in response to the editing command. Many general-purpose editing programs have macro capability, that is, the ability to allow a user to create and execute a macro, which is a program consisting of a series of editing functions. Such macro capabilities provide the user with a way to create new editing functions from a combination of editing commands. Some general purpose editing programs also provide a way to associate a macro with one key of the terminal so that the user can execute the macro with a single keystroke. With this capability, a user can use a general purpose editing program for a variety of specific purposes.

しかし、汎用編集プログラムの能力はコストを掛けず
に得られるものではない。汎用編集プログラムは、その
コードに対して多量のメモリーを必要とし、また汎用編
集プログラムの操作の開始および終了には長時間を必要
とする。汎用編集プログラムのサイズは、メモリーが貴
重な応用装置、例えば「スマート」ターミナル、即ち局
部記憶および処理能力を有するターミナルにおいてはそ
の有効性を制限することになる。汎用編集プログラムの
操作を開始しかつ終了するために必要な時間は、編集操
作を主要な目的とはしないが他の操作の過程において少
しの編集操作を必要とするプログラムにおいては過大で
ある。
However, the power of general-purpose editing programs cannot be obtained without cost. A general-purpose editing program requires a large amount of memory for its code, and the operation of the general-purpose editing program requires a long time to start and end. The size of the universal editing program will limit its effectiveness in applications where memory is at a premium, such as "smart" terminals, i.e., terminals with local storage and processing capabilities. The time required to start and end the operation of a general purpose editing program is excessive for programs that do not have the editing operation as their primary purpose but require a small amount of editing operation in the course of other operations.

少しの編集操作を実施するプログラムは特に対話型ア
プリケーション、即ちプログラムがターミナルからの指
令またはデータに対して応答するアプリケーションにお
いて一般的である。プログラムの有効性を図るために
は、ユーザはターミナルに対して何を入力したかを知る
ことができなければならず、またその入力がエラーであ
る場合にこれを修正することができなければならない。
汎用編集プログラムの時間および空間的要件はこのよう
なアプリケーションに対しては過大であるため、従来技
術では多くの特定目的プログラムに簡単な編集能力を内
蔵してきた。こうすることにより、従来技術は汎用目的
の編集プログラムの使用に介在するオーバーヘッドを回
避したが、特定目的のプログラムの複雑性を増大し、こ
のためこれらプログラムの作成および保守を困難にし
た。また、特定目的のプログラムに簡単な編集能力を含
ませることはある程度メモリー空間の無駄を生ずる。す
なわち各々の特定目的のプログラムは実質的に同じ編集
機能を必要とするが、小さな差異があるため、編集機能
を全てに利用可能な単一プログラムに組合せることがで
きないからである。
Programs that perform few editing operations are especially common in interactive applications, i.e., applications where the program responds to commands or data from a terminal. In order for the program to be valid, the user must be able to know what was typed into the terminal and be able to correct this if the input was in error. .
Because the time and space requirements of general purpose editing programs are excessive for such applications, the prior art has incorporated simple editing capabilities into many special purpose programs. In doing so, the prior art avoids the overhead of using general purpose editing programs, but increases the complexity of the special purpose programs, which makes their creation and maintenance difficult. Including a simple editing capability in a program for a specific purpose causes some waste of memory space. That is, each special purpose program requires substantially the same editing functions, but with small differences, the editing functions cannot be combined into a single program that is available to all.

構成要素がネットワークに接続されるデイジタル・デ
ータ処理システムへの傾向は、汎用目的編集プログラム
の汎用性および可用性を、そのオーバーヘッドなしに有
するデータ表示および修正装置に対する需要を増大して
きた。ネットワークシステムにおいては、ネットワーク
におけるデータの伝送毎に大きなオーバーヘッドを必要
とし、その結果あるタスクを達成するためには伝送量を
できるだけ小さくすることが要求される。伝送回数を減
少させる1つの方法は、例えば、局部マイクロプロセッ
サおよびメモリーをシステム中のターミナルに設けるこ
とによりシステム全体に処理能力を分散させることであ
る。このようなシステムにおいては、ターミナルのメモ
リーに記憶されたデータに関する修正はこのターミナル
のマイクロプロセッサを用いて実施することができる。
その結果ASCII文字列の如きデータの修正には僅かに2
回の伝送、即ち修正すべきデータのターミナルに対する
1回目の伝送およびこのターミナルからシステムの他の
部分に対する修正されたデータの2回目の伝送だけでよ
い。
The trend toward digital data processing systems in which components are connected to a network has increased the demand for data display and modification devices that have the versatility and availability of general purpose editing programs without its overhead. In a network system, a large overhead is required every time data is transmitted in a network, and as a result, it is required to minimize a transmission amount in order to accomplish a certain task. One way to reduce the number of transmissions is to distribute processing power throughout the system, for example, by providing a local microprocessor and memory at terminals in the system. In such a system, modifications to the data stored in the terminal's memory can be performed using the terminal's microprocessor.
As a result, modifying data such as ASCII strings requires only 2
Only one transmission, the first transmission of the data to be modified to the terminal and the second transmission of the modified data from this terminal to the rest of the system, is necessary.

従来技術によりデータの表示および修正のために用い
られた試みはいずれもネットワークシステムにおいては
有効ではない。汎用目的編集プログラムおよびデータの
表示および修正の構成要素を含む特定目的編集プログラ
ムは、両方とも個々のターミナルにおいて使用可能な制
限されたメモリーに収めるには一般に大き過ぎる。従っ
て個々の編集指令がターミナルから汎用目的編集プログ
ラムまたは特定目的編集プログラムを実行しつつあるプ
ロセッサに対して個別の伝送で送られなければならな
い。この個々の伝送はこのような伝送に含まれ得る最大
量よりも遥かに少ないデータしか含まず、その結果ネッ
トワークの使用は非効率的となる。
None of the attempts used by the prior art to display and modify data are valid in networked systems. Both general purpose editing programs and special purpose editing programs, including data display and modification components, are generally too large to fit into the limited memory available at individual terminals. Accordingly, individual editing commands must be sent in separate transmissions from the terminal to the processor executing the general purpose or special purpose editing program. This individual transmission contains much less data than the maximum amount that can be included in such a transmission, resulting in inefficient use of the network.

ネットワークの使用効率をより高めるため、従来技術
では個々のターミナルに対して制限されたデータの表示
および修正能力を提供した。このような能力を有するタ
ーミナルにおいては、データの表示および修正は、中央
処理装置からターミナル・メモリーに対する1回の伝送
で表示され修正されるべき全てのデータを送出し、修正
を実施し、次いで修正されたデータを1回の伝送で中央
処理装置に対して戻すことにより実現される。しかし、
ネットワークの有効使用に対する代償として、ターミナ
ルを使用する全てのプログラムがターミナルにより提供
される1組のデータ表示および修正操作に制限された。
In order to make the network more efficient, the prior art has provided limited data display and modification capabilities for individual terminals. In terminals having such capabilities, the display and modification of the data is accomplished by sending all data to be displayed and modified in a single transmission from the central processing unit to the terminal memory, performing the modification, and then modifying the data. This is realized by returning the obtained data to the central processing unit in one transmission. But,
At the expense of efficient use of the network, all programs using the terminal were limited to a set of data display and modification operations provided by the terminal.

本発明は、従来技術の前述の諸問題を解決する諸特徴
を有する改善されたデータ表示および修正装置を提供す
るものである。
The present invention provides an improved data display and correction device having features that solve the aforementioned problems of the prior art.

本発明は、本文において編集装置(ED)と呼ばれるデ
ータ表示兼修正装置を提供する。この装置はある限定量
のメモリーしか必要とせず、強力な汎用目的能力を有
し、異なるユーザに異なるデータ表示および修正能力を
提供し、ネットワーク中での使用に特に適合するもので
ある。
The present invention provides a data display and correction device, referred to herein as an editing device (ED). This device requires a limited amount of memory, has powerful general purpose capabilities, offers different users different data display and modification capabilities, and is particularly suited for use in networks.

本発明による編集装置EDは下記の構成要素からなって
いる。
The editing device ED according to the present invention comprises the following components.

即ち、 * データの表示のためのターミナル・スクリーンの如
きデイスプレイ * データの修正を記述する入力コードおよび修正に使
用されるデータの入力のためのターミナル・キーボード
の如き入力装置 * 少なくとも、修正すべきデータを表わすデータ・コ
ード、およびデータの修正および表示の制御のため使用
される制御データの記憶のための作業バッファ用のメモ
リー * 入力コードに応答してデータを修正し、かつデイス
プレイ上のデータの表示を制御するためのプロセッサ、
および * 1つ以上データ・コードまたは入力コードに対応す
るエントリを含む編集テーブルである。
A display such as a terminal screen for the display of data; an input code describing the correction of the data; and an input device such as a terminal keyboard for the input of data used for the correction. A memory for a work buffer for storing a data code representing the data and control data used for controlling the correction and display of the data * The data is corrected in response to the input code and the display of the data on the display A processor for controlling the
And * an edit table containing one or more entries corresponding to data codes or input codes.

編集テーブルにおける各エントリは、EDが1組の入力
コードまたはデータ・コードに応答する方法を制御する
一連の編集命令からなっている。編集命令により予め規
定される仕方でEDは作業バッファの内容を修正し、デイ
スプレイ上のデータの表示を修正し、あるいは制御デー
タを修正することができる。EDのいくつかの実施態様に
おいては、多数の編集テーブルを使用することができ、
これらの実施態様を使用するプログラムはEDがどの編集
テーブルから編集命令を得るかについて規定することが
できる。「スマート」ターミナルにおけるEDにおいて
は、EDが修正すべきデータと共にターミナルに対して編
集テーブルを提供(例えばダウン・ロード)することが
できる。
Each entry in the edit table consists of a series of edit instructions that control how the ED responds to a set of input or data codes. The ED can modify the contents of the work buffer, modify the display of data on the display, or modify the control data in a manner predefined by the edit command. In some embodiments of the ED, multiple editing tables can be used,
Programs using these embodiments can specify from which editing table the ED will get the editing instructions. In an ED in a "smart" terminal, an editing table can be provided (eg, downloaded) to the terminal along with the data to be modified by the ED.

特定の編集テーブルを使用するEDは汎用目的編集装置
程強力でないが、1つのEDが種々の編集テーブルを使用
することができるという事実は、汎用目的編集装置に固
有のメモリー空間要件および時間的ペナルテイなしに、
EDに対して汎用目的編集装置の汎用性を与えるものであ
る。EDのサイズは「スマート」ターミナルでの使用に特
に適合するものであり、またデータと共に編集テーブル
を受取る能力は、他の場合よりも更に柔軟性に富んだ編
集能力をEDを使用する「スマート」ターミナルに与え
る。
Although an ED that uses a particular edit table is not as powerful as a general purpose editor, the fact that one ED can use different edit tables is due to the memory space requirements and temporal penalties inherent in a general purpose editor. Without,
It gives the ED the versatility of a general purpose editing device. The size of the ED is particularly adapted for use in "smart" terminals, and the ability to receive editing tables along with the data provides a more flexible editing capability than otherwise "smart" using the ED. Give to the terminal.

すなわち、本発明による装置と従来技術による装置と
の構成上の主な差異は、本発明の装置が編集テーブルを
使用して該テーブルをターミナルへ適宜に供給(ダウン
ロード)することを可能にしたことと、そのために各タ
ーミナルの作業バッファ・メモリーに制御データを記憶
させてこれを修正しながら編集動作をすることにある。
That is, the main difference in the configuration between the device according to the present invention and the device according to the prior art is that the device according to the present invention makes it possible to use an editing table and to appropriately supply (download) the table to the terminal. Therefore, the control data is stored in the work buffer memory of each terminal and the editing operation is performed while correcting the control data.

本発明の主な目的は改善されたデータ処理システムを
提供することにある。
It is a primary object of the present invention to provide an improved data processing system.

本発明の目的はまた、入力コードに応答してデータを
表示しかつ表示されたデータを修正するための、従来技
術によるものよりも更に柔軟性に富みかつ効率のよい装
置を提供することにある。
It is also an object of the present invention to provide a more flexible and efficient device for displaying data and modifying the displayed data in response to an input code than in the prior art. .

本発明の別の目的は、データ表示兼修正装置が入力コ
ードに応答し、データを表示する方法を編集テーブルが
決定する、データ表示兼修正装置を提供することにあ
る。
It is another object of the present invention to provide a data display and correction device wherein the data display and correction device responds to an input code and the editing table determines how to display the data.

本発明の更に別の目的は、複数の編集テーブルを用い
るデータ表示兼修正装置を提供することにある。
Still another object of the present invention is to provide a data display and correction device using a plurality of editing tables.

本発明の他の目的は、特にネットワークシステムにお
ける使用に適するデータ表示兼修正装置を提供すること
にある。
Another object of the present invention is to provide a data display and correction device particularly suitable for use in a network system.

本発明の更に他の目的、長所および特徴については、
図面を参照して、望ましい実施態様について以下に詳細
に記述する。
For further objects, advantages and features of the invention,
Preferred embodiments are described in detail below with reference to the drawings.

望ましい実施態様の以下の記述においては、最初に編
集装置(ED)の全体的記述を行ない、次いでEDをデータ
処理システムに内蔵する種々の方法について論述し、最
後にEDの1つの実施態様について詳細に論議することに
する。このような論議において、命令シーケンスの各部
はしばしば動作の実施として記述される。無論、実際に
は、これらの動作は命令を実行するプロセッサにより実
施される。この動作を命令のシーケンスに帰する用法は
当業者には周知であり、本文について説明の簡潔化のた
め用いられる。
In the following description of the preferred embodiment, first a general description of the editing device (ED) will be given, then the various ways of incorporating the ED into the data processing system will be discussed, and finally one embodiment of the ED will be described in detail. Will be discussed. In such discussions, each part of the instruction sequence is often described as performing an operation. Of course, in practice, these operations are performed by the processor executing the instructions. Use of this operation in a sequence of instructions is well known to those skilled in the art and is used for brevity in the text.

(1.本発明の全体的説明−第1図) 第1図は、EDの全体的説明を呈示する概念的なブロッ
ク図である。同図においては、データ処理システム(D
P)127からデータを受取り、このデータを修正し、これ
をDP127に戻すED101が示されている。ED101は更に入力
装置109およびデイスプレイ107に対して接続されてい
る。編集装置101と入力装置109および編集装置101とデ
イスプレイ107を繋ぐ矢印により示される如く、編集装
置101は入力コードを入力装置109から受取り、表示コー
ドをデイスプレイ107に対して出力する。入力装置109か
ら受取った入力コードは、DP127から受取ったデータを
修正する方法を指示し、DP127から受取ったデータの修
正の際使用される付加的データを提供する。デイスプレ
イ107はDP127から受取り入力装置109からの入力コード
に応答して修正されるデータの視覚的表示を行うことに
より表示コードに対して応答する。
(1. General Description of the Present Invention—FIG. 1) FIG. 1 is a conceptual block diagram presenting a general description of an ED. In the figure, the data processing system (D
ED101 is shown that receives data from P) 127, modifies this data, and returns it to DP127. The ED 101 is further connected to the input device 109 and the display 107. The editing device 101 receives an input code from the input device 109 and outputs a display code to the display 107, as indicated by arrows connecting the editing device 101 and the input device 109 and the editing device 101 and the display 107. The input code received from input device 109 indicates how to modify the data received from DP 127 and provides additional data to be used in modifying the data received from DP 127. The display 107 responds to the display code by providing a visual display of the data to be modified in response to the input code from the receiving input device 109 from the DP 127.

ほとんどの実施態様においては、入力装置109とデイ
スプレイ107の双方は1つのターミナルの一部である。
入力装置109はこのターミナルのキーボードであり、デ
イスプレイ107はこのターミナルのCRTであるかあるいは
ハード・コピー・ターミナルの場合には、ターミナルが
その出力をタイプする用紙である。本例においては入力
コードは、ターミナルがキーの打鍵に応答して生成する
1バイト(8ビット)のASCIIコードである。他の実施
態様においては、入力コードはEBCDICコードもしくは特
殊な入力コードでも良く、入力コードは8ビットより長
くても短くても良い。同様に、本例においては、表示コ
ードは特殊な表示制御コードにより拡張されたASCIIコ
ードであるが、EBCDICコードまたは特殊な表示コードの
如き他の表示コードも可能である。
In most embodiments, both input device 109 and display 107 are part of a single terminal.
Input device 109 is the terminal's keyboard, and display 107 is the terminal's CRT or, in the case of a hard copy terminal, the paper on which the terminal types its output. In this example, the input code is a one-byte (8-bit) ASCII code generated by the terminal in response to a keystroke. In other embodiments, the input code may be an EBCDIC code or a special input code, and the input code may be longer or shorter than 8 bits. Similarly, in this example, the display code is an ASCII code extended by a special display control code, but other display codes such as an EBCDIC code or a special display code are also possible.

(2.ED101の構成要素) ED101は2つの主な構成要素、即ちメモリー103とプロ
セッサ105を有する。プロセッサ105はメモリー103に対
してアドレスを提供し、メモリー103のアドレスにより
指定される記憶場所からデータを取出し、あるいはメモ
リー103のアドレスにより指定される記憶場所にデータ
を記憶する。これらのアドレス指定、取出しおよび記憶
の諸操作は、プロセッサ105からメモリー103に対して伝
送されるアドレス、および両方向に伝送されるデータを
矢印記号により第1図に示されている。加えて、プロセ
ッサ105はメモリー103から取出されたデータについて諸
操作を実施し、入力装置109から入力コードを受取り、
ディスプレイ107に対して表示コードを与える。
(2. Components of ED 101) The ED 101 has two main components, that is, a memory 103 and a processor 105. The processor 105 provides an address to the memory 103, retrieves data from a storage location specified by the address of the memory 103, or stores the data in a storage location specified by the address of the memory 103. These addressing, fetching and storing operations are illustrated in FIG. 1 by the arrow symbols for the addresses transmitted from processor 105 to memory 103, and for the data transmitted in both directions. In addition, the processor 105 performs various operations on the data retrieved from the memory 103, receives input codes from the input device 109,
A display code is given to the display 107.

(2.1 メモリー103) メモリー103は、入力装置109から受取った入力コード
に応答してED101により修正されるべきデータ・コード
と、データ・コードの修正およびデイスプレイ107上に
おける修正の前後のデータ・コードの視覚的表示を指令
する命令を含んでいる1つ以上の編集テーブルと、ED10
1の制御のため使用される制御データとを含む。第1図
においては、メモリー103に保有される各種の情報が点
線のブロックにより示されている。DP127、メモリー103
およびプロセッサ105の間の情報の流れは、DP127、プロ
セッサ105および情報を表すブロック間の矢印により示
される。最初に作業バッファ113について見れば、この
作業バッファ113はDP127から受取った表示および(また
は)修正のためのデータ・コードを保有する。作業バッ
ファ113とDP127の間および作業バッファ113とプロセッ
サ105の間の矢印により示されるように、作業バッファ1
13はED101の作業開始時にデータ・コードをDP127から受
取り、ED101の動作が終ると同時にデータ・コードをDP1
27に戻す。ED101の動作中、プロセッサ105は作業バッフ
ァ113に対してデータ・コードの読出し書込みを行な
う。
(2.1 Memory 103) The memory 103 stores the data code to be corrected by the ED 101 in response to the input code received from the input device 109, and the data code before and after the correction of the data code and the correction on the display 107. One or more editing tables containing instructions for commanding a visual display;
And control data used for the control of (1). In FIG. 1, various types of information stored in the memory 103 are indicated by dotted blocks. DP127, memory 103
And the flow of information between the processor 105 and the processor 105 is indicated by arrows between the DP 127, the processor 105, and blocks representing information. Turning first to working buffer 113, working buffer 113 holds data codes received from DP 127 for display and / or modification. As indicated by the arrows between work buffer 113 and DP 127 and between work buffer 113 and processor 105, work buffer 1
13 receives the data code from DP127 at the start of ED101 work, and at the same time the operation of ED101 ends, the data code is DP1.
Return to 27. During the operation of the ED 101, the processor 105 reads and writes data codes from and to the work buffer 113.

制御データ115は、プロセッサ1050がデイスプレイ107
をして作業バッファ113の内容を表示させたり入力装置1
09からの入力コードに応答してこの内容を修正する時に
プロセッサ105を制御するために使用するデータを保持
する。制御データ115におけるデータは2つの主なソー
ス即ち外部制御データ(ECD)と内部制御データ(ICD)
とから与えられる。外部制御データ(ECD)117における
データはED101の動作の開始時にDP127により与えられ、
またED101の動作の終了時にDP127に対して戻すことがで
き、内部制御データ(ICD)119におけるデータはED101
の動作中に生成される。第1図の矢印が示すように、プ
ロセッサ105は制御データ115に関してデータの読出しお
よび書込みの両方が可能である。制御データ115に含ま
れるデータは、ED101が入力装置109から入力された特定
の入力コードと組み合せて対応する編集命令を得るべき
編集テーブル111内の記憶場所を決定する値である状態1
21と、作業バッファ113における編集対象のデータ・コ
ードの場所を指定する値であるBI123と、ディスプレイ1
07におけるカーソルの位置を決める値であるCP126とを
含んでいる。このように規定されたカーソルの位置はBI
123により指定される作業バッファ113内の記憶場所と対
応し、従ってCP126はBI123に依存し、ED101がBI123の値
を変更する時は常にCP126の値を変更する。メモリー103
に1つ以上の編集テーブル111を有する本発明の実施態
様においては、最後のETID125はED101がその時使用中の
編集テーブル111を規定する値である。
The control data 115 is transmitted from the processor 1050 to the display 107.
To display the contents of the work buffer 113 or the input device 1
The data used to control the processor 105 when modifying this content in response to the input code from 09 is retained. The data in control data 115 consists of two main sources: external control data (ECD) and internal control data (ICD).
And given from. Data in external control data (ECD) 117 is provided by DP 127 at the start of ED 101 operation,
At the end of the operation of the ED 101, the data can be returned to the DP 127, and the data in the internal control data (ICD) 119 is
Generated during the operation of. As indicated by the arrows in FIG. 1, the processor 105 is capable of both reading and writing data with respect to the control data 115. The data included in the control data 115 is a value that determines the storage location in the edit table 111 where the ED 101 should obtain the corresponding edit command in combination with the specific input code input from the input device 109.
21, BI123 which is a value specifying the location of the data code to be edited in the work buffer 113, and display 1
07, which is a value that determines the position of the cursor. The cursor position specified in this way is BI
Corresponds to the storage location in work buffer 113 specified by 123, and thus CP 126 depends on BI 123, and changes the value of CP 126 whenever ED 101 changes the value of BI 123. Memory 103
In an embodiment of the present invention having one or more edit tables 111, the last ETID 125 is a value that defines the edit table 111 that the ED 101 is currently using.

編集テーブル111は、入力装置109からの入力コードに
応答して如何にしてプロセッサ105が作業バッファ113の
内容および(または)制御データ115における値を修正
するか、また如何にしてプロセッサ105がディスプレイ1
07をこのような修正に応答させるかを決定する一連の編
集命令を含んでいる。プロセッサ105は編集テーブル111
から編集命令を読出すことができるが、編集テーブル11
1を修正することはできない。第1図の矢印により示さ
れるように、本発明のいくつかの実施態様においてはDP
127はED101の動作開始時に編集テーブル111をED101に対
して与えることができ、また他の実施態様においては編
集テーブル111はED101に帰属する読出し専用メモリーに
保有することもできる。
The edit table 111 shows how the processor 105 modifies the contents of the work buffer 113 and / or the values in the control data 115 in response to the input code from the input device 109, and how the processor 105
It contains a series of editing commands that determine whether 07 responds to such modifications. The processor 105 has an editing table 111
Can be read from the editing table 11
1 cannot be modified. As shown by the arrows in FIG. 1, in some embodiments of the present invention, the DP
127 can provide the edit table 111 to the ED 101 at the start of the operation of the ED 101, and in another embodiment, the edit table 111 can be held in a read-only memory belonging to the ED 101.

(2.2 編集テーブル111の内容の全体的説明−第2図) 次に第2図に含まれる編集テーブル111の内容の全体
について述べれば、本例における編集テーブル111は下
記の部分を有することが判る。即ち、 * 編集テーブル111における編集命令シーケンスの位
置指定のためプロセッサ105により使用される情報を含
むロケータ情報201 * 状態121の所定の値と対応する1組の編集命令シー
ケンスの位置指定のためプロセッサ105により使用され
る情報を含むディスパッチ・テーブル203 * ED101が作動を開始するとき実行される編集命令シ
ーケンスを保有する初期シーケンス205 * ED101が作動を終了する時実行される編集命令シー
ケンスを保有する最終シーケンス207 * 作業バッファ113に保有されるデータ・コードと対
応する編集命令シーケンスを保有する表示シーケンス20
9 * 入力装置109からの入力コードの値および状態121の
値と対応する組をなす編集命令シーケンスを保有するバ
ッファ編集シーケンス211。第2図から判るように、状
態121の所定の値と対応する全ての編集命令シーケンス
は状態121のこの値に対して単一のバッファ編集シーケ
ンス213として分類される。
(2.2 General Description of Contents of Edit Table 111—FIG. 2) Next, referring to the entire contents of edit table 111 included in FIG. 2, it can be understood that edit table 111 in this example has the following parts. . The locator information 201 includes information used by the processor 105 to specify the position of the edit instruction sequence in the edit table 111. Dispatch table 203 containing the information used by ED101 * Initial sequence 205 containing the edit instruction sequence that is executed when ED101 starts operating * Final sequence holding the edit instruction sequence executed when ED101 ends operating 207 * Display sequence 20 holding an edit instruction sequence corresponding to the data code held in work buffer 113
9 * A buffer editing sequence 211 holding an editing command sequence that forms a set corresponding to the value of the input code from the input device 109 and the value of the state 121 As can be seen from FIG. 2, all edit instruction sequences corresponding to a given value in state 121 are classified as a single buffer edit sequence 213 for this value in state 121.

バッファ編集シーケンス211および表示シーケンス209
に保有される編集命令シーケンスは、第2図における編
集命令シーケンス215により表わされる。本例において
は、編集命令シーケンス215は一連のバイトである。最
初の2つのバイト即ちLV219およびUV221は編集命令シー
ケンス215が有効である8ビットのコードの範囲を規定
し、3番目のバイト、即ちサイズ223はLV219、UV221お
よびサイズ223を除く編集命令シーケンス215におけるバ
イト数を規定し、残るバイトは編集命令バイト225であ
る。編集命令バイト225は入力装置109からの入力コード
入力または作業バッファ113からのデータ・コードに対
するプロセッサ105の応答を制御する。編集命令バイト2
25は命令コードおよびオペランドを規定することができ
る。オペランドは、制御データ115に記憶された変数で
あるか、もしくはリテラル値である。
Buffer edit sequence 211 and display sequence 209
Are represented by the edit command sequence 215 in FIG. In this example, the edit instruction sequence 215 is a series of bytes. The first two bytes, LV219 and UV221, define the range of 8-bit code for which the edit instruction sequence 215 is valid, and the third byte, size 223, in the edit instruction sequence 215 excluding LV219, UV221 and size 223. The number of bytes is defined, and the remaining bytes are edit command bytes 225. Edit command byte 225 controls the response of processor 105 to input code input from input device 109 or data code from work buffer 113. Edit instruction byte 2
25 can define an instruction code and an operand. The operand is a variable stored in the control data 115 or a literal value.

初期シーケンス205および最終シーケンス207における
編集命令シーケンスは表示シーケンス209およびバッフ
ァ編集シーケンス211の編集命令シーケンスと類似する
が、LVバイト219、UVバイト221、サイズ・バイト223の
いずれも持たない。
The editing command sequence in the initial sequence 205 and the final sequence 207 is similar to the editing command sequence in the display sequence 209 and the buffer editing sequence 211, but does not have any of the LV byte 219, the UV byte 221 and the size byte 223.

(3.ED101の動作の全体的説明) ED101の動作は、DP127がED101の使用を要求する諸操
作を実施するプログラムを実行する時に始動される。こ
のプログラムの制御下において、DP127は作業バッファ1
13に対するデータ・コードと、作業バッファ113内の記
憶場所を指定するBI123に対する値を少なくとも含むECD
117に対する値を提供する。1つ以上の編集テーブル111
を有する実施態様においては、ECD117はまたED101が使
用可能な編集テーブル111の1つを指定するETID125に対
する値も含むことができる。
(3. General Description of Operation of ED101) The operation of the ED101 is started when the DP 127 executes a program that performs operations that require the use of the ED101. Under the control of this program, DP127
An ECD that contains at least a data code for 13 and a value for BI123 that specifies a storage location in work buffer 113
Provides a value for 117. One or more editing tables 111
In an embodiment having an ECD 117, the ECD 117 may also include a value for the ETID 125 that specifies one of the edit tables 111 available to the ED 101.

ED101が動作を開始する時、EDは最初に状態121を初期
値0に初期化し、次いで編集テーブル111内の初期シー
ケンス205の位置指定を行ない、初期シーケンス205に含
まれる全ての編集命令を実行する。次に、ED101はディ
スプレイ107に作業バッファ113の内容を表示する。ED
は、作業バッファ113に置かれたデータ・コードを一時
に1つずつ検索し、各データ・コード毎にこれに対応す
る表示シーケンス209における編集命令シーケンス225を
位置指定することによりこれを行なう。EDは次に表示シ
ーケンス209における前記シーケンスを実行し、また前
記データ・コードに対応する1つ以上の表示コードを生
成することによりこれに応答する。この時、ディスプレ
イ107は前記表示コードに応答して視覚的表示を生成す
る。例えば、もしあるデータ・コードが印刷可能なASCI
I文字を表わすものであれば、これらの文字に対する編
集命令シーケンス225はこの文字に対する表示コードを
生成する。他の場合は更に複雑である。例えば、ASCII
タブ文字と対応する編集命令シーケンス225はED101をし
て次のタブ・ストップと対応するディスプレイ107上の
位置に達するのに必要な数のブランク表示コードを生成
する。ED101が完了すると、ディスプレイ107は作業バッ
ファ113中のBI123により指定された場所と対応するディ
スプレイ107上の場所のカーソルを含む作業をバッファ1
13の内容の表示を行なう。
When the ED 101 starts operation, the ED first initializes the state 121 to the initial value 0, then specifies the position of the initial sequence 205 in the editing table 111, and executes all the editing instructions included in the initial sequence 205. . Next, the ED 101 displays the contents of the work buffer 113 on the display 107. ED
Performs this operation by retrieving the data codes placed in the work buffer 113 one at a time, and by specifying the editing instruction sequence 225 in the display sequence 209 corresponding to each data code. The ED then executes the sequence in display sequence 209 and responds by generating one or more display codes corresponding to the data codes. At this time, the display 107 generates a visual display in response to the display code. For example, if the data code is printable by ASCI
If it represents an I character, the edit instruction sequence 225 for these characters generates a display code for this character. Other cases are more complicated. For example, ASCII
The edit instruction sequence 225 corresponding to the tab character generates the required number of blank display codes to cause the ED 101 to reach the position on the display 107 corresponding to the next tab stop. When the ED 101 is completed, the display 107 buffers the work including the cursor at the location on the display 107 corresponding to the location specified by the BI 123 in the work buffer 113.
Display the contents of 13.

ED101はここで入力装置109から入力コードを受取り、
これらのコードに従って作業バッファ113の内容および
制御データ115の値を修正し、ディスプレイ107にこれら
の修正の結果の表示を開始する用意ができる。
The ED 101 receives the input code from the input device 109 here,
According to these codes, the contents of the work buffer 113 and the value of the control data 115 are corrected, and the display 107 is ready to start displaying the results of these corrections.

下記においては、異なる程度の複雑さを有する3つの
操作について記述する。これら操作の最初のものはMOVE
であり、即ちBI123およびCP126の値を変更し、ディスプ
レイ107上のカーソルをBI123とCP126と対応する位置に
移動させる。2番目のSEARCHは作業バッファ113におけ
るデータ・コードの位置指定を行ない、BI123とCP126の
値を変更してそのデータ・コードの場所を指定し、ディ
スプレイ107上のカーソルをデータ・コードの位置まで
移動させる。3番目のINSERTは作業バッファ113中のカ
ーソルにより指定される位置にデータ・コードを挿入
し、作業バッファ113の修正された内容をディスプレイ1
07に表示させる。
In the following, three operations with different degrees of complexity will be described. The first of these operations is MOVE
That is, the values of BI123 and CP126 are changed, and the cursor on the display 107 is moved to a position corresponding to BI123 and CP126. The second SEARCH specifies the position of the data code in the work buffer 113, changes the values of BI123 and CP126 to specify the position of the data code, and moves the cursor on the display 107 to the position of the data code. Let it. The third INSERT inserts the data code at the position specified by the cursor in the work buffer 113, and displays the corrected contents of the work buffer 113 on the display 1.
Display at 07.

(3.1 MOVE操作) MOVE操作、例えばカーソルをディスプレイ107におい
て右方に1位置だけ移動して新たなカーソル位置と対応
するように値BI123およびCP126を変更するMOVE操作の実
施のため、入力装置109のあるキーボード・バージョン
のユーザはカーソル移動キーを打鍵する。このキーの打
鍵によって、ユーザはED101に対しこのキーと対応する
入力コードを送出する。プロセッサ105はこの入力コー
ドを受取り、この入力コードおよび状態121のその時の
値即ち0を用いて、状態=0 213に対するバッファ編集
シーケンスにおいてこの入力コードに対する編集命令シ
ーケンス215の位置指定を行なう。このように位置指定
された編集命令シーケンス215は、作業バッファ113にお
いて1つ右方のデータ・コードを表示するようにED101
にBI12の値を修正させる命令を含んでいる。次に、ED10
1はBI123の以前の位置におけるデータ・コードと対応す
る表示コードと、BI123の以前の位置と新たな位置との
間の全てのデータ・コードと対応する表示コードと、BI
123の新たな位置におけるデータ・コードと対応する表
示コードとを表示することにより、BI123における値の
変化を反映させるようにディスプレイ107を更新する。
この表示コードは作業バッファ113から各データ・コー
ドをとり、各データ・コード毎に表示シーケンス209に
おけるこのデータ・コードと対応する編集命令シーケン
ス215を実行することによって生成される。印刷可能な
表示コードに対する編集命令シーケンス215が実行され
る毎に、ED101がCP126の値を変更し、その結果表示操作
の終りには、CP126はBI123により指定される作業バッフ
ァ113内の1つのデータ・コードと対応するディスプレ
イ107における視覚的表示の場所を表示する。表示操作
の終りに、カーソルの視覚的表示がCP126の値により指
定される場所においてディスプレイ107に対して出力さ
れる。このように、MOVE操作の終りにおいては、カーソ
ルがディスプレイ107の所要の場所にあり、BI123および
CP126の値はこの場所と対応している。
(3.1 MOVE Operation) In order to perform a MOVE operation, for example, move the cursor to the right by one position on the display 107 and change the values BI123 and CP126 so as to correspond to the new cursor position, the input device 109 is operated. One keyboard version of the user taps a cursor movement key. By pressing this key, the user sends an input code corresponding to this key to the ED 101. Processor 105 receives this input code and uses this input code and the current value of state 121, ie, 0, to specify the position of edit instruction sequence 215 for this input code in the buffer edit sequence for state = 0213. The edit instruction sequence 215 positioned in this manner causes the ED 101 to display the data code to the right in the work buffer 113 by one.
Contains an instruction to modify the value of BI12. Next, ED10
1 is the display code corresponding to the data code at the previous position of BI123, the display code corresponding to all data codes between the previous position and the new position of BI123,
The display 107 is updated to reflect the change in the value in BI 123 by displaying the data code and the corresponding display code at the new position of 123.
The display code is generated by taking each data code from the work buffer 113 and executing an edit instruction sequence 215 corresponding to this data code in the display sequence 209 for each data code. Each time the edit instruction sequence 215 for the printable display code is executed, the ED 101 changes the value of the CP 126, so that at the end of the display operation, the CP 126 has one data in the work buffer 113 specified by the BI 123. -The location of the visual display on the display 107 corresponding to the code is displayed. At the end of the display operation, a visual representation of the cursor is output to the display 107 at the location specified by the value of CP 126. Thus, at the end of the MOVE operation, the cursor is at the required location on the display 107 and BI123 and
The value of CP126 corresponds to this location.

(3.2 順方向探索操作) 本文において論述するこの探索操作は順方向探索操作
である。この操作は、その時のカーソル位置から与えら
れた入力コードと対応する1つのデータ・コードを見出
すまで作業バッファ113を順方向に探索する。順方向探
索操作の実施のためには、ユーザは2つのキーの打鍵を
行なう。即ち、この操作を指定する探索キーと、探索す
ベきデータ・コードと対応する入力コードを指定する別
のキーである。
(3.2 Forward search operation) This search operation discussed in the text is a forward search operation. This operation searches the work buffer 113 in the forward direction until one data code corresponding to the given input code is found from the current cursor position. To perform a forward search operation, the user taps two keys. That is, a search key for specifying this operation and another key for specifying an input code corresponding to the data code to be searched.

この探索キーにより生成される入力コードと対応する
編集命令シーケンス215もまた、状態=0に対するバッ
ファ編集シーケンス211の部分にある。この編集命令シ
ーケンス215に応答して、ED101は状態121を予め定めた
値に設定する。そしてED101は探索すべきデータ・コー
ドを指定する次の入力コードを取出す。しかし、状態12
1の値は変更されているため、ED101は状態=0に対する
バッファ編集シーケンス213ではなく、状態121のその時
の値に対するバッファ編集シーケンス213に存在する入
力コードと対応する編集命令シーケンス215を位置指定
させる。この場所における編集命令シーケンス215は、E
D101がこの時のカーソル位置で始動して順方向に操作
し、作業バッファ113からのデータ・コードを探索すべ
きデータ・コードを指定する入力コードと対応するデー
タ・コードと比較することにより応答する命令を有す
る。もしED101が作業バッファ113内に一致するデータ・
コードを見出すならば、EDはBI123を作業バッファ113中
にこのデータ・コードの場所に再セットし、次いでディ
スプレイ107上にMOVE操作について述べた方法で作業バ
ッファ113の探索領域のデータ・コードの視覚的表示を
行ない、最後に状態121を0にリセットする。このよう
に、順方向探索操作の終りには、BI123、CP126およびデ
ィスプレイ107におけるカーソルは全て探索中の文字の
場所を指定する。
The edit instruction sequence 215 corresponding to the input code generated by this search key is also in the buffer edit sequence 211 for state = 0. In response to the edit command sequence 215, the ED 101 sets the state 121 to a predetermined value. The ED 101 then retrieves the next input code specifying the data code to be searched. But state 12
Since the value of 1 has been changed, the ED 101 positions the edit instruction sequence 215 corresponding to the input code existing in the buffer edit sequence 213 for the current value of the state 121, instead of the buffer edit sequence 213 for the state = 0. . The edit instruction sequence 215 at this location is E
D101 starts at the current cursor position and operates in the forward direction, responding by comparing the data code from work buffer 113 with the input code designating the data code to be searched and the corresponding data code. With instructions. If ED101 matches the data in work buffer 113
If the ED finds the code, it resets the BI 123 to the location of this data code in the working buffer 113, and then displays the data code on the display 107 in the search area of the working buffer 113 in the manner described for the MOVE operation. The target is displayed, and the state 121 is finally reset to 0. Thus, at the end of the forward search operation, the BI 123, the CP 126, and the cursor on the display 107 all specify the location of the character being searched.

(3.3 挿入操作) 最後に、挿入操作においては、入力コードにより指定
された一連のデータ・コードが作業バッファ113のカー
ソルにより指定される位置に挿入される。入力装置109
のユーザは、この操作の開始のため挿入キーを打鍵し、
次いで挿入されるデータ・コードと対応する入力コード
に対するキーを打鍵し、最後に挿入キーを再び打鍵して
この操作を終了させることによりこの操作を実施するこ
とができる。
(3.3 Insertion Operation) Finally, in the insertion operation, a series of data codes specified by the input code is inserted into the work buffer 113 at the position specified by the cursor. Input device 109
Of users hit the insert key to start this operation,
This operation can then be performed by tapping the key for the input code corresponding to the data code to be inserted and finally tapping the insert key again to terminate the operation.

ED101は下記のようにキーの打鍵に応答する。即ち、
最初に、挿入キーにより与えられた入力コードと対応す
る編集命令シーケンスが制御データ115における変数を
設定して、挿入操作が続行中であることを表示し、次い
でディスプレイ107上に作業バッファ113の内容を再表示
する。表示操作の一部として、ED101は挿入操作を表示
する変数値を検差でき、もし変数が挿入操作継続中であ
ることを表示するならば、ED101はディスプレイ107にお
ける表示を修正して挿入操作が進行中であることを表示
することができる。例えば、ある構成においては、ディ
スプレイは新たな文字の挿入のためカーソルの場所に1
つの「空白」を有し、他の場合には、ディスプレイは挿
入点においてこの文字を低輝度にする。
The ED 101 responds to key presses as follows. That is,
First, the edit instruction sequence corresponding to the input code given by the insert key sets a variable in control data 115 to indicate that the insert operation is continuing, and then displays the contents of work buffer 113 on display 107. Is displayed again. As part of the display operation, the ED 101 can detect the value of the variable indicating the insertion operation, and if the variable indicates that the insertion operation is continuing, the ED 101 corrects the display on the display 107 so that the insertion operation can be performed. It can indicate that it is in progress. For example, in one configuration, the display may be positioned one place at the cursor to insert a new character.
It has two "blanks", otherwise the display dims the character at the insertion point.

ユーザは次に、彼が挿入を希望する文字に対応する入
力装置109におけるキーを打鍵する。この挿入入力コー
ドに対する編集命令225は状態121をリセットしないの
で、実際の挿入操作を実施する編集命令シーケンス215
は状態=0に対するバッファ編集シーケンス213中にあ
る。ED101は、作業バッファ113中のBI123により指定さ
れた場所に入力コードと対応するデータ・コードを挿入
し、挿入された文字に続く位置を指定するためBI123を
更新し、前に述べた如くディスプレイ107において作業
バッファ113の影響された部分を再表示することにより
前記編集命令シーケンス215に対して応答する。ユーザ
が文字の挿入を終了すると、ユーザは再び挿入キーを打
鍵する。この時、実施される操作は前に述べた操作の逆
である。制御データ115における変数が挿入操作が続行
中であることを表示するため、ED101はこれがそうでな
いことを表示するように設定する。次いでED101はディ
スプレイ107上に作業バッファ113の内容を再表示する。
挿入操作が続行中でないため、ディスプレイ107におけ
る表示はもはやカーソルの場所において「空白」または
低輝度を表示することはない。
The user then taps a key on input device 109 that corresponds to the character he wants to insert. Since the edit command 225 for this insert input code does not reset the state 121, the edit command sequence 215 for performing the actual insert operation
Is in the buffer edit sequence 213 for state = 0. ED 101 inserts the data code corresponding to the input code at the location specified by BI 123 in work buffer 113, updates BI 123 to specify the position following the inserted character, and displays 107 as described earlier. Responds to the edit command sequence 215 by redisplaying the affected portion of the working buffer 113 at. When the user finishes inserting the character, the user presses the insert key again. The operation performed at this time is the reverse of the operation described above. Since the variable in the control data 115 indicates that the insertion operation is continuing, the ED 101 sets to indicate that this is not the case. Next, the ED 101 redisplays the contents of the work buffer 113 on the display 107.
Since the insertion operation is not ongoing, the display on the display 107 no longer displays "blank" or low brightness at the location of the cursor.

入力装置109のユーザは、区切り入力コードを生成す
る入力装置109のキーを打鍵することによりED101の使用
を完了したことを表示する。区切り入力コードは、ED10
1の使用の終了を表示するものとして編集テーブル111に
おいて定義されるものである。典型的な区切り入力コー
ドはASCIIのニューライン又はキャリッジリターンコー
ドでよい。状態=0に対するバッファ編集シーケンス21
3に含まれる区切り入力コードに対する編集命令シーケ
ンス215に応答して、ED101は入力装置109からの入力コ
ードの取出しを停止し、最終シーケンス207におけるED
命令バイト225を実行し、DP127に対して作業バッファ11
3の修正が終了したことを表示する。
The user of the input device 109 displays that the use of the ED 101 is completed by depressing a key of the input device 109 that generates the delimiter input code. The delimiter input code is ED10
This is defined in the edit table 111 to indicate the end of use of 1. A typical delimiter input code may be an ASCII newline or carriage return code. Buffer edit sequence 21 for state = 0
In response to the edit command sequence 215 for the delimiter input code included in 3, the ED 101 stops taking out the input code from the input device 109, and
Executes instruction byte 225 and sends work buffer 11 to DP127.
Indicates that modification of 3 is completed.

(4.ED101の別の実施態様) ED101の2つの主な構成要素はプロセッサ105とメモリ
ー103である。実際のディジタル・データ処理システム
においては、プロセッサ105とメモリー103はデータ処理
システムの種々の構成要素に基づいて実現することが可
能である。この構成のいくつかは以下の如くである。即
ち、 (単一CPUと単一メモリーを設けたシステムにおけるED1
01) 単一のCPUと該CPUからアクセス可能な単一のメモリー
を備えたディジタル・データ処理システムにおいては、
その単一のCPUがプロセッサ105として動作し、またこの
CPUのメモリーがメモリー103として動作する。この実施
態様は第3図に示される。
(4. Another Embodiment of ED101) The two main components of the ED101 are a processor 105 and a memory 103. In an actual digital data processing system, the processor 105 and the memory 103 can be implemented based on various components of the data processing system. Some of these configurations are as follows. In other words, (ED1 in a system with a single CPU and a single memory
01) In a digital data processing system with a single CPU and a single memory accessible by the CPU,
The single CPU operates as processor 105 and
The memory of the CPU operates as the memory 103. This embodiment is shown in FIG.

(CPU、IOPおよび共用メモリーを設けたシステムにおけ
るED101) 単一のメモリーと、これを共用する一方が汎用CPUで
あり他方が入出力を取扱う特殊目的のプロセッサである
入出力プロセッサ(IOP)である2つのプロセッサと、
を備えたディジタル・データ処理システムにおいては、
IOPがプロセッサ105として動作し、共用されるメモリー
がメモリー103として動作する。このような実施態様に
ついては第4図に示される。
(ED101 in a system with a CPU, IOP and shared memory) A single memory and an I / O processor (IOP) that shares it with a general-purpose CPU and the other is a special-purpose processor that handles I / O Two processors,
In a digital data processing system with
The IOP operates as the processor 105, and the shared memory operates as the memory 103. Such an embodiment is shown in FIG.

(「スマート」ターミナルにおけるED101) 最後に、「スマート」ターミナルを備えたディジタル
・データ処理システムにおいては、各ターミナルはそれ
自体のプロセッサとメモリーを保有する。従って、端末
プロセッサがプロセッサ105として機能し、また端末メ
モリーがメモリー103として機能する。このような実施
態様の一例は第5図に示されている。
(ED101 in "smart" terminals) Finally, in a digital data processing system with "smart" terminals, each terminal has its own processor and memory. Accordingly, the terminal processor functions as the processor 105, and the terminal memory functions as the memory 103. An example of such an embodiment is shown in FIG.

以下においては、前述の実施態様の各々について詳細
に記述する。本文に述べたものと異なるディジタル・デ
ータ処理システムにおけるED101の実施態様は当業者に
とっては明らかであろう。
In the following, each of the foregoing embodiments will be described in detail. Implementations of ED 101 in digital data processing systems different from those described herein will be apparent to those skilled in the art.

(4.1 単一のCPUと単一のメモリーを有するシステムに
おけるED101−第3図) 第3図は、単一のCPU303をを有するディジタル・デー
タ処理システムにおけるED101の一実施態様を示してい
る。CPU303はメモリー313に記憶された各命令を実行す
る。これら命令に応答して、CPU303はメモリー313にお
けるデータおよび命令のアドレスを生成し、CPU303に対
するデータおよび命令を取出し、メモリ313に対してデ
ータを書込む。CPU303は更に、2つの方法で制御信号に
応答するターミナル305に対する制御信号を生成する。
ターミナル305はメモリー313内の表示バッファ309にお
ける表示コードと対応する視覚的表示を行ない、またこ
のターミナルはターミナル305に対して入力されたデー
タを入力コード・バッファ311に対して書込む。従っ
て、全体として、表示バッファ309とターミナル305はデ
ィスプレイ107に相等し、入力コード・バッファ311とタ
ーミナル305は入力装置109に相当する。メモリー313は
更に少なくとも1つの編集テーブル111と、作業用バッ
ファ113と、制御データ115を保有する。更に、このメモ
リーはED命令シーケンス307を保有している。ED命令シ
ーケンス307は、CPU303が応答する一連の命令である。
これらの命令の実行の際、CPU303はED101におけるプロ
セッサ105について記述した方法でターミナル305からの
キー入力に応答し、その結果CPU303がED命令シーケンス
307を実行中、単一プロセッサのシステム301はED101と
して機能するのである。
(4.1 ED101 in System with Single CPU and Single Memory-FIG. 3) FIG. 3 illustrates one embodiment of ED101 in a digital data processing system with a single CPU 303. The CPU 303 executes each instruction stored in the memory 313. In response to these instructions, CPU 303 generates addresses for data and instructions in memory 313, retrieves data and instructions for CPU 303, and writes data to memory 313. CPU 303 further generates control signals for terminal 305 responsive to the control signals in two ways.
Terminal 305 provides a visual display corresponding to the display code in display buffer 309 in memory 313, and writes data input to terminal 305 to input code buffer 311. Thus, as a whole, the display buffer 309 and the terminal 305 correspond to the display 107, and the input code buffer 311 and the terminal 305 correspond to the input device 109. The memory 313 further has at least one edit table 111, a working buffer 113, and control data 115. In addition, the memory contains an ED instruction sequence 307. The ED instruction sequence 307 is a series of instructions to which the CPU 303 responds.
In executing these instructions, the CPU 303 responds to key inputs from the terminal 305 in the manner described for the processor 105 in the ED 101 so that the CPU 303
During the execution of 307, the uniprocessor system 301 functions as the ED101.

(4.2 IOPを有するシステムにおけるED101−第4図) 第4図は、1つのメモリー313を共用する2つのプロ
セッサ、即ちIOP403とCPU303を備えたディジタル・デー
タ処理システム401におけるED101の一実施態様を示して
いる。IOP403とCPU303の双方はメモリー313に記憶され
た各命令を実行する。CPU303とIOP403は1つのプログラ
ムの実行に介在するタスクを分割する。CPU303は、メモ
リー313からデータを読出し、これを処理し、これをメ
モリー313に対して戻すことによりその各命令に応答す
る。一方、IOP403はターミナル305の如き諸構成要素を
制御し、かかる要素とメモリー313間にデータを転送す
ることによりよりその各命令に対して応答する。
(4.2 ED101 in System with IOP-FIG. 4) FIG. 4 shows an embodiment of the ED101 in a digital data processing system 401 having two processors sharing one memory 313, namely, an IOP403 and a CPU303. ing. Both the IOP 403 and the CPU 303 execute each instruction stored in the memory 313. The CPU 303 and the IOP 403 divide tasks that intervene in the execution of one program. CPU 303 responds to each of its instructions by reading data from memory 313, processing it, and returning it to memory 313. On the other hand, IOP 403 controls various components such as terminal 305 and responds to each of its commands by transferring data between such components and memory 313.

IOP403およびCPU303は、CPU303とIOP403間の信号によ
り、またCPU303からIOP403に対する、またその逆方向の
メッセージを含むメモリー313における領域によりその
各操作を連携することができる。このようなシステムに
おいては、CPU303とIOP403は共働して下記の如き入出力
操作を実施する。即ち、CPU303において実行中のユーザ
・プログラム404がある入出力操作を指定する時、CPU30
3は、CPU−IOPメッセージ411にIOP403に対するメッセー
ジを置き、CPU−IOP信号415を介してIOP403に信号し、
入出力操作を指定するプログラムの実行を保留すること
によりこのプラグラムに応答する。CPU−IOPメッセージ
411内のメッセージは、IOP403がCPU303のために実施す
べき操作、およびIOP403がデータを入出するメモリー31
3における場所を少なくとも指定する。IOP403がCPU303
から信号を受取ると、IOPはCPU−IOPメッセージ411で指
定された各操作の実施を開始する。IOP403が操作を終了
すると、IOPはIOP−CPUメッセージ409にCPU303に対する
戻しメッセージを置き、次いでIOP−CPU信号417を介し
てCPU303に信号する。CPU303は、入出力操作の実行を指
定するユーザ・プログラム404の実行を再開することに
より応答する。
The IOP 403 and the CPU 303 can cooperate with each other by a signal between the CPU 303 and the IOP 403, and by an area in the memory 313 including a message from the CPU 303 to the IOP 403 and in the opposite direction. In such a system, the CPU 303 and the IOP 403 cooperate to execute the following input / output operation. That is, when the user program 404 being executed in the CPU 303 specifies an input / output operation,
3 puts a message for IOP 403 in CPU-IOP message 411 and signals to IOP 403 via CPU-IOP signal 415,
Respond to this program by suspending execution of the program that specifies I / O operations. CPU-IOP message
The messages in 411 indicate the operations that IOP 403 should perform for CPU 303 and the memory 31 in which IOP 403 enters and exits data.
Specify at least the location in 3. IOP403 CPU303
Upon receiving a signal from the IOP, the IOP starts performing each operation specified in the CPU-IOP message 411. When the IOP 403 completes the operation, the IOP places a return message to the CPU 303 in the IOP-CPU message 409, and then signals the CPU 303 via the IOP-CPU signal 417. CPU 303 responds by resuming execution of user program 404 that specifies execution of the input / output operation.

IOP403およびメモリー313がED101の構成のため使用さ
れている時、メモリー313は作業バッファ113、編集テー
ブル111、表示バッファ309、入力バッファ311、ED命令
シーケンス307、ICD119およびECD117を含んでいる。第
4図における矢印が示すように、CPU303およびIOP403の
双方が作業バッファ113およびECD117に関してデータの
読出し書込みを行なうことができる。CPU303はデータを
CPU−IOPメッセージ411に対して書込み、データをIOP−
CPUメッセージ409から読出す。IOP403は単独で編集テー
ブル111から編集命令シーケンス215を読出し、データを
ICD119に対して読み出し、かつ書込み、データをIOP−C
PUメッセージ409に対して書込み、表示バッファ309およ
び入力バッファ311を使用し、ED命令シーケンスを使用
し、ターミナル305を制御する。
When the IOP 403 and the memory 313 are used for the configuration of the ED 101, the memory 313 includes a working buffer 113, an edit table 111, a display buffer 309, an input buffer 311, an ED instruction sequence 307, an ICD 119 and an ECD 117. As indicated by the arrows in FIG. 4, both the CPU 303 and the IOP 403 can read and write data with respect to the work buffer 113 and the ECD 117. CPU 303 stores data
Write to CPU-IOP message 411 and write data to IOP-
Read from CPU message 409. The IOP 403 reads the edit command sequence 215 from the edit table 111 by itself and
Read and write data to ICD119 and IOP-C data
Write to PU message 409, use display buffer 309 and input buffer 311 and use ED instruction sequence to control terminal 305.

記述したばかりのものと類似するED101の一実施態様
においてはED101は下記の如く作動する。即ち、CPU303
上で実行中のユーザ・プログラム404がED101と関連する
ある操作を実施する時、ユーザ・プログラム404中の各
命令はCPU303にED101で修正されるべきデータを作業バ
ッファ113に置かせ、修正を制御する情報をECD117内に
置かせる。CPU303はそこでIOP403に対するメッセージを
CPU−IOPメッセージ411に置き、IOP403に信号する。メ
ッセージ419は少なくとも3つの項目、即ちIOP403がED
命令シーケンス307における各命令を実行すべきことを
指定するプログラム識別子(PR−ID)およびこの実行中
に使用されるべきデータに対する2つのポインタを含ん
でいる。最初のポインタであるEC−PTRはECD117の記憶
場所を保有し、第2のポインタWB−PTRは作業バッファ1
13の記憶場所を保有する。1つ以上の編集テーブル111
を有する実施態様においては、メッセージ419は編集テ
ーブル111を指定するET−IDを更に保有している。
In one embodiment of the ED 101, similar to the one just described, the ED 101 operates as follows. That is, CPU303
When the user program 404 executing above performs certain operations associated with the ED 101, each instruction in the user program 404 causes the CPU 303 to place the data to be modified in the ED 101 in the work buffer 113 and control the modification. Information to be placed in the ECD117. CPU 303 then sends a message to IOP403
It is placed in the CPU-IOP message 411 and signals to the IOP 403. Message 419 contains at least three items: IOP403 is ED
It contains a program identifier (PR-ID) that specifies that each instruction in the instruction sequence 307 is to be executed, and two pointers to data to be used during this execution. The first pointer, EC-PTR, holds the storage location of ECD 117, and the second pointer, WB-PTR, holds the working buffer 1
Holds 13 storage locations. One or more editing tables 111
In an embodiment having a message 419, the message 419 further contains an ET-ID specifying the edit table 111.

IOP403はそこで、作業バッファ113と、ECD117と、CPU
303からのメッセージで指定される編集テーブル111を用
いてED命令シーケンス307を実行することによりCPU303
からの信号に応答する。この実行は前述の如くに進行す
る。IOP403はED命令シーケンス307の実行を終了する
時、IOP−CPUメッセージ409に終了したことを表示する
メッセージを置き、IOP−CPU信号417を介してCPU303に
信号する。
The IOP 403 then has a working buffer 113, an ECD 117, and a CPU
The CPU 303 executes the ED instruction sequence 307 using the editing table 111 specified by the message from the 303.
Responds to signals from This execution proceeds as described above. When ending the execution of the ED instruction sequence 307, the IOP 403 places a message indicating the end in the IOP-CPU message 409, and signals the CPU 303 via the IOP-CPU signal 417.

(4.3 「スマート」ターミナルにおけるED101−第5
図) 第5図は、「スマート」ターミナル、即ちそれ自体の
プロセッサおよびメモリーを含むターミナルにおけるED
101の一実施態様を示している。「スマートターミナ
ル」を有するシステムにおいてはCPU303とメモリー313
が存在し、CPU303は1つ以上の「スマート」ターミナル
502に対して接続されている。CPU303と「スマート」タ
ーミナル502間の接続により、CPU303が制御信号および
データを「スマート」ターミナル502に対して送出し、
かつ「スマート」ターミナル502から制御信号およびデ
ータを受取ることを可能にする。「スマート」ターミナ
ル502はディスプレイ107および入力装置109を含むのみ
ならず、端末プロセッサ503と端末メモリー505も含んで
いる。端末プロセッサ503は端末メモリー505に記憶され
た諸命令を実行する。これらの命令に応答して、端末プ
ロセッサ503は、端末メモリー505中のデータおよび命令
をアドレスを生成し、端末プロセッサ503に対するデー
タおよび命令を取出し、データを端末メモリー505に書
込み、入力コードを入力装置109から得、ディスプレイ1
07を制御する。更に、端末プロセッサ503はCPU303から
の制御信号に応答し、CPU303からデータを受取り、CPU3
03に対してデータを与える。
(4.3 ED101 at “Smart” Terminal-Fifth
FIG. 5 shows an ED in a "smart" terminal, i.e. a terminal containing its own processor and memory.
1 shows one embodiment of 101. In a system with a “smart terminal”, CPU 303 and memory 313
Exists and the CPU 303 has one or more “smart” terminals
Connected to 502. With the connection between the CPU 303 and the “smart” terminal 502, the CPU 303 sends control signals and data to the “smart” terminal 502,
And allow control signals and data to be received from the “smart” terminal 502. "Smart" terminal 502 not only includes display 107 and input device 109, but also includes terminal processor 503 and terminal memory 505. The terminal processor 503 executes the instructions stored in the terminal memory 505. In response to these instructions, terminal processor 503 generates an address for the data and instructions in terminal memory 505, retrieves the data and instructions for terminal processor 503, writes the data to terminal memory 505, and writes the input code to the input device. Display 1 from 109
Control 07. Further, the terminal processor 503 responds to a control signal from the CPU 303, receives data from the CPU 303,
Give data to 03.

「スマート」ターミナル502を備えたコンピュータ・
システムは下記の如く作動する。即ち、CPU303で実行中
のユーザ・プログラム404は「スマート」ターミナル502
を要求する操作を実施する時、「スマート」ターミナル
502により実行されるべき操作を識別するプログラム識
別子(PR−ID)および使用されるべきデータを含む端末
メッセージ513を生成することができる。このデータは
メモリー313ではなく端末メモリー505で操作されること
になるため、メモリー313のアドレスの代りに端末メッ
セージ513からのオフセットにより識別される。CPU303
はそこで端末プロセッサ503に対してデータを送ること
を信号し、端末メッセージ513およびこれと関連するデ
ータを端末プロセッサ503に転送する。データはオフセ
ットと対応する順序で送出され、端末プロセッサ503は
端末メッセージ513およびデータを受取った順序で既知
の場所から端末メモリー505にロードする。端末メッセ
ージ513がロードされた場所に対してオフセットを付加
することにより、端末プロセッサ503は端末メッセージ5
13の内容を端末メモリー505において位置決めすること
ができる。端末プロセッサ503が端末メッセージ513にお
いて指定された全てのデータを受取った時、このプロセ
ッサは端末メッセージ513中のPR−IDにより指定された
操作を実施する。この操作が完了した時、CPU303に対し
てデータを送ることを信号し、このデータを戻すのであ
る。
Computer with "smart" terminal 502
The system works as follows. That is, the user program 404 running on the CPU 303 is
When performing operations that require a "smart" terminal
A terminal message 513 can be generated that includes a program identifier (PR-ID) identifying the operation to be performed by 502 and data to be used. Since this data is operated in the terminal memory 505 instead of the memory 313, the data is identified by an offset from the terminal message 513 instead of the address of the memory 313. CPU303
Signals the terminal processor 503 to send data and forwards the terminal message 513 and its associated data to the terminal processor 503. The data is sent out in an order corresponding to the offset, and the terminal processor 503 loads the terminal message 513 and the data into the terminal memory 505 from a known location in the order in which they were received. By adding an offset to where terminal message 513 was loaded, terminal processor 503 causes terminal message 5
13 can be located in the terminal memory 505. When terminal processor 503 receives all the data specified in terminal message 513, it performs the operation specified by the PR-ID in terminal message 513. When this operation is completed, it sends a signal to the CPU 303 to send data, and returns this data.

「スマート」ターミナル502を備えたシステムにおけ
るED101の実施態様においては、端末メモリー505はED命
令シーケンス307、編集テーブル111およびICD119を含む
ことができる。CPU303で実行中のユーザ・プログラム40
4はそこで、そのPR−IDがED命令シーケンス307を指定し
かつ端末メッセージ513に関するECD117と作業バッファ1
13の記憶場所を規定するオフセットを保有する端末メッ
セージ513を用意することによりED101を使用することが
できる。次いでCPU303は端末メッセージ513、外部制御
用データ509および編集されるべきデータ507を「スマー
ト」ターミナル502に対して送出する。端末メモリー502
においては外部制御用データはECD117に対する端末メッ
セージ513で指定された記憶場所にあり、編集されるべ
きデータ507は作業バッファ113に対して端末メッセージ
513で指定された記憶場所にある。そして、「スマー
ト」ターミナル502は編集されるべきデータ507と外部制
御用データ509を用いてED命令シーケンス307を実行し、
この実行が終了した時データをCPU303に戻す。
In an embodiment of the ED 101 in a system with a “smart” terminal 502, the terminal memory 505 may include an ED instruction sequence 307, an edit table 111, and an ICD 119. User program 40 running on CPU 303
4 then the ECD 117 for the terminal message 513 and the working buffer 1 whose PR-ID specifies the ED instruction sequence 307.
The ED 101 can be used by preparing a terminal message 513 having offsets defining 13 storage locations. CPU 303 then sends terminal message 513, external control data 509 and data 507 to be edited to "smart" terminal 502. Terminal memory 502
In, the data for external control is in the storage location specified by the terminal message 513 for the ECD 117, and the data 507 to be edited is stored in the terminal message for the work buffer 113.
It is in the storage location specified by 513. Then, the “smart” terminal 502 executes the ED instruction sequence 307 using the data 507 to be edited and the data 509 for external control,
When this execution is completed, the data is returned to the CPU 303.

ED101の他の実施態様の場合の如く、「スマート」タ
ーミナル502におけるED101のいくつかの実施態様は種々
の編集テーブル111を使用することができる。このよう
に実施態様においては、ECD117は更に特定の編集テーブ
ル111を指定するET−ID125を保有する。端末メモリー50
5は種々の編集テーブル111を保有することができ、ET−
ID125により指定される編集テーブル111はこれらのテー
ブルの1つでよい。もしそうでない場合は、ET−ID125
により指定される編集テーブル111はメモリー313から得
ることもできる。メモリー313から編集テーブル111を得
るための機構は変更可能である。例えば、ある場合にお
いて、ある1つのデータ・パケットの送出コストがパケ
ットが一杯の状態であるかどうかに拘わらず同じである
パケットネットワークにおいては、CPU303は常にET−ID
125により指定される編集テーブル111を、編集されるべ
きデータ507および外部制御用データ509と共に「スマー
ト」ターミナル502に対して送出することができる。換
言すれば、メモリー313は、各々の「スマート」ターミ
ナル502がその端末メモリー505において有する編集テー
ブル111を指定するテーブルを保有でき、このテーブル
が要求することを表示する場合にのみその要求された編
集テーブル111を提供することができる。更にまた、ED
命令シーケンス307は、もし端末メモリー505において使
用可能でなければ、CPU303に適正な編集テーブル111を
要求することにより端末プロセッサ503が応答する一連
の命令を有する。
As with other embodiments of the ED 101, some embodiments of the ED 101 in the “smart” terminal 502 can use various editing tables 111. Thus, in an embodiment, the ECD 117 also has an ET-ID 125 that specifies a particular editing table 111. Terminal memory 50
5 can hold various editing tables 111, ET-
The editing table 111 specified by the ID 125 may be one of these tables. If not, ET-ID125
Can be obtained from the memory 313. The mechanism for obtaining the editing table 111 from the memory 313 can be changed. For example, in some cases, in a packet network where the transmission cost of a data packet is the same regardless of whether the packet is full, the CPU 303 always has the ET-ID
The edit table 111 specified by 125 can be sent to the "smart" terminal 502 along with the data 507 to be edited and the external control data 509. In other words, the memory 313 can hold a table that specifies the editing table 111 that each "smart" terminal 502 has in its terminal memory 505, and only if this table indicates that it requires that editing table 111 A table 111 can be provided. Furthermore, ED
Instruction sequence 307 comprises a series of instructions to which terminal processor 503 responds by requesting appropriate edit table 111 from CPU 303, if not available in terminal memory 505.

無論、IOP403を有するデイジタル・データ処理システ
ムもまた「スマート」ターミナル502を有することがで
きる。このようなシステムにおいては、IOP403は前に述
べたばかりのシステムにおけるCPU303と同じ「スマー
ト」ターミナル502に対する関係を有する。各システム
間の主な相違は、IOP403が端末メッセージ513を形成せ
ず、その代りにこれをIOP403が関連するCPU303から受取
ることである。
Of course, a digital data processing system having an IOP 403 may also have a “smart” terminal 502. In such a system, IOP 403 has the same relationship to "smart" terminal 502 as CPU 303 in the system just described. The main difference between each system is that the IOP 403 does not form a terminal message 513, but instead receives it from the associated CPU 303.

(4.4 多重プログラミング・システムに基づくED101の
実施態様) ここまで説明してきたED101の構成においては、ED101
は物理的なプロセッサおよびメモリーにより実現されて
きた。しかし、多重プログラミング型デイジタル・デー
タ・システムにおいては、ED101は1つのプロセス手段
により実施することができる。以下においては多重プロ
グラミング型システムおよびプロセスについて記述し、
次いで多重プログラミング・システムにおけるED101の
一実施態様について記述する。
(4.4 Embodiment of ED101 Based on Multiple Programming System) In the configuration of ED101 described so far, ED101
Has been implemented with physical processors and memory. However, in a multi-programming digital data system, the ED 101 can be implemented by one process means. The following describes multi-programming systems and processes,
Next, one embodiment of the ED 101 in a multi-programming system will be described.

(4.4.1 多重プログラミング型デイジタル・データ・
システムおよびプロセス) 多重プログラミング型デイジタル・データ・システム
は、異なるユーザに対するプログラムを明らかに同時に
実行するデイジタル・データ・システムである。このよ
うなシステムにおいては、各ユーザは、実際には他のユ
ーザとCPUおよびメモリーを共用しているにも拘らず、
あたかも彼一人のみがCPUおよびメモリーのアクセスお
行なうかのような錯覚を有する。プロセスは、多重プロ
グラミング型デイジタル・データ・システムが一人のユ
ーザに対して1つのプログラムを実行する手段である。
各プロセスは、一人のユーザに対する1つのプログラム
の実行と関連する記憶の領域からなる。この記憶領域は
CPUでプログラムを実行するため必要な値を保有してい
る。これらの値は、ユーザのために実行中のプログラム
において実行されるべき次の命令の場所を指定する少な
くとも1つの値、およびプログラムの実行中にその時使
用中のデータが記憶される記憶場所を指定する値を含ん
でいる。多重プログラミング型デイジタル・データ処理
システムは更に、プロセスに帰属する記憶領域から、与
えられたプロセスの実行に必要な値をCPUに対してロー
ドすることによりCPUが応答するプロセス管理プログラ
ムと呼ばれるプログラムを保有する。一旦値がロードさ
れると、CPUはプロセスの記憶領域中の指定された場所
においてユーザに対するプログラムの実行を開始する。
実行が継続する時、次に実行されるべき命令の記憶場所
を指定する値およびデータの記憶にその時使用される記
憶場所を指定する値は変化する。暫時実行が継続した
後、そのプロセスがCPUの1回の使用について許容され
る最長時間量、あるいはプロセスが実行中のプログラム
が実行の結果を待たなければならない入出力操作の如き
操作を実施したことのようないくつかの理由によりプロ
セス割込みが生じる。このようなプロセス割込みと同時
に、CPUは自動的にプロセス管理命令を実行し、これら
命令はCPUからプロセスをアンロードする、即ち、これ
ら命令はデータの記憶のためこの時使用の記憶場所に対
する値、および次に実行されるべき命令のこの時の記憶
場所に対する値をメモリーにおけるプロセス領域に戻す
のである。そしてプロセス管理命令は別のプロセスの記
憶領域からの相当値をCPUにロードし、このプロセスの
プログラムは前に述べたように実行される。このよう
に、実行中の各プロセスはCPUに対するアクセスを得、
これがアクセスされる間、そのプログラムの実行は進行
する。多数のプロセスが短い期間にCPU上で実行される
ため、システムのユーザにとってはCPUが同時に多数の
プロセスを実行中であるかに見えるのである。
(4.4.1 Multi-programming type digital data
Systems and Processes A multi-programming digital data system is a digital data system that executes programs for different users, apparently simultaneously. In such a system, each user actually shares CPU and memory with other users,
It has the illusion that only one of them accesses the CPU and memory. A process is a means by which a multiprogramming digital data system executes one program for one user.
Each process consists of an area of storage associated with the execution of one program for one user. This storage area
Contains the values required to execute a program on the CPU. These values specify at least one value that specifies the location of the next instruction to be executed in the running program for the user, and the location where the data currently in use is stored during the execution of the program. Contains the value to be used. The multi-programming type digital data processing system further has a program called a process management program that the CPU responds to by loading values necessary for executing the given process from the storage area belonging to the process to the CPU. I do. Once the values have been loaded, the CPU starts executing the program for the user at the designated location in the storage area of the process.
As execution continues, the value specifying the memory location of the next instruction to be executed and the value specifying the memory location then used to store data will change. After the temporary execution, the process has performed an operation such as the maximum amount of time allowed for a single use of the CPU, or an I / O operation in which the program in which the process is running must wait for the result of execution. Process interrupts can occur for several reasons, such as: At the same time as such a process interrupt, the CPU automatically executes the process management instructions, which unload the process from the CPU, i.e., these instructions are the values for the current storage location for storing data, And the value for the current location of the next instruction to be executed is returned to the process area in memory. The process management instruction then loads the corresponding value from the storage area of another process into the CPU, and the program for this process is executed as described above. In this way, each running process gains access to the CPU,
While this is being accessed, execution of the program proceeds. Because many processes run on the CPU in a short period of time, it appears to the user of the system that the CPU is running many processes at the same time.

プロセスは、プロセス間メッセージ(IPM)により相
互に連絡することができる。これらは、既に述べた物理
的プロセッサ間のメッセージと類似する。1つのプロセ
スがその操作の実施のため別のプロセスの実行を要求す
る時、最初のプロセスは2番目のプロセスに対して実施
されるべき操作およびデータを指定するIPMを生成し
て、2番目のプロセスが1つのIPMを有する旨をプロセ
ス管理プログラムに表示する。そこでプロセス管理プロ
グラムは、CPUおよびこのCPUに対してアクセスを行なう
ことのできるプロセスの組から最初のプロセスを取はず
し、2番目のプロセスをCPUに対してアクセスを行なう
プロセスの組に加える。2番目のプロセスがCPUロード
される時、このプロセスはメッセージに指定された操作
を実施する。これが完了すると、このプロセスは最初の
プロセスに対して操作が完了した旨の戻しIPMを送出
し、このIPMの受取りと同時にプロセス管理プログラム
は再び最初のプロセスがCPUに対してアクセスすること
を許容する。
Processes can communicate with each other by interprocess messages (IPM). These are similar to the messages between physical processors already described. When one process requests the execution of another process to perform its operation, the first process generates an IPM specifying the operations and data to be performed for the second process, Display to the process management program that the process has one IPM. Therefore, the process management program removes the first process from the CPU and a set of processes that can access the CPU, and adds the second process to the set of processes that access the CPU. When the second process is CPU loaded, it performs the operation specified in the message. When this is complete, the process sends a return IPM to the first process indicating that the operation has been completed, and upon receipt of this IPM, the process manager again allows the first process to access the CPU. .

プロセスは特殊化された機能を有し、例えば、1つの
プロセスは全ての入出力装置を管理することができる。
このようなプロセスは時として周辺装置管理プロセス
(PMGR)と呼ばれる。これらの装置の使用を欲する他の
プロセスはIPMをPMGRプロセスに対して送出し、そこでP
MGRプロセスはその制御下で入出力装置をして前記IPMに
指定されたデータに関してIPMに指定された諸操作を実
施させる。
Processes have specialized functions, for example, one process can manage all I / O devices.
Such a process is sometimes called a Peripheral Device Management Process (PMGR). Other processes that want to use these devices send IPM to the PMGR process, where P
The MGR process, under its control, causes the input / output device to perform operations specified by the IPM on the data specified by the IPM.

プロセスはまた、1つ以上の処理装置を含むデイジタ
ル・データ処理システムに存在することができる。例え
ば、いくつかのCPUを有するデイジタル・データ処理シ
ステムにおいては、各CPUは異なるプロセスの実行が可
能である。IOPを有するデイジタル・データ処理システ
ムにおいては、前述のPMGRプロセスは専らIOPにおいて
実行することができ、また「スマート」ターミナルを有
するデイジタル・データ処理システムの場合は、各ター
ミナルは個々のプロセスとして取扱うことができる。こ
のようなシステムにおいては、端末メッセージ513は1
つのIPMに相当する。
A process can also reside in a digital data processing system that includes one or more processing devices. For example, in a digital data processing system having several CPUs, each CPU can execute a different process. In a digital data processing system with an IOP, the aforementioned PMGR process can be performed exclusively in the IOP, and in a digital data processing system with a "smart" terminal, each terminal should be treated as an individual process. Can be. In such a system, the terminal message 513 is 1
Equivalent to one IPM.

(4.4.2 PMGRプロセスにおけるED101−第6図) プロセス間の関係はプロセスの機能の如何に拘らず、
あるいはどの処理装置がこれを実行するかに拘らず同じ
であるため、本文において詳細に検討する多重プログラ
ミング型デイジタル・データ処理システムにおけるED10
1の唯一の実施態様は、ED命令シーケンス307がPMGRプロ
セスにより実行されるものである。このような実施態様
は、PMGRプロセスがターミナルを制御するという事実の
論理的結果である。
(4.4.2 ED101 in PMGR process-Fig. 6) Regardless of the function of the process,
Alternatively, the ED10 in a multi-programming digital data processing system, discussed in detail in the text, is the same regardless of which processing unit performs this.
One only embodiment is where the ED instruction sequence 307 is executed by a PMGR process. Such an embodiment is a logical consequence of the fact that the PMGR process controls the terminal.

第6図は、PMGRプロセスを有する多重プログラミング
・システム601において実施されたED101を示している。
多重プログラミング・システム601は、メモリー313、CP
U303および少なくとも1つのターミナル305を有する。
多重プログラミング・システムにおけるメモリー313
は、1つのプロセスを記憶し他のプロセスをロードする
ためCPU303により実行される命令を含むプロセス管理命
令シーケンス603と、どのプロセスがCPU303に対してロ
ードされるべきかを決定するためプロセス管理命令シー
ケンス603の実行中に使用されるデータを含むプロセス
管理状態605を含んでいる。プロセス管理状態605におけ
るデータは、その時どのプロセスがCPU303に対しロード
できるかを表示する活動状態リスト602と、その時どの
プロセスがCPU303に対しロードできないかを表示する不
活動状態リスト604と、IPMを送出されたかどうかを示す
メッセージ・フラグ606を含むことができる。メモリー3
13は更に、プロセスにより実行される命令シーケンス
と、プロセスそのものとを含んでいる。命令シーケンス
は、第6図において、ユーザ・プログラム404、ED命令
シーケンス307およびIPM命令シーケンス623により示さ
れている。IPM命令シーケンス623は、IPMを送出する各
プロセスにより実行される。プロセスは、ユーザ・プロ
セス609およびPMGRプロセス621によって示される。各プ
ロセスは、少なくともプロセスがCPU303にロードされる
時このプロセスにより実行されるべき次の命令を指定す
るPC610と、この時使用中のデータの記憶場所を指定す
るDATA612を含んでいる。ユーザ・プロセス・データ608
はユーザ・プロセス609に対するDATA612により指定され
るデータを表示し、PMGRプロセス・データ622はPMGRプ
ロセス621に対するDATA612により指定されるデータを表
示する。
FIG. 6 shows an ED 101 implemented in a multi-programming system 601 having a PMGR process.
Multi-programming system 601, memory 313, CP
It has a U303 and at least one terminal 305.
Memory 313 in multi-programming systems
Is a process management instruction sequence 603 containing instructions to be executed by CPU 303 to store one process and load another process, and a process management instruction sequence to determine which process should be loaded to CPU 303. It includes a process management state 605 containing data used during the execution of 603. The data in the process management state 605 includes an active list 602 indicating which processes can be loaded into the CPU 303, an inactive list 604 indicating which processes cannot be loaded into the CPU 303, and an IPM. A message flag 606 may be included to indicate whether the event has occurred. Memory 3
13 further includes the instruction sequence executed by the process and the process itself. The instruction sequence is shown in FIG. 6 by the user program 404, the ED instruction sequence 307, and the IPM instruction sequence 623. The IPM instruction sequence 623 is executed by each process that sends out the IPM. The processes are represented by a user process 609 and a PMGR process 621. Each process includes at least a PC 610 that specifies the next instruction to be executed by this process when the process is loaded into the CPU 303, and a DATA 612 that specifies the location of the data currently in use. User process data 608
Displays the data specified by DATA 612 for user process 609, and PMGR process data 622 displays the data specified by DATA 612 for PMGR process 621.

CPU303内のレジスタは、その時実行中のプロセスに対
するプロセス実行状態611と、プロセス管理プログラム
に対するプロセス管理状態617を含んでいる。少なくと
も、プロセス実行状態611は、この時実行中の命令の場
所であるCPU−PG613と、この時実行中のプロセスがデー
タについて使用中の記憶場所であるCUR−DATA615を含ん
でいる。プロセス管理状態617は、そのCUR−PG値および
CUR−DATA値がその時プロセス実行状態611に対してロー
ドされているプロセスの実行に割込みが行なわれない時
は常に、CPU303としてプロセス管理命令シーケンス603
を自動的に実行させる情報を含んでいる。
The registers in the CPU 303 include a process execution state 611 for the currently executing process and a process management state 617 for the process management program. At least, the process execution state 611 includes the CPU-PG 613, which is the location of the instruction being executed at this time, and the CUR-DATA 615, which is the storage location used by the process being executed at this time for data. Process management state 617 indicates the CUR-PG value and
Whenever the CUR-DATA value is not interrupted by the execution of the process currently loaded for the process execution state 611, the process management instruction sequence 603 is executed by the CPU 303.
Contains the information that will be executed automatically.

第6図において、ユーザ・プロセス609は、ユーザ・
プロセス・データ608のED101に対して作業バッファ113
およびECD117を準備したユーザ・プログラム404の命令
を実行したばかりである。ED101はPMGRプロセス621によ
り実行されるため、ユーザ・プロセス609もIPM命令シー
ケンス623を実行してIPCデータ619にIPM620を形成し、
またそのIPM命令シーケンスの実行によりプロセス管理
状態605にメッセージ・フラグ606をセットしてメッセー
ジが送出されたことを表示する。
In FIG. 6, a user process 609 comprises a user
Work buffer 113 for ED101 of process data 608
And the instructions of the user program 404 that has prepared the ECD 117 have just been executed. Since ED101 is executed by PMGR process 621, user process 609 also executes IPM instruction sequence 623 to form IPM 620 in IPC data 619,
The execution of the IPM instruction sequence sets the message flag 606 in the process management state 605 to indicate that the message has been sent.

IPM620は、少なくともユーザ・プロセス・データ608
の作業バッファ113の場所を指定するWB−PTRと、ユーザ
・プロセス・データ608のECD117の場所を指定するEC−P
TRと、本例ではPMGRプロセス621であるメッセージが意
図されるプロセスを指定するプロセス識別子(PID)
と、PMGRプロセス620により実行されるべきプログラ
ム、即ち本例ではED命令シーケンス307を識別するPR−I
Dを含んでいる。
IPM 620 has at least user process data 608
WB-PTR for specifying the location of the work buffer 113 of the user process data and EC-P for specifying the location of the ECD 117 of the user process data 608
TR and a process identifier (PID) that specifies the process for which the message, in this example PMGR process 621, is intended
And PR-I identifying the program to be executed by PMGR process 620, ie, ED instruction sequence 307 in this example.
Contains D.

応答を受取るまでIPMを送出するプロセスが進行し得
ないため、IPM命令シーケンス623は、割込みを生じてCP
U303をしてプロセス管理命令シーケンス603を実行させ
る命令を含む。このシーケンスはそれぞれユーザ・プロ
セス609のCUR−DATA615とCUR−PC613の値をDATA612とPC
610に記憶することにより、またユーザ・プロセス609が
この時不活動状態であることを表示するように不活動状
態リスト604をセットすることによりユーザ・プロセス6
09をCPU303から取除く。
Since the process of sending the IPM cannot proceed until a response is received, the IPM instruction sequence 623 generates an interrupt
It includes an instruction to execute U303 to execute the process management instruction sequence 603. In this sequence, the values of CUR-DATA615 and CUR-PC613 of the user process 609 are respectively set to DATA612 and PC
By storing at 610 and by setting the inactive list 604 to indicate that the user process 609 is now inactive,
Remove 09 from CPU303.

プロセス管理命令シーケンス603を実行する毎に、こ
のシーケンスはメッセージ・フラグ606を検査してメッ
セージがIPCデータ619に対して付加されたかどうかを判
定する。もし付加されていれば、プロセス管理命令シー
ケンス603は新たなIPM620についてIPCデータ619を検査
し、本例においてはPMGRプロセス621を含むIPMの受手と
して指定されたプロセスを活動状態リスト602に対し付
加する。プロセス管理命令シーケンス303の実行によりP
MGRプロセス621がCPU303に対してアクセスする結果にな
る時、PMGRプロセス621はIPCデータ619中のIPMの有無を
検査する。もしPMGRプロセス621がこれを見出すなら
ば、このプロセスはIPMで指定されるデータについてIPM
で指定された命令シーケンスの実行を開始する。この場
合、IPMは、ED命令シーケンス307と、ユーザ・プロセス
609の作業バッファ113と、このプロセスにおけるECD117
を指定するIPM620である。
Each time the process management instruction sequence 603 is executed, the sequence checks the message flag 606 to determine whether a message has been added to the IPC data 619. If so, the process management instruction sequence 603 examines the IPC data 619 for the new IPM 620 and, in this example, adds the process designated as the recipient of the IPM, including the PMGR process 621, to the active list 602. I do. P by executing process management instruction sequence 303
When the MGR process 621 results in accessing the CPU 303, the PMGR process 621 checks for the presence of IPM in the IPC data 619. If the PMGR process 621 finds this, the process performs an IPM on the data specified in the IPM.
Starts execution of the instruction sequence specified by. In this case, the IPM uses the ED instruction sequence 307 and the user process
609 working buffers 113 and ECD 117 in this process
Is the IPM620.

CPU303が命令シーケンス307の実行を開始する時、こ
れはICD119、表示バッファ309および入力バッファ311用
の記憶領域をPMGRプロセス・データ622に対して付加す
る。この記憶領域を作業バッファ113、外部の制御デー
タ413およびECD117内のET−ID125により指定される編集
テーブル111と共に用いて、PMGRプロセス621はED101に
関して前に述べた方法でターミナル305からの入力コー
ドに応答する。PMGRプロセス621がED命令シーケンス307
の実行を完了した時、このプロセスは前に述べた方法で
ユーザ・プロセス609に対してIPMを送出する。
When CPU 303 begins execution of instruction sequence 307, it adds storage for ICD 119, display buffer 309, and input buffer 311 to PMGR process data 622. Using this storage area with the working buffer 113, the external control data 413, and the edit table 111 specified by the ET-ID 125 in the ECD 117, the PMGR process 621 converts the input code from the terminal 305 in the manner described above for the ED 101. respond. PMGR process 621 generates ED instruction sequence 307
This process sends an IPM to the user process 609 in the manner described above when it has completed the execution of.

(5. 本実施例の詳細な説明−第7図) 本実施例においては、ED101は単一のCPU303を有する
多重プログラミング型デイジタル・コンピュータ・シス
テムにおいて構成される。このシステムにおいては、本
実施例におけるED101はPMGRプロセス621でなくユーザ・
プロセス609により実行される。その結果、ユーザ・プ
ロセス609により実行される命令シーケンスはED101を必
要とする操作の実施のためにIPM620を送出する必要はな
く、単に他の命令シーケンスと同様にED命令シーケンス
307を実行すれば良い。
(5. Detailed Description of the Embodiment—FIG. 7) In this embodiment, the ED 101 is configured in a multi-programming digital computer system having a single CPU 303. In this system, the ED101 in this embodiment is not a PMGR process 621 but a user
Performed by process 609. As a result, the instruction sequence executed by the user process 609 does not need to send out the IPM 620 to perform an operation that requires the ED 101;
Just execute 307.

本例におけるED命令シーケンセ307は、本明細書の最
後にある『PL−IソーステキストA「EDITREAD−SYS−C
ALL」』に示されたPL/Iプログラミング言語において書
かれたソース・プログラムからPL/Iコンパイラによって
生成されたCPU303に対する一連の命令である。
The ED instruction sequence 307 in this example is described in “PL-I source text A“ EDITREAD-SYS-C ”at the end of this specification.
ALL ”” is a series of instructions for the CPU 303 generated by the PL / I compiler from a source program written in the PL / I programming language.

第7図は、EDITREAD−SYS−CALLの各部分の相互関係
および各部分のメモリー313に含まれるED101の構成要素
との関係を示すブロック図である。各部およびED101の
本実施例の作用の概要記述は第7図を用いて行なう。
FIG. 7 is a block diagram showing the interrelation of each part of EDITREAD-SYS-CALL and the relation of each part to the constituent elements of the ED 101 included in the memory 313. The outline of the operation of each part and the ED 101 according to the present embodiment will be described with reference to FIG.

(5.5 EDITREAD−SYS−CALLの説明−第7図) 第7図はEDITREAD−SYS−CALLの各部、EDITREAD−SYS
−CALLの各部とED101の他の構成要素間の関係、およびI
DITREAD−SYS−CALLの各部間と、EDITREAD−SYS−CALL
とED101の他の構成要素間のデータと制御の流れを示す
ブロック図である。第7図における各ブロックは、EDIT
READ−SYS−CALLの主要部分を示している。各部分はEDI
TREAD−SYS−CALLに含まれる1つ以上のPL/I手順からな
っている。1つのブロックから他のブロックへの幅の広
い矢印は、この矢印の元のブロックにより表わされたPL
/I手順の少なくともいくつかが矢印の行先のブロックに
より表わされた手順を呼出すことを表わしている。PL/I
においては、1つの手順は再帰的に、即ちそれ自体によ
りもしくはこれが呼出した別の手順により呼出すことが
できる。その結果、第7図のいくつかの矢印は1つのブ
ロックにおける手順がそれ自体を呼出すことを示してい
る。各ブロックの内部には、メモリー103におけるED101
のどの部分が1つのブロックにより使用されるかを示す
ボックスがある。制御データ115の場合には、各ブロッ
クが制御データ115における異なる変数を使用し、その
結果EDITREAD−SYS−CALLにおける変数の照合に用いる
名前のみが第7図に示され、他の構成要素では、ED101
の構成要素の名前とEDITEAD−SYS−CALLにおける構成要
素と対応する変数名の双方が示されている。
(5.5 Explanation of EDITREAD-SYS-CALL-Fig. 7) Fig. 7 shows each part of EDITREAD-SYS-CALL, EDITREAD-SYS
The relationship between parts of the CALL and other components of the ED101, and I
Between each part of DITREAD-SYS-CALL and EDITREAD-SYS-CALL
FIG. 9 is a block diagram showing a flow of data and control between the ED101 and other components. Each block in Fig. 7 is an EDIT
The main part of READ-SYS-CALL is shown. Each part is EDI
It consists of one or more PL / I procedures included in TREAD-SYS-CALL. The wide arrow from one block to the other is indicated by the PL represented by the original block of this arrow.
/ I indicates that at least some of the procedures call the procedure represented by the block to which the arrow points. PL / I
In, one procedure can be called recursively, that is, by itself or by another procedure which it called. As a result, several arrows in FIG. 7 indicate that the procedure in one block calls itself. Inside each block, ED101 in memory 103
There is a box that indicates which part of is used by one block. In the case of control data 115, each block uses a different variable in control data 115, so that only the names used to match variables in EDITREAD-SYS-CALL are shown in FIG. ED101
, The names of the components and the corresponding variable names in EDITED-SYS-CALL are shown.

以下の論述においては、最初に各ブロックの機能につ
いて要約し、次いで更に詳細に各ブロックについて論述
する。即ち、 * ED制御部701はED101の実行を制御する。
The following discussion first summarizes the function of each block, and then discusses each block in more detail. That is, the * ED control unit 701 controls the execution of the ED 101.

* 読出し機能部711は入力装置109から入力コードを読
出す。
* The reading function unit 711 reads an input code from the input device 109.

* 編集テーブル・インタプリタ717は入力コード又は
データ・コードおよび状態121の値と対応する編集命令
シーケンス215の位置指定を編集テーブル111内で行な
い、このように位置指定された編集命令シーケンス215
における編集命令バイト225を翻訳する。
The edit table interpreter 717 specifies the position of the edit instruction sequence 215 corresponding to the input code or data code and the value of the state 121 in the edit table 111, and the edit instruction sequence 215 thus specified in position.
Translate the edit instruction byte 225 in.

* バッファ兼表示コーディネータ729は、作業バッフ
ァ113における諸操作とその結果のディスプレイ107への
表示とを調整する。
* The buffer / display coordinator 729 adjusts various operations in the work buffer 113 and the display of the result on the display 107.

* スクリーン制御部713はディスプレイ107の動作を制
御する。
* The screen control unit 713 controls the operation of the display 107.

* 作業バッファ制御部731は、作業バッファ113におけ
るデータ・コードの操作を制御する。
The work buffer control unit 731 controls the operation of the data code in the work buffer 113.

(5.5.1 ED制御部701) ED制御部701は、主要手順EDITREAD−SYS−CALLと対応
している。本実施例においては、ED101の動作はED101を
使用するプログラムによるこの手順の呼出しから開始す
る。ED制御部701の各部はその機能と対応し、初期制御
部707はED101の動作を開始する際必要な諸操作を実施
し、制御ループ705はED101をして区切りコードが受取ら
れるまで入力装置109からの入力コードの取出しを続け
させるループであり、最終制御部703はED101の動作を終
了させる際必要な諸操作を実施する。ED制御部701によ
り値をセットされあるいは読出される変数がED制御状態
709に示されている。
(5.5.1 ED control unit 701) The ED control unit 701 corresponds to the main procedure EDITREAD-SYS-CALL. In the present embodiment, the operation of the ED 101 starts by calling this procedure by a program using the ED 101. Each part of the ED control unit 701 corresponds to its function, the initial control unit 707 performs various operations necessary to start the operation of the ED 101, and the control loop 705 performs the ED 101 and operates the input device 109 until a delimiter code is received. The final control unit 703 executes various operations necessary to end the operation of the ED 101. The variable whose value is set or read by the ED control unit 701 is in the ED control state
709.

ED制御部701の動作は、ED101を使用するユーザ・プロ
グラムが変数「PACKET」で定義されるデータのパケット
に対するポインタを用いてEDITREAD−SYS−CALLを呼出
す時開始する。
The operation of the ED control unit 701 starts when a user program using the ED 101 calls EDITREAD-SYS-CALL using a pointer to a packet of data defined by the variable “PACKET”.

(5.5.2 読出し機能部711) 読出し機能部711として示されたブロックはEDITREAD
−SYS−CALlの読出し機能と対応する。この機能が制御
ループ705により呼出される時、これは入力装置109から
入力コードを取出して、この入力コードを制御ループ70
5に戻す。本実施例においては、入力コードはCPU303の
オペレーティング・システムに対する呼出しにより取出
される。このオペレーティング・システムは入力バッフ
ァを自動的にチヤネル番号および入力装置と関連させ、
システムコールBINARY−READ−STRINGが前記チヤネルと
関連する入力バッファから1つのバイトを取出す。こう
して、読出し機能においては、EDITREAD−SYS−CALLの
呼出に用いられたパケットから得られる可変チヤネル
は、読出し機能が入力コードを取出すべき入力装置109
および入力バッファ311を指定する。
(5.5.2 Read Function Unit 711) The block indicated as the read function unit 711 is EDITREAD
-Corresponds to the read function of SYS-CALl. When this function is called by the control loop 705, it takes the input code from the input device 109 and passes this input code to the control loop 70.
Return to 5. In the present embodiment, the input code is retrieved by a call to the operating system of the CPU 303. This operating system automatically associates the input buffer with the channel number and input device,
A system call BINARY-READ-STRING retrieves a byte from the input buffer associated with the channel. Thus, in the read function, the variable channel obtained from the packet used to call EDITREAD-SYS-CALL is the input device 109 from which the read function should extract the input code.
And the input buffer 311.

文字を得るためBINARY−READ−STRINGを呼出す前に、
読出し機能部は以下に説明するflush−bufferを呼出し
て、ディスプレイ107をして表示バッファ309に保持され
る表示コードと対応する視覚的表示を行なわせる。次い
で、入力バッファ311からバイトを得た後、この読出し
機能部はこれをED101に対する適正なフォーマットに入
れ、これを制御ループ705に戻す。
Before calling BINARY-READ-STRING to get the character,
The reading function unit calls a flush-buffer described below to cause the display 107 to perform a visual display corresponding to the display code held in the display buffer 309. Then, after obtaining the byte from the input buffer 311, the read function puts it into the proper format for the ED 101 and returns it to the control loop 705.

(スクリーン制御部713) スクリーン制御部713は、可変OUTPUT−RING−BUFFER
と対応する表示バッファ309を管理し、該バッファ309に
保持された表示コードにより、ディスプレイ107を管理
する。明細書末尾の『PL−IソーステキストA「EDITRE
AD−SYS−CALL」』に示された2つのPL/I手順である「p
ut−chr」と「flush−buffer」(以下にこの部分を示
す)がこの管理を行う。
(Screen control unit 713) The screen control unit 713 is a variable OUTPUT-RING-BUFFER
, And the display 107 is managed by the display code stored in the buffer 309. “PL-I Source Text A“ EDITRE
AD-SYS-CALL ”
"ut-chr" and "flush-buffer" (this part is shown below) perform this management.

「put−chr」は表示コードをOUTPUT−LING−BUFFERに
入れ、「flush−buffer」はシステム呼び出しBINARY−W
RITE−STRINGを用いてOUTPUT−LING−BUFFERの内容をデ
ィスプレイ107に対して出力してバッファを空にする。B
INARY−WRITE−STRINGの構成要素はOUTPUT−RING−BUFF
ERの内容を使用中の特定のディスプレイ107に対する適
当な視覚的表示に翻訳する。
"Put-chr" puts the display code into OUTPUT-LING-BUFFER, and "flush-buffer" calls the system call BINARY-W
The contents of OUTPUT-LING-BUFFER are output to the display 107 using RITE-STRING to empty the buffer. B
The component of INARY-WRITE-STRING is OUTPUT-RING-BUFF
Translate the contents of the ER into an appropriate visual indication for the particular display 107 in use.

(5.5.3 編集テーブル・インタープリタ717) 編集テーブル・インタプリタ717は、入力コード又は
データ・コードの値および編集命令シーケンス215の1
組を指定する値と対応する編集命令シーケンス215の位
置指定を行ない、次いで編集命令バイト225の個々のバ
イトにより指定された諸操作を実施する。編集テーブル
・インタープリタ717は、EDITREAD−SYS−CALLのソース
テキストの行番号449から始まる単一のINTERPRET手順か
らなる。INTERPRET手順の呼出しは2つのデータ、即ち
入力コード又は翻訳すべきデータ・コードと、編集テー
ブル111の一部を指定する値を必要とする。この値は状
態121により与えられ、あるいは一定値でもよい。
(5.5.3 Edit Table Interpreter 717) The edit table interpreter 717 determines the value of the input code or data code and one of the edit instruction sequences 215.
The location of the edit instruction sequence 215 corresponding to the value specifying the set is performed, and then the operations specified by the individual bytes of the edit instruction byte 225 are performed. The edit table interpreter 717 consists of a single INTERPRET procedure starting at line number 449 of the source text of EDITREAD-SYS-CALL. Calling the INTERPRET procedure requires two data: an input code or a data code to be translated, and a value that specifies a portion of the edit table 111. This value is provided by state 121 or may be a constant value.

第7図の矢印により示されるように、INTERPRET手順
はED制御部701の3つのサブセクション全てにより、バ
ッファ兼表示コーディネータ729により呼出され、また
それ自体により再帰的に呼出される。INTERPRET手順は
編集テーブル111を読出すEDITREAD−SYS−CALLの唯一の
構成要素である。編集テーブル・インタプリタ717は2
つの主要な下位区分、即ち編集命令取出し部719と編集
命令インタプリタ723を有する。
As shown by the arrows in FIG. 7, the INTERPRET procedure is invoked by the buffer and display coordinator 729 by all three subsections of the ED control 701, and recursively by itself. The INTERPRET procedure is the only component of EDITREAD-SYS-CALL that reads the edit table 111. Editing table interpreter 717 is 2
It has two main subdivisions: an edit command fetch unit 719 and an edit command interpreter 723.

(編集命令取出し部719) 編集命令取出し部719は、最初にINTERPRET手順の呼出
しのため与えられた値と対応する編集テーブル111にお
ける1組の編集命令シーケンス215の位置指定を行な
い、次いで入力コード又はデータ・コードの値と対応す
る個々の編集命令シーケンス215の位置指定を行なう。
編集命令シーケンス215の位置指定を行なった後、編集
命令取出し部719は一時に1バイトずつ編集命令シーケ
ンス215の編集命令バイト225を編集命令インタプリタ72
3に与える。編集命令取出し部719が編集テーブル111を
読出す方法は編集命令取出し状態721によって制御され
る。第7図から判るように、この状態はパケットCHANNE
L−DATAでED101に送られる値と、命令の取出し制御のた
めINTERPRETにおいて使用された値からなっている。
(Edit instruction fetch unit 719) The edit instruction fetch unit 719 first specifies the position of a set of edit instruction sequences 215 in the edit table 111 corresponding to the given value for calling the INTERPRET procedure, and then specifies the input code or The position of each edit instruction sequence 215 corresponding to the value of the data code is specified.
After specifying the position of the edit instruction sequence 215, the edit instruction fetch unit 719 converts the edit instruction byte 225 of the edit instruction sequence 215 one byte at a time into the edit instruction interpreter 72.
Give to 3. The manner in which the edit command fetch unit 719 reads the edit table 111 is controlled by the edit command fetch state 721. As can be seen from FIG. 7, this state is the packet CHANNE
It consists of the value sent to the ED 101 in L-DATA and the value used in INTERPRET to control the instruction fetch.

(命令インタプリタ723) 命令インタプリタ723は主として、EDITREAD−SYS−CA
LLのソーステキストの行番号516から始まる大きなDO CA
SEステートメントのグループを含む複合ステートメント
である。DO CASEステートメントが実行される時、このD
O CASEステートメントにおいて指定された式の値がどの
ケースが実行されるかを決定する。このDO CASEステー
トメントにおいては、編集命令取出し部719により与え
られるバイトの2進数値はオペレータ・ディスパッチ・
テーブル726内へのインデックスとして用いられる。テ
ーブル726におけるこの場所の値は、次に、DO CASEステ
ートメントにおけるステートメントのどのグループガ実
行されるかを決定する。編集命令インタプリタ723があ
るケースにおけるステートメントの実行を完了する時、
編集命令取出し部719は編集命令バイト225からの次のバ
イトを提供する。
(Instruction interpreter 723) The instruction interpreter 723 is mainly composed of EDITREAD-SYS-CA
Large DO CA starting at line number 516 in LL source text
A compound statement containing a group of SE statements. When the DO CASE statement is executed, this D
The value of the expression specified in the O CASE statement determines which case is executed. In this DO CASE statement, the binary value of the byte provided by the edit instruction fetch unit 719 is the operator dispatch value.
Used as an index into table 726. The value of this location in table 726 then determines which group of statements in the DO CASE statement will be executed. When the edit instruction interpreter 723 completes the execution of the statement in the case where
Edit command fetch unit 719 provides the next byte from edit command byte 225.

編集命令インタプリタ723が編集命令バイト225を翻訳
する方法は、編集テーブル111における編集命令バイト2
25の構成に依存する。前述の如く、本実施例において
は、1つの操作に対する編集命令バイト225はオペラン
ド・バイトと、それに後続する命令コードのバイトとか
らなっている。このオペランド・バイトの値は、これら
バイトがオペランドを表わすことを指定し、またこのオ
ペランド・バイトがリテラルであるか、あるいは変数を
指定するかを指定する。この変数は、ユーザの変数アレ
ー727の内の1つであるか、あるいはPACKETの行10乃至3
5に表示された変数の1つである。編集命令インタプリ
タ723はインタプリタ・スタック725を用いてこれが命令
コードのバイトを翻訳するまでオペランドの値を記憶す
る。オペランド・バイトがリテラルである時は編集命令
インタプリタ723はオペランドの値をインタプリタ・ス
タック725に置き、これが変数である時は制御データ115
において変数の位置指定を行なってこの変数の値をイン
タプリタ・スタック725に置く。命令コード・バイトが
翻訳される時、編集命令インタプリタ723はインタプリ
タ・スタック725からオペランドを得て、これらオペラ
ンドの命令コード・バイトで指定される操作を実施す
る。矢印により示されるように、編集命令インタプリタ
723はバッファ兼表示コーディネータ729におけるルーチ
ンを呼出し可能であり、またINTERPRET手順を再帰的に
呼出すこともできる。
The manner in which edit instruction interpreter 723 translates edit instruction byte 225 is described in edit instruction byte 2 in edit table 111.
Depends on 25 configurations. As described above, in the present embodiment, the edit instruction byte 225 for one operation consists of an operand byte followed by an instruction code byte. The value of this operand byte specifies that these bytes represent an operand, and whether this operand byte is a literal or specifies a variable. This variable can be one of the user's variable arrays 727, or PACKET lines 10-3.
It is one of the variables shown in 5. Edit instruction interpreter 723 uses interpreter stack 725 to store the values of the operands until it translates the bytes of the instruction code. When the operand byte is a literal, the edit instruction interpreter 723 places the value of the operand on the interpreter stack 725, and when this is a variable, the control data 115.
Specifies the position of the variable and places the value of this variable on the interpreter stack 725. When the opcode bytes are translated, the edit instruction interpreter 723 obtains the operands from the interpreter stack 725 and performs the operations specified by the opcode bytes of those operands. Edit instruction interpreter as indicated by the arrow
723 can call the routines in the buffer and display coordinator 729, and can also call the INTERPRET procedure recursively.

(5.5.4 作業バッファ制御部731) 作業バッファ制御部731は作業バッファ113の操作を行
なう。作業バッファ制御部731は手順true−buff、inser
t−true−buff、is−attribute−state−makerおよびtr
ue−indexを含んでいる(これらの手順はEDITREAD−SYS
−CALLのソーステキストの行番号1525以下にある。注:
行番号の1000番以下は千の位が省略されていることに注
意されたい)。true−buffは作業バッファ113からデー
タ・コードを取出し、insert−true−buffはデータ・コ
ードを作業バッファ113に挿入し、replace−true−buff
は作業バッファ113における1つのデータ・コードを別
のコードと交換する。他の手順は、作業バッファ113の
管理に必要な作業バッファ113についての情報を提供す
る。矢印により示されるように、バッファ兼表示コーデ
ィネータ729のみが作業バッファ制御部731の諸手順を呼
出す。
(5.5.4 Work buffer control unit 731) The work buffer control unit 731 operates the work buffer 113. The work buffer control unit 731 performs the procedure true-buff, inser
t-true-buff, is-attribute-state-maker and tr
ue-index (these procedures are EDITREAD-SYS
-Line number 1525 or lower in the CALL source text. note:
Note that thousands are omitted for line numbers 1000 and below.) true-buff retrieves the data code from work buffer 113, insert-true-buff inserts the data code into work buffer 113, and replace-true-buff
Exchanges one data code in working buffer 113 with another code. Other procedures provide information about the work buffer 113 needed to manage the work buffer 113. As indicated by the arrow, only the buffer / display coordinator 729 calls the procedures of the work buffer control unit 731.

(5.5.5 バッファ兼表示コーディネータ729) EDITREAD−SYS−CALLに含まれる残りの手順はバッフ
ァ兼表示コーディネータ729の一部である。バッファ兼
表示コーディネータ729は、表示バッファ309が作業バッ
ファ113の最近の修正を常に反映するように作業バッフ
ァ113の修正およびデータ・コードの出力を表示バッフ
ァ309に対して対応させる。バッファ兼表示制御状態730
はバッファ兼表示コーディネータ729により使用される
データを保有してその操作を対応させる。
(5.5.5 Buffer and Display Coordinator 729) The remaining procedures included in EDITREAD-SYS-CALL are part of the Buffer and Display Coordinator 729. The buffer / display coordinator 729 matches the modification of the work buffer 113 and the output of the data code to the display buffer 309 so that the display buffer 309 always reflects the latest modification of the work buffer 113. Buffer / display control state 730
Holds the data used by the buffer / display coordinator 729 to correspond to its operation.

バッファ兼表示コーディネータ729におけるPL/I手順
のほとんどはこの構成要素内の他の手順によってのみ呼
出される。本発明の目的のためには、EDITREAD−SYS−C
ALLの他の構成要素により呼出されるバッファ兼表示コ
ーディネータ729内のこれらの手順のみについて理解す
ればよい。これら手順は2つのグループに分けられる。
即ち、ディスプレイ107のみの修正を行なう手順と、作
業バッファ113およびディスプレイ107の双方を修正する
ものとである。最初に、ディスプレイ107のみの修正を
行なう手順は下記の如くである。即ち、 * echo−binary及びecho手順。これらの手順は表示バ
ッファ309に対して1つの表示コードを出力し、必要に
応じてバッファ兼表示制御状態730の修正を行なう。
Most of the PL / I procedures in the buffer and display coordinator 729 are called only by other procedures in this component. For the purposes of the present invention, EDITREAD-SYS-C
Only those procedures within the buffer and display coordinator 729 that are called by other components of ALL need to be understood. These procedures are divided into two groups.
That is, a procedure for correcting only the display 107 and a procedure for correcting both the work buffer 113 and the display 107. First, the procedure for correcting only the display 107 is as follows. * Echo-binary and echo procedures. These procedures output one display code to the display buffer 309 and correct the buffer / display control state 730 as necessary.

* paint及びpaint−and−restore−state手順。これ
らの手順はディスプレイ107をして作業バッファ113内の
ある範囲のデータ・コードと対応するある範囲の視覚的
表示を行なわせる。
* Paint and paint-and-restore-state procedures. These procedures cause the display 107 to provide a range of visual codes corresponding to a range of data codes in the work buffer 113.

paint及びpaint−and−restore−state手順は前記範
囲のデータ・コードにおける各データ・コードを得るた
めtrue−buff手順を呼出し、該データ・コード及び編集
テーブル111内の表示シーケンス209を指定する値を用い
るINTERPRET手順を呼出すことによって作業する。印刷
可能なデータ・コードの場合には、INTERPRET手順はこ
のデータ・コードと対応する表示コードを用いてecho手
順を読出し、echo手順は前述の如くput−chr手順の呼出
しを行ない、これによりデータ・コードと対応する表示
コードを表示バッファ309に対して付加させる。残りの
手順は作業バッファ113における諸操作を実施し、この
操作の結果をディスプレイ107に表示させる。
The paint and paint-and-restore-state procedures call the true-buff procedure to obtain each data code in the range of data codes, and store the data codes and values specifying the display sequence 209 in the edit table 111. Work by calling the INTERPRET procedure that you use. In the case of a printable data code, the INTERPRET procedure reads the echo procedure using this data code and the corresponding display code, and the echo procedure invokes the put-chr procedure as described above, thereby providing the data A display code corresponding to the code is added to the display buffer 309. In the remaining steps, various operations in the work buffer 113 are performed, and the results of these operations are displayed on the display 107.

* MOVE手順は移動操作を実施する。この手順はバッフ
ァ兼表示制御状態730におけるbuffer−indexを更新し、
手順paintを呼出してディスプレイ107をして移動手順に
より影響を受けたデータ・コードの表示を行なわせ、他
の手順を呼出して属性をリセットし、新たなカーソル位
置にカーソルを出力する。カーソルを出力する手順は、
カーソルを表示バッファ309上に実際に入力するため特
殊なカーソル制御コードと共にput−chrを使用する。
* The MOVE procedure performs a move operation. This procedure updates the buffer-index in the buffer and display control state 730,
The procedure paint is called to cause the display 107 to display the data code affected by the moving procedure, the other procedures are called to reset the attributes, and the cursor is output at a new cursor position. To output the cursor,
Use put-chr with a special cursor control code to actually enter the cursor into the display buffer 309.

* DELETE手順は作業バッファ113から1つ以上のデー
タ・コードを削除する。その時のカーソル位置の左方へ
の文字の削除の時には、手順DELETEはbuffer−indexを
更新して、データ・コードを削除する前に新たなカーソ
ル位置を確立するが、その時のカーソル位置の右方への
文字の削除の時には、このステップは不要である。デー
タ・コードの削除の後、DELETEはbuffer−lengthを更新
し、paint手順を呼出して作業バッファ113の全内容を再
表示する。
* The DELETE procedure deletes one or more data codes from work buffer 113. When deleting a character to the left of the current cursor position, the procedure DELETE updates the buffer-index to establish a new cursor position before deleting the data code, but to the right of the current cursor position. This step is not necessary when deleting characters from After deleting the data code, DELETE updates buffer-length and calls the paint procedure to redisplay the entire contents of working buffer 113.

* INSERT手順は作業バッファ113にデータ・コードを
挿入し、buffer−index及びbuffer−lengthを更新し、
次いでpaint手順を読出して作業バッファ113および前述
の手順の更新部分を表示してカーソルを適正な場所に置
く。
* The INSERT procedure inserts a data code into work buffer 113, updates buffer-index and buffer-length,
Next, the paint procedure is read to display the work buffer 113 and the updated part of the above procedure, and the cursor is placed at an appropriate place.

* 手順SEARCHは、この手順に対して引数として与えら
れたデータ・コード一致する、作業バッファ113内のデ
ータ・コードの位置指定を行なう。SEARCHは別の引数に
より指定される如く右方または左方に探索を行なう。も
し一致するデータ・コードが見出されたならば、この手
順はMOVEを呼出し、一致するデータ・コードの場所を指
定するようにbuffer−indexを更新し、前述の如くディ
スプレイ107上に作業バッファ113の影響を受けた部分の
表示を行なう。
* Procedure SEARCH specifies the position of the data code in work buffer 113 that matches the data code given as an argument to this procedure. SEARCH searches right or left as specified by another argument. If a matching data code is found, the procedure calls MOVE and updates the buffer-index to specify the location of the matching data code, and the working buffer 113 on display 107 as described above. Display of the part affected by.

(6. ED101の一実施例の作用) ED101の一実施例の各部の概観を終えて、論述は特定
の編集テーブル111を使用する本実施例の作用の記述に
移る。本論は最初に特定の編集テーブル111について記
述し、次いでED101がこの編集テーブル111を用いて初期
操作および探索操作を実行し、区切りコードに応答する
方法について記述する。
(6. Operation of one embodiment of ED101) After an overview of the components of one embodiment of the ED101, the discussion moves to the description of the operation of this embodiment using a specific editing table 111. The discussion first describes a particular edit table 111, and then describes how the ED 101 uses this edit table 111 to perform initial and search operations and respond to delimiter codes.

(6.1 特定の編集テーブル111の詳細な説明) ED101の本実施例に対する編集テーブル111はASCII文
字のソース・テキストからコンパイラにより生成され
る。ディジタル・コンピュータ・システム127のユーザ
が新たな編集テーブル111の作成を希望する時、彼はソ
ース・テキストを書き、次いでコンパイラを用いてソー
ス・テキストと対応する編集テーブル111を生成する。D
EFAULT−TABLEと題されるED101に対する編集テーブル11
1のソース・テキストは本明細書の最後に示す『PL−I
ソーステキストB「DEFAULT−TABLE」』に示す。このソ
ースプログラムからコンパイラにより生成された編集テ
ーブルである省略時テーブル801の16進数の表示が第8
図に示されている。次に先ずDEFAULT−TABLEの読み方を
説明し、次いて省略時テーブル801とDEFAULT−TABBLEと
の関連について説明する。
(6.1 Detailed Description of Specific Editing Table 111) The editing table 111 for this embodiment of the ED 101 is generated by the compiler from ASCII text source text. When a user of the digital computer system 127 wishes to create a new edit table 111, he writes the source text and then uses a compiler to generate the edit table 111 corresponding to the source text. D
Edit table 11 for ED101 entitled EFAULT-TABLE
The source text of “PL-I” shown at the end of this specification
Source text B "DEFAULT-TABLE"]. The default table 801 which is an edit table generated by the compiler from this source program is displayed in hexadecimal.
It is shown in the figure. Next, how to read DEFAULT-TABLE will be described first, and then the relation between the default table 801 and DEFAULT-TABBLE will be described.

(6.1.1 ソース・テキストDEFAULT−TABLE) 最初に『PL−IソーステキストB「DEFAULT−TABL
E」』において、省略時テーブル801に対する実際のソー
ス・テキストは行番号46において始まる。ワードINITIA
L MACROは、以下のDEFALET−TABLEの部分が省略時テー
ブル801に対する初期シーケンス205と対応することを示
している。角括弧([])に囲まれたテキストは編集テ
ーブル111の形成のため使用されるプログラミング言語
である。このテキストは、初期シーケンス205に含まれ
る編集命令シーケンス215における編集命令バイト225を
指定する。同様に、行番号47のFINAL MACROとは、以下
のテキスト(本例においては該当なし)が最終シーケン
ス207に対する編集命令バイト225を指定することを示
し、行番号49におけるECHO MACROは表示シーケンス209
に対する編集命令シーケンス215を初めを示し、STATE=
0は最初のバッファ編集シーケンス213を示し、STATE=
1は次を示し、、、、等の如くSTATE=6まで示す。
(6.1.1 Source text DEFAULT-TABLE) First, "PL-I source text B" DEFAULT-TABL
E "], the actual source text for default table 801 begins at line number 46. Word INITIA
L MACRO indicates that the following DEFALET-TABLE portion corresponds to the initial sequence 205 for the default table 801. The text enclosed in square brackets ([]) is the programming language used to form the edit table 111. This text specifies the edit instruction byte 225 in the edit instruction sequence 215 included in the initial sequence 205. Similarly, FINAL MACRO at line number 47 indicates that the following text (not applicable in this example) specifies edit command byte 225 for final sequence 207, and ECHO MACRO at line number 49 indicates display sequence 209.
Indicates the beginning of the edit instruction sequence 215 for STATE =
0 indicates the first buffer edit sequence 213, and STATE =
1 indicates the following, up to STATE = 6, such as,.

前述の如く、表示シーケンス209およびバッファ編集
シーケンス211においては、各編集命令シーケンス215が
値LV219およびUV221を含み、これは共に編集命令シーケ
ンス215が有効であるデータ・コードの値の範囲を指定
する。これらの値は四角の枠内のテキストの前に位置す
る2つの16進数値によりDEFAULT−TABLEにおいて示され
ている。このように、行番号50においては、20、7FがLV
219が16進数値20(10進数の32)を有し、UV221が16進数
値7F(10進数の127)を有することを示している。本実
施例に用いたデータ・コードはASCIIコードであり、20
および7Fで指定された範囲におけるASCIIコードは印刷
可能な文字に対するコードである。このように、行番号
50における角括弧([])内のテキストは、印刷可能な
ASCII文字に応答してED101により実施される動作を指定
するのである。
As described above, in the display sequence 209 and the buffer edit sequence 211, each edit instruction sequence 215 includes the values LV 219 and UV 221, which together specify the range of data code values for which the edit instruction sequence 215 is valid. These values are indicated in the DEFAULT-TABLE by two hexadecimal values that precede the text in the square box. Thus, in line number 50, 20 and 7F are LV
219 has a hexadecimal value of 20 (decimal 32), indicating that UV221 has a hexadecimal value of 7F (decimal 127). The data code used in this embodiment is an ASCII code,
The ASCII codes in the range specified by 7F and 7F are codes for printable characters. Thus, the line number
Text in square brackets ([]) in 50 is printable
It specifies the action to be performed by ED101 in response to ASCII characters.

以上DEFAULT−TABLEの概要を述べたが、次に当業者が
DEFAULT−TABLEを読むことができるように本実施例にお
けるED101の作用の定義のため使用したプログラミング
言語に関して充分に詳細に述べる。無論他の実施例では
他のプログラミング言語を使用しても良い。このプログ
ラミング言語により指定される各操作は角括弧([])
内に示されている。操作は操作の指定により、従ってそ
のオペランドの指定により定義される。このオペランド
は、リテラル値、制御データ115における変数および他
の操作により生成される値でよい。例えば、バッファ兼
表示コーディネータ729におけるエコー手順と対応する
行番号50上の[echo char]は、制御ループ705における
variable charのその時の値を用いて実施されるべきも
のである。
The outline of the DEFAULT-TABLE has been described above.
The programming language used to define the operation of ED101 in this embodiment is described in sufficient detail so that DEFAULT-TABLE can be read. Of course, other programming languages may be used in other embodiments. Each operation specified by this programming language is in square brackets ([])
Is shown within. An operation is defined by the specification of the operation, and therefore by the specification of its operand. This operand may be a literal value, a variable in control data 115, and a value generated by other operations. For example, [echo char] on line number 50 corresponding to the echo procedure in the buffer / display coordinator 729 is
It should be implemented using the current value of variable char.

更に複雑な事例は行番号51における[Do[Echo“ "]
White[Mod cursor−pos 8]]である。数値の範囲によ
り示される如く、この操作はASCIIテーブル文字と対応
するディスプレイ107上の視覚的表示(SICIIコード9)
を提供する。Do Whileは、Doに続く操作がWhileに続く
操作により戻された数値が0に等しくない限り継続する
ことを指定する。ここで、Doに続く操作(Echo“ ")は
ディスプレイ107上にブランクを現わし、またバッファ
兼表示制御状態730における可変cursor posを1だけ増
分する。[Mod cursor−pos8]はcursor−pos and8にそ
の時含まれる数値のモジューロを見出す。このモジュー
ロは、cursor−posが8により割り切れる場合だけ0に
等しい。その結果、この操作全体は、ブランクがディス
プレイ107上に出力されること、ブランクが出力される
度にcursor−posと8のモジューロが計算されること、
およびcursor−posと8のモジューロが0に達する時、
即ちディスプレイ107における次のタブ・ストップの位
置に達した時、ブランクの出力が停止することを指定す
る。明らかなように、EDITREAD−SYS−CALLが更に詳細
に検査される時、プログラミング言語における変数およ
び操作の指定のため用いられた名前がEDITREAD−SYS−C
ALLに定義される名前と対応するのである。
A more complicated case is the [Do [Echo ““]
White [Mod cursor-pos 8]. As indicated by the range of numbers, this operation is a visual indication on display 107 corresponding to the ASCII table characters (SICII code 9).
I will provide a. Do While specifies that the operation following Do will continue as long as the number returned by the operation following While is not equal to zero. Here, the operation following the Do (Echo "") causes a blank to appear on the display 107 and increments the variable cursor pos in the buffer / display control state 730 by one. [Mod cursor-pos8] finds the modulo of the numerical value then contained in cursor-pos and8. This modulo is equal to 0 only if cursor-pos is divisible by 8. As a result, the whole operation is as follows: the blank is output on the display 107, and the modulo of cursor-pos and 8 is calculated each time the blank is output.
And when the modulo of cursor-pos and 8 reaches 0,
That is, when the position of the next tab stop on the display 107 is reached, the output of the blank is designated to be stopped. As will be apparent, when EDITREAD-SYS-CALL is examined in more detail, the name used to specify the variables and operations in the programming language is EDITREAD-SYS-CALL.
It corresponds to the name defined in ALL.

(6.1.2 省略時テーブル801の16進数表示−第8図) 第8図は、省略時テーブル801の16進数による表示で
いる。省略時テーブル801は4桁の16進数により表わさ
れた値の配列として表わされる。各桁は4ビットを表わ
し、その結果各グループは16ビット即ち2バイトを表わ
す。省略時テーブル801の各部の照合を容易にするた
め、第8図には行と列の指標が付加えられている。以降
の論述においては、あるグループの16進数はその行およ
び列の番号により参照される。更に、第8図は、第2図
において示される如き編集テーブル111の各部と省略時
テーブル801のバイト間の対応を示すためマークが付さ
れている。この対応は、省略時テーブル801の表示の下
の表により更に確立される。DEFAULT−TABLEにより指定
される如く、省略時テーブル801は、ロケータ情報201、
ディスパッチ・テーブル203、初期シーケンス205、ディ
スプレイ・シーケンス209および0から6までの状態121
の値に対して7つのバッファ編集シーケンス211を有す
る。省略時テーブル801は最終シーケンス207は持たな
い。
(6.1.2 Hexadecimal Display of Default Table 801-FIG. 8) FIG. 8 shows a hexadecimal display of the default table 801. The default table 801 is represented as an array of values represented by four hexadecimal digits. Each digit represents 4 bits so that each group represents 16 bits or 2 bytes. In FIG. 8, row and column indices are added to facilitate comparison of each part of the default table 801. In the following discussion, the hexadecimal numbers of a group will be referred to by their row and column numbers. Further, FIG. 8 is marked to indicate the correspondence between each part of the editing table 111 and the bytes of the default table 801 as shown in FIG. This correspondence is further established by the table below the display of the default table 801. As specified by the DEFAULT-TABLE, the default table 801 contains the locator information 201,
Dispatch Table 203, Initial Sequence 205, Display Sequence 209 and States 121 from 0 to 6
Has seven buffer edit sequences 211 for the values of The default table 801 does not have the final sequence 207.

ワード2、7および2、8を占めるES805で示された
省略時テーブル801の部分が、編集命令シーケンス215の
一例となる。ES805が入力装置109における最初の編集命
令シーケンスであるという事実から判るように、これは
DEFAULT−TABLEの行番号50と対応している。ES805の最
初の2つのバイトはLV219およびUV221であり、DEFAULT
−TABLEの行番号50で指定されるように、LVは16進数値2
0を含み、UVは16進数値7Fを含んでいる。次のバイトは
サイズ223であり、これは16進数値1を含み、その結果E
S805の残りは単一のバイトを含む。このバイトは16進数
値76を含み、詳細について後で判るように、この値は、
手順INTERPRETの呼出しにおいて使用されるデータ・コ
ード又は入力コードと共にINTERPRET手順をしてエコー
手順を呼出させる命令コードである。本論において重要
な省略時テーブル801の他の部分もまたラベルが付され
ており、これらの部分については関連部分において詳細
に説明することにする。
The portion of the default table 801 indicated by ES 805 occupying words 2, 7 and 2, 8 is an example of an edit instruction sequence 215. As can be seen from the fact that the ES805 is the first edit command sequence on the input device 109, this is
Corresponds to DEFAULT-TABLE line number 50. The first two bytes of the ES805 are LV219 and UV221 and DEFAULT
LV is the hexadecimal value 2 as specified by line number 50 in −TABLE
Contains 0 and UV contains the hexadecimal value 7F. The next byte is of size 223, which contains the hexadecimal value 1 so that E
The rest of S805 contains a single byte. This byte contains the hexadecimal value 76, which will be
Instruction code that causes the INTERPRET procedure to be invoked with the data code or input code used in calling the procedure INTERPRET to invoke the echo procedure. Other portions of the default table 801 that are important in this discussion are also labeled, and these portions will be described in detail in the relevant portions.

(6.2 省略時テーブル801による本実施例の作用) 前に説明しかつ第7図において示すように、ED101の
本実施例の作用は、ED101を使用するプログラムによる
手順EDITREAD−SYS−CALLの呼出しから開始する。実行
されるEDITREAD−SYS−CALLの最初の部分は初期制御部7
07である。
(6.2 Operation of the present embodiment using the default table 801) As described above and shown in FIG. 7, the operation of the present embodiment of the ED101 is performed by calling the procedure EDITREAD-SYS-CALL by a program using the ED101. Start. The first part of EDITREAD-SYS-CALL to be executed is the initial control unit 7.
07.

(6.2.1 初期制御部707の作用) 初期制御部707はEDITREAD−SYS−CALLの行番号370か
ら始まる。ここで判るように、EDITREAD−SYS−CALLの
この部分は最初に種々の変数を初期化し、次いでディス
プレイ107上の作業バッファ113の内容の視覚的表示を行
なうためpaint手順を呼出す。EDITREAD−SYS−CALLの行
番号116以下におけるこのpaint手順は、作業バッファ11
3における各々の印刷可能なデータ・コード毎に、最初
に作業バッファ113からデータ・コードを取出すtrue−b
effを読出し(行番号137)、次いでこのデータ・コード
によるINTERPRET手順を呼出す(行番号148)ループ(行
番号136乃至153)と、手順INTERPRETが表示シーケンス2
09からのデータ・コードと対応する編集命令シーケンス
215を得ることを指定する値とを含んでいる。この値は
名前ECHO−STATEにより呼出しにおいて表示される。
(6.2.1 Operation of Initial Control Unit 707) The initial control unit 707 starts from the line number 370 of EDITREAD-SYS-CALL. As can be seen, this portion of EDITREAD-SYS-CALL first initializes various variables and then calls the paint procedure to provide a visual display of the contents of work buffer 113 on display 107. This paint procedure in line number 116 and below of EDITREAD-SYS-CALL
For each printable data code in 3, true-b first fetching the data code from work buffer 113
When eff is read (line number 137) and then the INTERPRET procedure by this data code is called (line number 148), a loop (line numbers 136 to 153) is performed, and the procedure INTERPRET is displayed in display sequence 2
Edit instruction sequence corresponding to data code from 09
215 and a value that specifies to get 215. This value is displayed in the call by the name ECHO-STATE.

次にEDITREAD−SYS−CALLの行番号446以下における手
順INTERPRETにおいては、行番号446乃至470において、
手順INTERPRETがECHO−STATEにより表わされる値により
呼出される時実行されるステートメントのグループが示
されている。これらのステートメントは、変数echo−ma
cro−startから変数mstrtを、また変数echo−macro−si
zeからmstopをセットする。前述の如く、CHANNEL−DATA
において表されるこれら変数は、表示シーケンス209の
初めと終りを見出す省略時テーブル801のロケータ情報2
01における値を示す。このため、変数mstrtはこの時表
示シーケンス209における最初のバイトの場所を指定
し、また変数limitは表示シーケンス209における言語の
バイトを指定する。
Next, in the procedure INTERPRET at line number 446 and below of EDITREAD-SYS-CALL, at line numbers 446 to 470,
The group of statements executed when the procedure INTERPRET is invoked by the value represented by ECHO-STATE is shown. These statements use the variable echo-ma
The variable mstrt from cro-start and the variable echo-macro-si
Set mstop from ze. As described above, CHANNEL-DATA
Are the locator information 2 in the default table 801 that finds the beginning and end of the display sequence 209.
Indicates the value at 01. Thus, the variable mstrt then specifies the location of the first byte in the display sequence 209, and the variable limit specifies the language byte in the display sequence 209.

次に、行番号484乃至492におけるループは、そのLV21
9とUV221が手順INTERPRETの呼出しのため使用されたデ
ータ・コード即ち入力コードを含むある範囲の値を指定
する編集命令シーケンス215について表示シーケンスを
探索する。もしこのようなシーケンスを見出すならば、
このループのステートメントは変数mstrtをセットして
編集命令バイト225の最初のバイトを指定し、かつ変数m
stopをセットして最後のバイトを指定する。後者の変数
がセットされる値はサイズ223から計算される。これら
の変数がセットされた後、制御はSTART−INTERPRETING
(行番号495)に送られる。さもなければ、このループ
は、コードと対応する編集命令シーケンス215を見出し
あるいは表示シーケンス209の終りに達するまで探索を
続行する。
Next, the loop at lines 484-492 is the LV21
9 and UV 221 search the display sequence for an edit command sequence 215 that specifies a range of values including the data code or input code used to invoke the procedure INTERPRET. If you find such a sequence,
The statement in this loop sets the variable mstrt to specify the first byte of edit instruction byte 225, and the variable mstrt
Set stop to specify the last byte. The value to which the latter variable is set is calculated from size 223. After these variables are set, the control will be START-INTERPRETING
(Line number 495). Otherwise, the loop continues searching until the code and the corresponding edit instruction sequence 215 are found or the end of the display sequence 209 is reached.

一般に、作業バッファ113におけるデータ・コードは
印刷可能な文字に対するデータ・コードである。この場
合、前述の如く、関連する編集命令シーケンスはES805
であり、その編集命令バイト225は16進数値(10進数の1
18)を有する単一のバイトからなっている。手順INTERP
RETの呼出しに使用したデータ・コードが印刷可能な文
字に対するものであるという前提に基づく説明を続けれ
ば、制御がSTART−INTERPRETINGに送られる時、mstopは
同じ場所を指定する。その結果、行番号509乃至861にお
けるDO WHILEループは1回だけ実行する。このOD WHILE
ループにおける最初のステートメントは、mstrtにより
指定されるバイトの値を可変バイトに割当てる。本例に
おいては、このように可変バイトは10進数118を受取
る。このバイト値はこの時OPERATOR−DISPATCH−TABLE
に対する指標として使用される。本明細書の最後にある
PL/IソーステキストA「EDITREAD−SYS−CALL」におけ
る行番号49の宣言に示されるように、OPERATOR−DISPAT
CH−TABLEの118番目の要素が値5を含んでいる。
Generally, the data code in work buffer 113 is the data code for a printable character. In this case, as described above, the relevant edit instruction sequence is ES805
And the edit instruction byte 225 is a hexadecimal value (decimal 1).
18) consists of a single byte. Procedure INTERP
Continuing with the premise that the data code used to invoke RET is for printable characters, when control is sent to START-INTERPRETING, mstop specifies the same location. As a result, the DO WHILE loop in lines 509 to 861 is executed only once. This OD WHILE
The first statement in the loop assigns the value of the byte specified by mstrt to the variable byte. In this example, the variable byte thus receives decimal number 118. This byte value is then OPERATOR-DISPATCH-TABLE
Used as an indicator for At the end of this specification
As shown in the declaration at line 49 in the PL / I source text A "EDITREAD-SYS-CALL", the OPERATOR-DISPAT
The 118th element of CH-TABLE contains the value 5.

この値はこの時、行番号516乃至845におけるDO CASE
ステートメントにおけるどのケースが実行されるべきか
を判定するため使用される。値5に対するケースは行番
号541乃至544において見出され、この場所におけるステ
ートメントはINTERPRETが呼出された時受取ったデータ
・コードを用いて手順Echoを呼出す。前述の如く、この
手順Echoは手順put−chrをしてデータ・コードを表示バ
ッファ309に対して出力させるのである。
This value is then the value of DO CASE in rows 516-845.
Used to determine which case in the statement should be executed. The case for the value 5 is found in line numbers 541 through 544, where the statement at this point calls the procedure Echo with the data code received when INTERPRET was called. As described above, this procedure Echo performs the procedure put-chr to output the data code to the display buffer 309.

手順paintは作業バッファ113に含まれた各データ・コ
ード毎に前述のステップを実施し、その結果手順paint
が終了した時、表示バッファ309は作業バッファ113にお
けるデータ・コードと対応する表示コードを含み、手順
flush−bufferが呼出される時、ディスプレイ107は作業
バッファ113の視覚的表示を行なう。
The procedure paint performs the above-described steps for each data code contained in the work buffer 113, and as a result, the procedure paint
Is completed, display buffer 309 contains the display code corresponding to the data code in work buffer 113, and
When flush-buffer is called, the display 107 provides a visual display of the working buffer 113.

EDITREAD−SYS−CALLの初期制御部707と対応する次の
部分は、初期シーケンス205(行番号413)に含まれる編
集命令シーケンス215の実行のため手順INTERPRETを呼出
す。省略時テーブル801においては、これらはIM806とラ
ベルを付したバイトである。これらは、DEFAULT−TABLE
の行番号46における[Set−cursor−type insert−mod
e]により指定される操作と対応する。この操作は変数c
ursor−typeを変数insert−modeの値にセットし、これ
によりディスプレイ107がどのようにカーソルの場所を
示すかを判定する。この操作においては、手順はSet−c
ursor−typeオペレータであり、手順insert−modeはオ
ペランドであり、前述の如く、編集命令バイト225にお
いては、オペランドを指定するバイトは操作を指定する
バイトに先行し、その結果IM806における16進数値はオ
ペランドを指定し、16進数値9Bはオペレータを指定す
る。
The next part corresponding to the initial control unit 707 of EDITREAD-SYS-CALL calls the procedure INTERPRET for executing the edit instruction sequence 215 included in the initial sequence 205 (line number 413). In the default table 801, these are the bytes labeled IM806. These are DEFAULT-TABLE
[Set-cursor-type insert-mod
e]. This operation uses the variable c
ursor-type is set to the value of the variable insert-mode, which determines how the display 107 indicates the location of the cursor. In this operation, the procedure is Set-c
ursor-type operator, the procedure insert-mode is an operand, and as described above, in the edit instruction byte 225, the byte specifying the operand precedes the byte specifying the operation, and as a result, the hexadecimal value in IM806 is Specify the operand, and the hexadecimal value 9B specifies the operator.

行番号471乃至476において本例に対するステートメン
トから判るように、手順mstrtは1にセットされ、mstop
は初期マクロ・サイズ803から得た値、本例においては
2バイトを指定する2にセットされる。この時、翻訳さ
れるべき2バイトが存在する点を除いて、START−INTER
PRETINGで始まるステートメントが前述の如く作動し、
その結果手順DO LOOPが2回実行される。
As can be seen from the statements for this example in lines 471 to 476, the procedure mstrt is set to 1 and mstop
Is set to 2 which specifies the value obtained from the initial macro size 803, 2 bytes in this example. At this time, except that there are 2 bytes to be translated, START-INTER
The statement beginning with PRETING works as described above,
As a result, the procedure DO LOOP is executed twice.

最初の実行と同時に、この可変バイトは16進数値42
(10進数の66)を有し、OPERATOR−DISPATCH−TABLEの
行番号47の66番目のエントリは値4を有し、DO CASEス
テートメントの4番目のケース(EDITREAD−SYS−CALL
の行番号536乃至539)はバイトの値、本例においては変
数insert−modeにより指定された変数値をインタープリ
タ・スタック725に置く。
On first run, this variable byte has a hexadecimal value of 42
(66 in decimal), the 66th entry of line number 47 of the OPERATOR-DISPATCH-TABLE has the value 4, and the fourth case of the DO CASE statement (EDITREAD-SYS-CALL
Line numbers 536 to 539) put the value of the byte, in this example, the variable value specified by the variable insert-mode on the interpreter stack 725.

2回目の実行と同時に、バイトは16進数値9B(10進数
の155)を有し、OPERATOR−DISPATCH−TABLEの宣言の行
番号51の155番目のエントリは値31を有し、DO CASEステ
ートメントの31番目のケース(EDITREAD−SYS−CALLの
行番号684乃至693)はインタープリタ・スタック725の
最上位における値が変数CURSOR−TYPEに割当てられるこ
とを指定する。この値は変数insert−modeの値であるた
め、CURSOR−TYPEはDEFAUIT−TABLEの行番号46において
指定される如き値を受取るのである。
At the same time as the second execution, the byte has the hexadecimal value 9B (decimal 155), the 155th entry of line number 51 in the OPERATOR-DISPATCH-TABLE declaration has the value 31 and the DO CASE statement The 31st case (EDITREAD-SYS-CALL, line numbers 684-693) specifies that the value at the top of the interpreter stack 725 is assigned to the variable CURSOR-TYPE. Since this value is the value of the variable insert-mode, CURSOR-TYPE receives the value as specified in line number 46 of DEFAUIT-TABLE.

(6.2.2 制御ループ705の作用) 初期制御部707の終了後、EDITREAD−SYS−CALLは制御
ループ705の行番号422乃至727に入り、入力装置109が区
切りコードを受取るまでこの入力装置109から入力コー
ドの読出しを継続する。前述の如く、読出し機能部711
はスクリーン制御部713の手順flush−bufferを呼出し、
従って1つの文字が読出される毎に表示バッファ309の
内容がディスプレイ107上に表示される。この事例の目
的のためには、EDITREAD−SYS−CALLが3つの入力コー
ド、即ち6の2進数表示を含みかつ次の入力コードによ
り指定されるデータ・コードに対応するカーソルの右方
向探索を指定するバイトと、65の2進数表示を含み探索
すべき文字「A」を指定するバイトと、省略時テーブル
801が区切りとして定義するASCIIのニューライン文字を
指定する10の2進週表示を含むバイトとを受取るものと
する。
(6.2.2 Operation of Control Loop 705) After the end of the initial control unit 707, EDITREAD-SYS-CALL enters the line numbers 422 to 727 of the control loop 705, and from this input device 109 until the input device 109 receives the delimiter code. Continue reading the input code. As described above, the read function unit 711
Calls the procedure flush-buffer of the screen control unit 713,
Therefore, every time one character is read, the contents of the display buffer 309 are displayed on the display 107. For the purposes of this example, EDITREAD-SYS-CALL specifies a rightward search of the cursor containing three input codes, ie, the binary code of 6, and corresponding to the data code specified by the next input code. The default byte, the byte specifying the character "A" to be searched, including the 65 binary representations, and the default table
Assume that byte 801 specifies the ASCII newline character that 801 defines as a delimiter and contains a binary weekday representation.

最初に、これらの入力コードに対して省略時テーブル
801がどの動作を定義するかを調べるため明細書の最後
にあるPL/IソーステキストB「DEFAURT−TABLE」におけ
るDEFAULT−TABLEについて述べれば、順方向探索のため
の動作が行番号99上に定義される。即ち、 06,06:[Set state 2] DEFAULT−TABLEのこの部分は、状態121と対応する可
変状態が値2にセットされるべきことを指定する。次入
力コード65が入力すると、状態121は値2を有し、手順I
NTERPRETがこの値により呼出され、この手順はDEFAULT
−TABLEの行番号122と123において指定された命令シー
ケンスを使用する。即ち、 00,FF:[Mod−attribute V2「Minus[Search cha
r]]] 上記の命令は、ED101が文字を見出すならば、探索の
初めと終りの間の文字範囲が探索の範囲を示すため表示
される方法を修正するため、文字を探索すること、また
次いで状態121を0にリセットすることを指定する。区
切り文字に対する命令がDEFAULT−TABLEの行番号109上
に見出される。即ち、 0A,0F:[Delimit] この命令により指定される操作については以下におい
て詳細に説明する。
First, a default table for these input codes
To find out what action 801 defines, consider the DEFAULT-TABLE in PL / I source text B "DEFAURT-TABLE" at the end of the description. Is done. 06,06: [Set state 2] This part of the DEFAULT-TABLE specifies that the variable state corresponding to state 121 should be set to the value 2. When the next input code 65 is entered, the state 121 has the value 2 and the procedure I
NTERPRET is called with this value, this procedure is DEFAULT
-Use the instruction sequence specified in line numbers 122 and 123 of TABLE. That is, 00, FF: [Mod-attribute V2 “Minus [Search cha
r]]] The above instructions search for a character if ED101 finds a character, to modify the way the character range between the beginning and end of the search is displayed to indicate the range of the search, and Next, the state 121 is specified to be reset to zero. The instruction for the delimiter is found on line number 109 of the DEFAULT-TABLE. That is, 0A, 0F: [Delimit] The operation specified by this instruction will be described in detail below.

これらの命令と対応する省略時テーブル801における
編集命令シーケンス215が第8図において示されてい
る。ES807は06,06:[Set state 2]と対応し、ES809
は、 00,FF:[Mod−attribute V2[Minus[Search/B cha
r]]] [Set state 0] と対応し、ES811は0A,0F:[Delimit]に対応している。
The edit instruction sequence 215 in the default table 801 corresponding to these instructions is shown in FIG. ES807 corresponds to 06,06: [Set state 2], ES809
Is 00, FF: [Mod-attribute V2 [Minus [Search / B cha
r]]] [Set state 0], and ES811 corresponds to 0A, 0F: [Delimit].

ED101は、下記の如く入力コード6、65および10に対
応して前記の編集命令シーケンスを実行する。即ち、ED
ITREAD−SYS−CALLの行番号426上に示すように、制御ル
ープ705が読出し手順の呼出しにより新たな入力コード
を得る毎に、このループは入力コードおよび状態121の
その時の値を用いて手順INTERPRETを呼出す。手順INTER
PRETにおける行番号462乃至465は前記の入力コードおよ
び状態121の値を用いて省略時テーブル801における適正
な編集命令シーケンス215の場所を生成する。前述の如
く、変数DEFAULT−TABLEは省略時テーブル801において
ワード1,6乃至2,5からなるDEFAULT−TABLE203を識別す
る。省略時テーブル801における最初のワードは状態=
0に対するバッファ編集シーケンス213の初期シーケン
ス205の開始からのバイトにおけるオフセット、2回目
は状態=1に対するオフセット、、、、等を含む。DEFA
ULT−TABLEに対する指標として状態121の値を用いて、
手順INTERPRETは与えられた状態の値に対するバッファ
編集シーケンス213の初めと終りを見出し、初めにはmst
rtを、また終りにはlimitをセットする。手順INTERPRET
はこの時入力コードに対する編集命令シーケンス215を
見出し、この編集命令シーケンスを前述の如く実行す
る。
The ED 101 executes the above-described editing instruction sequence in response to the input codes 6, 65 and 10 as described below. That is, ED
As shown on line number 426 of ITREAD-SYS-CALL, each time control loop 705 obtains a new input code by invoking the read procedure, the loop uses the input code and the current value of state 121 to execute the procedure INTERPRET. Call. Procedure INTER
Line numbers 462 through 465 in PRET use the input code and the value of state 121 to generate the appropriate edit instruction sequence 215 location in default table 801. As mentioned above, the variable DEFAULT-TABLE identifies the DEFAULT-TABLE 203 in the default table 801 consisting of words 1,6 to 2,5. The default word in the default table 801 is state =
The second includes an offset in bytes from the start of the initial sequence 205 of the buffer edit sequence 213 for 0, an offset for state = 1,. DEFA
Using the value of state 121 as an indicator for ULT-TABLE,
The procedure INTERPRET finds the beginning and end of the buffer edit sequence 213 for a given state value,
Set rt and end with limit. Procedure INTERPRET
Finds an edit instruction sequence 215 for the input code at this time and executes this edit instruction sequence as described above.

当業者は以上の説明およびEDITREAD−SYS−CALLのソ
ース・テキストから、省略時テーブル801における特定
の編集命令シーケンス215が如何にして手順INTERPRETに
より翻訳されるかを理解することができるため、手順
[Delimit]の実行がED101をして操作を停止させる方法
に関してのみ詳細に説明する。
From the above description and from the source text of EDITREAD-SYS-CALL, the procedure [ [Delimit] will only be described in detail with respect to how the ED 101 causes the operation to stop.

(6.2.3 ED101の一実施例の作用の停止方法) 区切り文字が受取られる時、手順INTERPRETにおいて
実行されたステートメントは行番号553乃至562に存在す
る。これらのステートメント群は、ED101の本実施例に
おいて使用された区切り文字が1つ又は2つのバイト・
コードからなるものであり、本論においては重要でない
という事実に即して行なう。実際にED101に操作を終了
させるステートメントは行番号560乃至561に存在する。
行番号560における割当てストートメントは状態121を省
略時テーブル801に編集命令シーケンス215が存在する状
態の数よりも大きな値にセットし、行番号561における
割当てステートメントは可能な値mstopより大きなmacro
−indexを10000にセットする。macro−indexがmstopよ
りも大きな値を有する時、行番号509上で始まるループD
O WHILEが終了する。この状態は更に行番号866における
ステートメントRETURNの実行を惹起し、これが制御を行
番号422乃至427における制御ループ705に戻させる。こ
の時、状態121は省略時テーブル801における状態の数よ
り大きな値を有するため、このループが終了して最終制
御部703が実行を開始する。
6.2.3 How to stop the operation of one embodiment of ED101 When the delimiter is received, the statement executed in the procedure INTERPRET is at lines 553-562. These statements consist of one or two bytes where the delimiter used in this embodiment of ED101 is one or two bytes.
It is made up of code that is not important in this paper. The statement that causes the ED 101 to actually end the operation exists at line numbers 560 to 561.
The assignment statement at line number 560 sets the state 121 to a value greater than the number of states for which there is an edit instruction sequence 215 in the default table 801 and the assignment statement at line number 561 sets the macro greater than the possible value mstop.
Set -index to 10000. When macro-index has a value greater than mstop, loop D starting on line number 509
O WHILE ends. This condition also causes the execution of the statement RETURN at line number 866, which causes control to return to the control loop 705 at lines 422-427. At this time, since the state 121 has a value larger than the number of states in the default table 801, this loop ends and the final control unit 703 starts execution.

(6.2.3.1 最終制御部703の作用) 行番号433から判るように、最終制御部703は再び、こ
の時手順FINAL−STATEにより手順INTERPRETを呼出す。
この状態における手順INTERPRETのステートメントは行
番号477乃至482に存在する。これらのステートメントは
変数fanal−macro−startの値およびFinal Macro Size8
13の値から最終シーケンス211を見出す。省略時テーブ
ル801は最終シーケンス211を含まないため、fanal−moc
ro−startは表示シーケンス209の初めを指定し、第8区
から判るように、Final Macro Size813は値0を有す
る。このように、制御がSTART−INTERPRETINGに送られ
る時、mstopはmstrtより小さく、行番号509において開
始するループDO WHILEは実行されない。このように、手
順INTERPRETは如何なる動作も生じることなく最終制御
部703(行番号429乃至445)に戻り、最終制御部703はfl
ush−bufferの呼出しによりED101の作用を終了して、デ
ィスプレイ107に対して表示バッファ309の内容を出力さ
せ、次いでEDITREAD−SYS−CALLを呼出したプログラム
に戻す。
(6.2.3.1 Operation of the Final Control Unit 703) As can be seen from the line number 433, the final control unit 703 again calls the procedure INTERPRET according to the procedure FINAL-STATE.
The statement of the procedure INTERPRET in this state exists at line numbers 477 to 482. These statements are based on the value of the variable fanal-macro-start and the Final Macro Size 8
Find the final sequence 211 from the 13 values. Since the default table 801 does not include the final sequence 211, the fanal-moc
The ro-start specifies the beginning of the display sequence 209, and as can be seen from the eighth section, the Final Macro Size 813 has the value 0. Thus, when control is sent to START-INTERPRETING, mstop is less than mstrt and the loop DO WHILE starting at line number 509 is not executed. Thus, the procedure INTERPRET returns to the final control unit 703 (line numbers 429 to 445) without any operation, and the final control unit 703
The operation of the ED 101 is terminated by calling the ush-buffer, the contents of the display buffer 309 are output to the display 107, and the EDITREAD-SYS-CALL is returned to the called program.

本発明は、その主旨即ち実質的な特性から逸脱するこ
となく更に他の特定の態様において実施が可能である。
このため、本文の実施態様は全ての観点から例示であっ
て限定と考えるべきものではなく、本発明の範囲は本文
の記述によらず頭書の特許請求の範囲により示されたも
のであり、従って特許請求の範囲に意義および相等範囲
に該当する全ての変更は本発明に包含されるものと見做
すべきものである。
The present invention may be embodied in other specific forms without departing from its spirit or essential characteristics.
Therefore, the embodiments of the present invention are illustrative in all respects and should not be considered as limitations, and the scope of the present invention is indicated by the appended claims rather than by the text, and All modifications that come within the meaning and range of equivalency of the claims are to be considered as being included in the present invention.

PL/IソーステキストA 「EDITREAD−SYS−CALL」 PL / I source text A "EDITREAD-SYS-CALL"

【図面の簡単な説明】[Brief description of the drawings]

第1図は本発明を含むディジタル・コンピュータ・シス
テムを示すブロック図、第2は本発明の編集テーブルお
よび編集命令シーケンスを示す図、第3図は単一のCPU
を有するディジタル・データ処理システムにおける本発
明の第1の実施例を示すブロック図、第4図はCPUおよ
び入出力プロセッサを有するディジタル・データ処理シ
ステムにおける本発明の第2の実施例を示すブロック
図、第5図は「スマート」ターミナルを備えたディジタ
ル・データ処理システムにおける本発明の第3の実施例
を示すブロック図、第6図は、多重プログラミング型デ
ィジタル・データ処理システムにおける本発明の第4の
実施例を示すブロック図、第7図は本発明の一実施例に
おける手順「EDITREAD−SYS−CALL」を示す機能ブロッ
ク図、および第8図は本発明の一実施例における特定の
編集テーブルの16進表示である。 101……編集装置(ED)、103……メモリー、105……プ
ロセッサ、107……ディスプレイ、109……入力装置、11
1……編集テーブル、113……作業バッファ、115……制
御データ、116……ET−ID、117……外部制御データ(EC
D)、119……内部制御データ(ICD)、123……BI、125
……ETID、126……CP、127……データ処理システム(D
P)、301……単一プロセッサ・システム、303……CPU、
305……ターミナル、309……表示バッファ、311……入
力バッファ、313……メモリー、401……ディジタル・デ
ータ処理システム、403……IOP、404……ユーザ・プロ
グラム、501、502……「スマート」ターミナル、503…
…端末プロセッサ、505……端末メモリー、509……外部
制御装置。
FIG. 1 is a block diagram showing a digital computer system including the present invention, FIG. 2 is a diagram showing an edit table and an edit instruction sequence of the present invention, and FIG.
And FIG. 4 is a block diagram showing a digital data processing system having a CPU and an input / output processor according to a second embodiment of the present invention. FIG. 5 is a block diagram showing a third embodiment of the present invention in a digital data processing system having a "smart" terminal, and FIG. 6 is a fourth embodiment of the present invention in a multi-programming digital data processing system. FIG. 7 is a functional block diagram showing a procedure "EDITREAD-SYS-CALL" in one embodiment of the present invention, and FIG. 8 is a diagram of a specific editing table in one embodiment of the present invention. It is a hexadecimal display. 101: Editing device (ED), 103: Memory, 105: Processor, 107: Display, 109: Input device, 11
1 Edit table, 113 Work buffer, 115 Control data, 116 ET-ID, 117 External control data (EC
D), 119: Internal control data (ICD), 123: BI, 125
…… ETID, 126 …… CP, 127 …… Data processing system (D
P), 301 ... single processor system, 303 ... CPU,
305 Terminal 309 Display buffer 311 Input buffer 313 Memory 401 Digital data processing system 403 IOP 404 User program 501 502 502 Smart "Terminal, 503 ...
... Terminal processor, 505 ... Terminal memory, 509 ... External control device.

───────────────────────────────────────────────────── フロントページの続き (72)発明者 ポ−ル・ブラツドフオ−ド・デイル アメリカ合衆国マサチユ−セツツ州 01536ノ−ス・グラフトン・オ−ルド・ ウエストボロ−・ロ−ド210 (56)参考文献 特開 昭55−6637(JP,A) 特開 昭48−11936(JP,A) 特開 昭47−12057(JP,A) 「bit」1980年3月共立出版(株) 発行Vol.12 No.4 P.26−34 「bit」1981年11月共立出版(株) 発行Vol.13 No.13 P.67−73 「bit」1981年12月共立出版(株) 発行Vol.13 No.14 P.68−73 「情報処理」1982年8月(社)情報処 理学会発行 Vol.23,No.8, P.719−729 「コンパイラ作成の技法」D.Gri es著、牛島和夫訳、1979年日本コンピ ュータ協会発行 P.57−96 ──────────────────────────────────────────────────の Continued on the front page (72) Inventor Paul Bradford Dale Massachusetts, USA 01536 North Grafton Old Westborough Road 210 (56) References JP-A-55-6637 (JP, A) JP-A-48-11936 (JP, A) JP-A-47-12057 (JP, A) "bit" published by Kyoritsu Shuppan Co., Ltd., March 1980, Vol. 12 No. 4P. 26-34 "bit", November 1981, published by Kyoritsu Shuppan Co., Ltd., Vol. 13 No. 13P. 67-73 “bit”, December 1981, published by Kyoritsu Shuppan Co., Ltd., Vol. 13 No. 14P. 68-73 "Information Processing", August 1982, Japan Information Processing Society, Vol. 23, No. 8, p. 719-729 "Technique of Compiler Creation" Gries, translated by Kazuo Ushijima, published in 1979 by the Japan Computer Association. 57−96

Claims (6)

(57)【特許請求の範囲】(57) [Claims] 【請求項1】データ処理システムにおいて、データ・コ
ードの修正を行ないかつデータ・コードと対応する視覚
的表示シーケンスを表示するための編集装置(301)で
あって、 (1)前記編集装置において前記データ・コードの修正
法を記述する入力コードを受取る受取装置(109)と、 (2)前記データ・コードに対応する視覚的表示用の表
示コードに応答して前記視覚的表示シーケンスを表示す
る表示装置(107)と、 (3)(a)前記データ・コードを記憶するバッファ・
メモリー装置(113)と、 (b)(i)前記入力コードに応答し、前記バッファ・
メモリー装置における編集操作を指定する、バッファ編
集命令シーケンス(211)と、 (ii)前記データ・コードに応答し、前記表示コードの
シーケンスを生成する操作を指定する、表示編集命令シ
ーケンス(209)と、 からなる、編集命令シーケンスを含む編集テーブルを記
憶する編集テーブル・メモリー装置(111)と、 (c)前記バッファ・メモリー装置内のデータ・コード
の記憶場所を指示するデータ(BI123)と、前記入力コ
ードと組み合せて前記編集テーブル・メモリー内の編集
命令シーケンスを指示することによって前記編集装置を
制御するための状態データ(STATE121)とを記憶する制
御データ・メモリー装置(115)と、 (d)前記編集命令シーケンスによって指定され、CPU
を制御してデータ・コードの修正及び表示をさせるED命
令シーケンスを記憶する装置(307)と、 からなる、記憶装置(313)と、 (4)前記受取装置、前記表示装置および前記記憶装置
と結合され、 (a)前記受取装置から前記入力コードを受取り、 (b)該入力コードの各々とその時の状態データの値と
の組み合せに従って前記バッファ編集命令シーケンスの
記憶場所を決定し、 (c)該対応するバッファ編集命令シーケンスに対応す
るED命令シーケンスを取り出し、 (d)前記バッファ・メモリー装置内のデータ・コード
を修正するために前記ED命令シーケンスに応答すると共
に、 (e)前記バッファメモリー装置からデータ・コードを
受取り、 (f)前記データ・コードの各々と対応する前記表示編
集命令シーケンスの記憶場所を決定し、 (g)該表示編集命令シーケンスに対応するED命令シー
ケンスを取り出し、 (h)前記表示コードのシーケンスを生成するために、
前記ED命令シーケンスに応答して、 (i)前記表示装置を前記生成された表示コードのシー
ケンスに応答させ、 (j)編集操作の進行に伴って前記制御データ・メモリ
ー内の各データの値を修正することにより前記のバッフ
ァ編集命令シーケンスおよび前記表示編集命令シーケン
スに応答する、 CPU(303)と、を含み、 前記編集テーブル・メモリー装置(111)が書込可能な
メモリー装置を含み、以て前記編集装置のユーザが前記
編集テーブルを変更することができ、あるいは前記編集
装置に対する新たな編集テーブルを提供することができ
ることを特徴とする編集装置。
1. An editing apparatus (301) for correcting a data code and displaying a visual display sequence corresponding to the data code in a data processing system, wherein: (1) the editing apparatus includes: A receiving device (109) for receiving an input code describing a method of modifying a data code; and (2) a display for displaying the visual display sequence in response to a display code for a visual display corresponding to the data code. A device (107), and (3) (a) a buffer for storing the data code.
(B) (i) in response to the input code, the memory device (113);
A buffer edit instruction sequence (211) for specifying an edit operation in the memory device; (ii) a display edit instruction sequence (209) for specifying an operation for generating the display code sequence in response to the data code. An edit table memory device (111) for storing an edit table including an edit instruction sequence, comprising: (c) data (BI123) indicating a storage location of a data code in the buffer memory device; A control data memory device (115) for storing state data (STATE 121) for controlling the editing device by indicating an editing instruction sequence in the editing table memory in combination with an input code; (d) CPU specified by the edit instruction sequence
A storage device (307) for storing an ED instruction sequence for controlling the correction and display of a data code, and a storage device (313) comprising: (4) the receiving device, the display device, and the storage device; (A) receiving the input codes from the receiving device; (b) determining a storage location of the buffer edit instruction sequence according to a combination of each of the input codes and a current state data value; (c) Retrieving an ED instruction sequence corresponding to the corresponding buffer edit instruction sequence; (d) responding to the ED instruction sequence to modify a data code in the buffer memory device; and (e) the buffer memory device. (F) determining a storage location of the display edit instruction sequence corresponding to each of the data codes. And takes out the ED instruction sequence corresponding to (g) said display editing instruction sequence, to generate a sequence of (h) the display code,
In response to the ED instruction sequence, (i) causing the display device to respond to the generated sequence of display codes; and (j) changing the value of each data in the control data memory as the editing operation proceeds. A CPU (303) responsive to said buffer edit command sequence and said display edit command sequence by modifying; and said edit table memory device (111) includes a writable memory device. An editing device, wherein a user of the editing device can change the editing table or can provide a new editing table for the editing device.
【請求項2】前記の編集命令シーケンスが、 (a)前記入力コードまたは前記データ・コードのどち
らが前記編集命令シーケンスと対応するかを指定する範
囲指定子(217)と、 (b)前記編集命令シーケンスにおけるバイト数を指定
するサイズ指定子(223)と、 (c)少なくとも1つの前記編集命令(225)を含むこ
とを特徴とする特許請求の範囲第1項に記載の編集装
置。
2. The editing instruction sequence includes: (a) a range specifier (217) for specifying which of the input code or the data code corresponds to the editing instruction sequence; and (b) the editing instruction sequence. 2. The editing apparatus according to claim 1, comprising: a size specifier (223) for specifying the number of bytes in a sequence; and (c) at least one of the editing instructions (225).
【請求項3】前記の編集命令が、 (a)前記処理装置により処理されるべきデータを表わ
す少なくとも1つのオペランド・バイトと、 (b)単一の命令コード・バイトを含み、 前記の少なくとも1つのオペランド・バイトが前記の単
一の命令コード・バイトに先行し、 前記メモリー装置が更に、前記オペランド・バイトによ
り表わされるデータを記憶するオペランド・メモリー装
置を含む、 ことを特徴とする特許請求の範囲第1項に記載の編集装
置。
3. The editing instruction comprises: (a) at least one operand byte representing data to be processed by the processing unit; and (b) a single instruction code byte. 2. The method of claim 1, wherein one operand byte precedes said single opcode byte, and said memory device further comprises an operand memory device for storing data represented by said operand byte. 3. The editing device according to claim 1, wherein
【請求項4】前記編集テーブル・メモリー装置(111)
が、各々が1つの関連する編集テーブル識別値を有する
複数の編集テーブルを含み、前記記憶装置が更に単一の
前記編集テーブル識別値(125)を記憶する編集テーブ
ル識別子メモリー装置(117)を含み、前記処理装置は
前記複数の編集テーブルの1つを位置決めすることによ
り前記編集テーブル識別値に応答することを特徴とする
特許請求の範囲第1項に記載の編集装置。
4. The editing table memory device (111).
Includes a plurality of edit tables each having an associated edit table identification value, and said storage further includes an edit table identifier memory device (117) for storing a single said edit table identification value (125). 2. The editing apparatus according to claim 1, wherein said processing device responds to said edit table identification value by positioning one of said plurality of edit tables.
【請求項5】前記編集テーブル・メモリー装置が、 (a)書込可能なメモリー装置と、 (b)読出し専用メモリー装置とを含み、 前記複数の編集テーブルが、 (a)前記の書込可能なメモリー装置に含まれる書込可
能編集テーブルと、 (b)前記読出し専用メモリー装置に含まれる読出し専
用編集テーブルを含むことを特徴とする特許請求の範囲
第4項記載の編集装置。
5. The edit table memory device includes: (a) a writable memory device; and (b) a read-only memory device, wherein the plurality of edit tables are: 5. The editing device according to claim 4, further comprising: a writable edit table included in a memory device, and (b) a read-only edit table included in the read-only memory device.
【請求項6】データ処理システムにおいて、データ・コ
ードの修正と、視覚的表示シーケンスの表示をするため
の編集装置(101)であって、 (1)前記編集装置において前記データ・コードの修正
法を記述する入力コードを受取るための受取装置(10
9)と、 (2)前記データ・コードに対応する視覚的表示用の表
示コードに応答して前記の視覚的表示シーケンスを表示
する表示装置(107)と、 (3)(a)前記データ・コードを記憶するバッファ・
メモリー装置(113)と、 (b)前記編集装置の動作を指定する状態データ(STAT
E121)を少なくとも記憶する制御データ・メモリー装置
(115)と、 (c)(i)前記入力コードに応答して前記データ・コ
ードを修正し、前記状態データの値を変更する命令を含
み得る、複数の編集命令を含む編集命令シーケンスを含
む、各々前記状態データの1つの値と対応する4つ以上
のセクション(211)と、 (ii)前記表示コードのシーケンスを生成する操作を指
定する編集命令シーケンスを含む少なくとも1つの表示
セクション(209)と、 からなる、編集テーブルを記憶する編集テーブル・メモ
リー装置(111)と、 (d)前記編集命令シーケンスによって指定され、CPU
を制御してデータ・コードの修正及び表示をさせるED命
令シーケンスを記憶する装置(307)と、からなる記憶
装置(103)と、 (4)前記受取り装置、表示装置および記憶装置と結合
され、 (a)前記受取装置から前記入力コードを受取り、 (b)前記各入力コードと前記状態値を組み合せて、前
記状態値と対応する前記セクションの記憶場所を決定
し、対応するセクションにおける前記入力コードと対応
する編集命令シーケンスの記憶場所を決定し、 (c)前記の対応するセクションにおける前記の対応す
る編集命令シーケンスの編集命令を受取り、 (d)前記の対応する編集命令シーケンスの編集命令に
応答して、前記バッファ・メモリー装置における前記デ
ータ・コードを修正すると共に、 (e)前記バッファ・メモリー装置からデータ・コード
を受取り、 (f)前記各データ・コード毎に、 (i)前記表示セクションにおける前記データ・コード
と対応する編集命令シーケンスの記憶場所を決定し、 (ii)前記表示セクションにおける前記の対応する編集
命令シーケンスの編集命令を受取り、かつ前記表示コー
ドのシーケンスを生成して前記表示装置をして該表示コ
ードをシーケンスに応答させることにより、前記の対応
する編集命令シーケンスの編集命令に応答する、 処理装置(105)とを設け、 以て前記入力コードに応答して前記データ・コードが前
記処理装置により修正され、かつ該修正されたデータ・
コードと対応する視覚的表示が前記データ・コードに応
答して前記表示装置上に表示されると共に、前記編集テ
ーブル・メモリー装置(111)が書込可能なメモリー装
置を含み、以て前記編集装置のユーザが前記編集テーブ
ルを変更することができ、あるいは前記編集装置に対す
る新たな編集テーブルを提供することができることを特
徴とする編集装置。
6. An editing device (101) for correcting a data code and displaying a visual display sequence in a data processing system, comprising: (1) a method of correcting the data code in the editing device. Device (10) for receiving an input code describing
9); (2) a display device (107) for displaying the visual display sequence in response to a display code for visual display corresponding to the data code; (3) (a) Buffer for storing code
A memory device (113); and (b) status data (STAT) for specifying the operation of the editing device.
A control data memory device (115) storing at least E121); and (c) (i) instructions for modifying the data code in response to the input code and changing the value of the status data, Four or more sections (211) each including an edit instruction sequence including a plurality of edit instructions, each section corresponding to one value of the state data; and (ii) an edit instruction specifying an operation for generating the display code sequence. An edit table memory device (111) for storing an edit table, comprising: at least one display section (209) including a sequence; (d) a CPU specified by the edit instruction sequence;
A storage device (103) for storing an ED instruction sequence for controlling the correction and display of the data code, and (4) coupled to the receiving device, the display device and the storage device, (A) receiving the input code from the receiving device; (b) determining the storage location of the section corresponding to the state value by combining each input code with the state value; And (c) receiving an edit instruction of the corresponding edit instruction sequence in the corresponding section, and (d) responding to an edit instruction of the corresponding edit instruction sequence in the corresponding section. Modifying the data code in the buffer memory device, and (e) decoding the data code from the buffer memory device. (F) for each of the data codes, (i) determining a storage location of an edit instruction sequence corresponding to the data code in the display section; and (ii) determining a location of the edit instruction sequence in the display section. Responding to the edit command of the corresponding edit command sequence by receiving an edit command of the corresponding edit command sequence and generating the sequence of display codes and causing the display device to respond the display code to the sequence; A processing device (105), wherein the data code is modified by the processing device in response to the input code, and the modified data
A visual display corresponding to the code is displayed on the display in response to the data code, and the edit table memory device (111) includes a writable memory device, the edit device comprising: The editing apparatus according to claim 1, wherein the user can change the editing table, or can provide a new editing table for the editing apparatus.
JP4304483A 1982-03-15 1983-03-15 Editing device driven by table Expired - Lifetime JP2620545B2 (en)

Applications Claiming Priority (4)

Application Number Priority Date Filing Date Title
US06/358,543 US4625294A (en) 1982-03-15 1982-03-15 Table-driven apparatus for data display and modification
US06/358,509 US4538225A (en) 1982-03-15 1982-03-15 Table-driven apparatus for data display and modification
US358509 1982-03-15
US358543 1982-03-15

Publications (2)

Publication Number Publication Date
JPS58221443A JPS58221443A (en) 1983-12-23
JP2620545B2 true JP2620545B2 (en) 1997-06-18

Family

ID=27000089

Family Applications (1)

Application Number Title Priority Date Filing Date
JP4304483A Expired - Lifetime JP2620545B2 (en) 1982-03-15 1983-03-15 Editing device driven by table

Country Status (2)

Country Link
JP (1) JP2620545B2 (en)
GB (1) GB2121221B (en)

Families Citing this family (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4843570A (en) * 1984-12-29 1989-06-27 Cannon Kabushiki Kaisha Block processing apparatus
JPS61221880A (en) * 1985-03-27 1986-10-02 Fujitsu Ltd Control system for conversation procedure of conversational system
DE3682880D1 (en) * 1985-11-28 1992-01-23 Canon Kk DOCUMENT PROCESSING SYSTEM.
US7231630B2 (en) * 2002-07-12 2007-06-12 Ensequence Inc. Method and system automatic control of graphical computer application appearance and execution

Family Cites Families (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
GB1340187A (en) * 1970-12-14 1973-12-12 Mectron Frigistor Ltd Methods of and apparatus for the determination of gas content
US3812945A (en) * 1972-10-18 1974-05-28 Wang Laboratories Typewriter system
CA1052911A (en) * 1974-01-02 1979-04-17 Werner Schaer Automatic writing systems and methods therefor
GB1530444A (en) * 1974-11-11 1978-11-01 Xerox Corp Automatic writing system and methods of word processing therefor
GB1512900A (en) * 1975-11-28 1978-06-01 Xerox Corp Transcriber system
US4308582A (en) * 1977-01-25 1981-12-29 International Business Machines Corp. Precursory set-up for a word processing system
US4215422A (en) * 1978-05-22 1980-07-29 International Business Machines Corporation Selectively modifiable phrase storage for a typewriter
JPS6040061B2 (en) * 1978-06-29 1985-09-09 富士通株式会社 Terminal control method
EP0043392A1 (en) * 1980-06-30 1982-01-13 International Business Machines Corporation Text processing apparatus with direct formatting of text
EP0042895B1 (en) * 1980-06-30 1984-11-28 International Business Machines Corporation Text processing terminal with editing of stored document at each keystroke

Non-Patent Citations (5)

* Cited by examiner, † Cited by third party
Title
「bit」1980年3月共立出版(株)発行Vol.12 No.4 P.26−34
「bit」1981年11月共立出版(株)発行Vol.13 No.13 P.67−73
「bit」1981年12月共立出版(株)発行Vol.13 No.14 P.68−73
「コンパイラ作成の技法」D.Gries著、牛島和夫訳、1979年日本コンピュータ協会発行 P.57−96
「情報処理」1982年8月(社)情報処理学会発行 Vol.23,No.8,P.719−729

Also Published As

Publication number Publication date
GB2121221B (en) 1986-05-14
GB8307027D0 (en) 1983-04-20
GB2121221A (en) 1983-12-14
JPS58221443A (en) 1983-12-23

Similar Documents

Publication Publication Date Title
US4595980A (en) Interactive data processing system having concurrent multi-lingual inputs
US4692896A (en) Method of processing a plurality of code systems
US4586158A (en) Screen management system
US5758154A (en) Method and system for storing configuration data into a common registry
US5467448A (en) Text formatting by the direct selection of borders in an editing display
US5903753A (en) Name space registry with backward compatibility for older applications
US5537628A (en) Method for handling different code pages in text
EP0387173A2 (en) Method for dynamic data stream creation
JPH02238516A (en) Multi-language conversion processing system for data processor
JPS6114528B2 (en)
JP2927180B2 (en) Debugging method of information processing program and debugger therefor
US4393463A (en) Insertion of character set change codes in an altered text stream
US4538225A (en) Table-driven apparatus for data display and modification
US5692198A (en) Method for executing a process defined by a script by a plurality of types of description languages and an apparatus therefor
JP2620545B2 (en) Editing device driven by table
JPH0863475A (en) System and method for formatting of position-sensitive data
US4996640A (en) Data processing system
US4924434A (en) Sharing word-processing functions among multiple processors
US4625294A (en) Table-driven apparatus for data display and modification
US4816992A (en) Method of operating a data processing system in response to an interrupt
EP0350421A2 (en) Generalized data stream transform service
US20020087302A1 (en) Processing system, processing method and recording medium
JPH0252299B2 (en)
US4661903A (en) Digital data processing system incorporating apparatus for resolving names
JPH0750480B2 (en) Text data editing device