JPH02236661A - 文字処理装置 - Google Patents

文字処理装置

Info

Publication number
JPH02236661A
JPH02236661A JP1111848A JP11184889A JPH02236661A JP H02236661 A JPH02236661 A JP H02236661A JP 1111848 A JP1111848 A JP 1111848A JP 11184889 A JP11184889 A JP 11184889A JP H02236661 A JPH02236661 A JP H02236661A
Authority
JP
Japan
Prior art keywords
data
register
record
address
contents
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.)
Granted
Application number
JP1111848A
Other languages
English (en)
Other versions
JPH0778798B2 (ja
Inventor
Shunpei Takenaka
竹中 駿平
Hiroshi Owada
浩 大和田
Katsumi Masaki
正木 克己
Shuji Ichimura
市村 秀志
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Canon Inc
Original Assignee
Canon Inc
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Canon Inc filed Critical Canon Inc
Priority to JP1111848A priority Critical patent/JPH0778798B2/ja
Publication of JPH02236661A publication Critical patent/JPH02236661A/ja
Publication of JPH0778798B2 publication Critical patent/JPH0778798B2/ja
Anticipated expiration legal-status Critical
Expired - Lifetime legal-status Critical Current

Links

Landscapes

  • Document Processing Apparatus (AREA)

Abstract

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

Description

【発明の詳細な説明】 本発明は機器に入力された文書の修正を行ない得る文字
処理装置に関する。
従来英文の文字処理妄置(ワードプロセッサ)は,文書
の゛修正を行なう場合、単語、文章、パ明細書の浄書l ラグラフ単位で文書の他の部分への転送する機能を有し
ていたが、バラグラフ中の任意の長さの文字列を転送す
る機能とか一文章中の任意の長さの文字列を転送する機
能を有していなかった.かかる欠点は日本語のワードプ
ロセッサを考える場合、日本語文では単語の切れめが英
文の如くスペースによって区切られていないため、単語
の切れめが不明確であり、英文のワードプロセッサにお
ける転送構成を日本語のワードプロセッサに備えること
は適していなかった. 本発明の目的は任意の長さの文字列を指定し、文字列よ
り任意の長さの文字列を削除し、また挿入しつる文字処
理装置を提供するものである。
以下本発明による一実施例を説明する.第1図は本発明
による文字処理装置のブロック図である.同図に於いて
、CPUはマイクロプロセッサーで、演算、論理判断等
を行なう.ABはアドレスパスで、制御対象を指示する
信号を転送する。DBはデータバスで、各種データを転
送するもので、双方向性のバスである。
CBはコントロールバスで、各種制御対象に制御信号を
印加するものである。
KBはキーボードで、文字やファンクション及びモード
を入力するキーKBI、スペースを入力するスペースキ
ーKB2、入力された文章等を有するO K B O ハキーボードコントローラで、キーボード
KBより入力されたデータをエンコードし、またインタ
ラプト信号をコントロールバスOBζこ送る。DPOは
ORTコントローラで、ORT装置DP,キャラクタジ
エネレータOG, リフレッシュメモリM,リフレッシ
ュメモリコントローラMO3を制御する。ORT装fJ
tDPは文字、記号、画等を表示しうるものである0キ
ャラクタジエネレータCGは文字コード記号コード及び
文字記号パターンの行アドレス等のコード入力により所
望の文字記号パターンを出力する。上記文字記号パター
ンはマトリクス状に形成され,行アドレスを変えること
で、文字記号パターンが出力される。リフレッシュメモ
リRはORT装qDPに表示される文字記号コードを記
憶し、OR,TコントローラDPOの制御の下に繰り返
し文字記号コードを出力する。リフレッシュメモリコン
トロ1ラMO3はORTコントローラDPOの指示に従
ってリフレッシュメモリ凡のリフレッシュサイクルとマ
イクロプロセッサーCPUよりのデータの書き込み、読
み出しを制御する。ROMは制御メモリで、各種処理手
順及び第4〜よ0図に示す制御手順及び漢字情報等を記
憶するものである。
上記制御メモリROMはR,OMコントローラMolに
より記憶された処理手順が読み出される。RAMはラン
ダムアクセスのメモリで、各種データの一時記憶に用い
られる。
第2図はメモリRAMの主要部をさらに説明するもので
、MRSRは移動範囲ステイクスレジスタ、SARは移
動範囲始めアドレスレジスタ、B/Itま移動範囲終り
アドレスレジスタ、MBは移動用バツファ,IDBは入
カデータバツファ、UBは,未使用バツファ、PI−P
4はパラメータレジスタ、ORはカーソルレジスタ,N
はレジスタ、FDRPは先頭データレコードポインタ、
LDRPは末尾データレコードポインタ.PBRPは先
頭未使用レコードポインタ、LBRPは末尾未使用レコ
ードポインタ、FTBRPは先頭移動用レコードポイン
タ、LTBRPは末尾移動用レコードポインタ等を有し
、さらに図示のレジスタ群を有する。
上述移動対象の文章を格納させるブロック移動用バツフ
ァMBは第3図に示すような構造を有しており、この構
造は入力データを入れる入力データバツファIDEも同
様に構成されており、また未使用のパツファUBも同様
の構造トなっている。移動用バツファMB、入力データ
バッファIDB、未使用バッファUBはそれぞれ8g3
図に示すレコードが1つもしくは複数個により作られて
むり必要に応じて後述の如く増減ずるものである。
B1はこのレコードの前につながるレコードの先頭アド
レスを格納するメモリロケーションで、B2はこのレコ
ードの後につながるレコードの先頭アドレスを格納する
メモリロケーションで、B3はこのレコードの中に入っ
ている有効データの長さを格納するメモリロケーション
である。レコードに記憶されるデータは最大28ワード
まででありメモリロケーションB4の位置より順につめ
られる。これは通常リスト構造と言われるものである。
複数個のレコードのつながりは上述の如くであるが、あ
るレコードの前につながる先頭の17コードとあるレコ
ードの後につながる末尾のレコードのアドレスは各種の
ポインタにより指示される。即ちこの場合は移動用バツ
ファMBの先頭レコードはポインタFTBRPに記憶さ
れ、末尾レコードはポインタLTBRPに記憶されてい
る。また同様に入力データバツファIDBの先頭データ
レコードポインタはポインタFDRPに、それの末尾デ
ータレコーダポインタはポインタLDRPζこ,また未
使用バツファUBのレコードについてはそれぞれポイン
タ1’BRP、ポインタLBRPに記憶されている。
メモリRAMはRAMコントローラMO 2gこより書
き込み、読み出しがなされる。MDは磁気ディスク装置
で、後述する形式で漢字情報を記憶する。磁気ディスク
装置MDは磁気ディスクコントローラMDDにより制御
される。
Pはプリンタで、漢字情報、カタカナ、ひらがな等の情
報を記録するものであり、プリンタコントローラPDで
制御される。
上述の構成より成る実施例の作動を次に詳述する。
本文字処理装置はキーボードKBの操作によ赴, り装置が記動されるものである。キーボードKBが操作
されると、キーボードKBより発生するインタラプト信
号がマイクロプロセッサOPUに伝えられ、これlこよ
りマイクロプロセッサOPUを介して制御メモIJRO
M内の制御手順を呼び出し、制御手順に従って各制御が
行なわれる。
第1図示メモIJROM中に記憶されている制御手順に
より本発明の目的を達するものである。
キーボードKBより各種の入力がなされると、インタラ
プトがかかりROMはROM中に記憶されているプログ
ラム領域にコントロールが移る。このコントロールプロ
グラムは第4図以下のフローチャートで示されるもので
以下順化説明する。
第4図のフローチャートにおいては特に本発明のブロッ
ク転送機能を特番こ明確ならしめるためにワードプロセ
ッサにおける各種の処理ルーチンは省略して各種ワード
プロセッサ処理ルーチン20として示すにとどめる。ブ
ロック移動をする場合はまずワードプロセッサの処理機
能の一つである、CRT装置Drに表示されるカーソル
を用い、移動したい文章等のブロックの先頭の位置にカ
ーソルを位置せしめる。ブロック移動を行う文章等のデ
ータは入力データバッファIDBにすでに入力済のデー
タであってCRT装置DP上に表示せられているもので
ある。
上述の如くブロック移動したい文章等のデータの先頭に
カーソルをもってきた状輻で、キーボードKB上の「移
動範囲」キーKB3を押すと、第4図のフローに゛於で
ステップ2lに入り、マイクロプロセッサーCPUでY
E8 (フロー(こおいてはYと表示)と判定され、ス
テップ22tこ移る。ステップ22においては前述のキ
ー「移動範囲」キーKB3がすでに押された状態である
かどうかを、第1図示メモリRAM中の移動範囲ステイ
タスレジスタMR8Rを検べることによりテストし、こ
の場合は最初であるため「移動範囲ステイタスレジスタ
JM88Bはセットされていないので移動範囲のステイ
タスではない状轢でありNO(フローにおいてはNと表
示)へ進みステップ23に移る。ステップ23において
はじめて「移動範囲」キーKB3が押されたため、移動
範囲ステイタスレジスタMR,S Rに移動範囲のステ
イタスをセットする。
次にステップ24において上述のカーソルの位買に示す
データを記憶しているメモIJRAMのレジスタOR中
のアドレスデータをメモリRAMにある範囲始めアドレ
スレジスタSARに記憶させ、次のキー人力の待機状態
となる。
カーソルの位置とこのカーソルの位+tJこ対応するメ
モリRAM中のデータのアドレスはカーソルの移動等に
おいて各種ワードプロセッサ処理ルーチン20において
検知せられていることはディスプレイ用のCRT装置D
Pを用いたワードプロセッサ番こおいては当然の事であ
るので本説明lこおいては説明を略す。
次にブロック移動をしたい文章等のデータの最終の位置
にカーソルを移動して、この状態で再びキー「移動範囲
JKB3を押すと、前述の場合と同様にステップ21を
介して,ステップ22に入り移動範囲のステイタスがあ
るかどうかをテストする。マイクロプロセッサCPUが
レジスタMR,SRを調べる。この4合はすでにステッ
プ23においてセットされているので、yFJsの枝が
選ばれステップ25に移る。
ステップ25において範囲終りのカーソル位置ζこ対応
するレジスタORのアドレスデータが範囲終りアドレス
レジスタBARにセットされる。゜次のステップ26に
おいてブロック移動を行うデータを一時的に記憶するた
めの記憶領域をクリアするため,サブルーチンのパラメ
ータ冫ジ゛スダPrをセ゛7卜する。即ちレジスタP1
を2にすることにより後述の如ぐブロック移動舟バッツ
ァMBのクリアを指定する。
移動用パツファMB)は前述の如き構造であるので,第
5図tこ示す如き手順により移動用バツアアMBの各レ
コードがクリアされる。即ち、スナップ26においてレ
ジスタP1は2にセットされているので、ステップ39
及び40に続いてステップ41以下の動作がなされる。
ステップ4lは上述の先頭移動用バッファポインタFT
BRPの内容即ち先頭移動用レコードの先頭アドレスの
次の番地の内容即ちこのレコードに連なるレコードの先
頭番地が0であるかどうかをテストしている。
すなわち第3.AメモリロケーションB2で示される内
容をテストしている。
第3図においてメモリロケーションB1に書かれている
内容がOである場合、データ等の最初のレコードである
ことを示しており、それ以前lこ続くレコードがないこ
とを示している。また同様にB2にOが入っている場合
、このレコード以後につながるレコードがない事即ち最
後のレコードであることを示している。
なおここで述べているフロー等において(XX)で示さ
れるも党はアドレス“xx”の内容ヲ示すもので、例え
ばステップ4lにおいてはポインタFTBRPの内容(
アドレスデータ)#こ1を加えた結果のアドレスの内容
がOであるかどうかをテストしている。次に続くレコー
ドカナい場合はステップ41においてYESとなるため
ステップ42に移りポインタFTBRPの内容+2のア
ドレスに0を書き込みこのサブルーチンからちとにもど
る。
フロー等において(XX)→YY,l−の表記はアドレ
スYYにアドレスXXの内容を入れることを意味する。
一方,ステップ41において移動用バツファMBの先頭
レコードの次に続くレコードがある場合即ち((FTB
FLP)+1)”40の場合,ステップ43に移り前述
の未使用レコードの末尾、レコードの第2ワード目即ち
LBRPの内容に1を加えたアドレスに、移動バツファ
MBの先頭レコードの先頭番地+1即ち(FTBRP)
+1の内容を入れる。言いかえれば、移動パツファMB
の第2レコード目を未使用レコードの末尾レコードの次
に続くレコードとして指定するものである。
ステップ44は未使用レコードの末尾レコードポインタ
LBRPに移動用バツファMBの末尾レコードのアドレ
スを入れる。次にステップ45.46では移動バツファ
MBの先頭レコードの2ワード目と3ワード目1こ0を
書き込む。
ステップ47は移動バツファMBの先頭移動用レコード
ポインタFTBRPの内容を末尾移動用レコードポイン
タLTBRPに書き込み、移動用パツファMBのクリア
のためのサブルーチンを完了する。
次に第2図のステップ48, 49, 50. 51 
 により移動用パツファMBへステップ24,ステップ
25で記憶した範囲で示される入力データバツファID
Bのデータを挿入する。詳述すると、パラメータレジス
タPI,P2,P3にそれぞれ範囲始めアドレス、範囲
終りアドレス、挿入先アドレスを入れて、ブロック挿入
のサブルーチン5lに入る。
このサブルーチン1まga6図に示されるものであり、
ステップ52〜54においてレジスタP1〜P3の内容
をレジスタSFk,8LA,IAに入れ、パラメータの
保存を行い,ステップ55大 において移動先の範囲の先頭アドレスをレジスタ80A
に入れる。次にステップ56.57Jこよりデータ挿入
ステップ58のパラメータをセットしlデータを挿入す
る。データ挿入は第7図に示されるものでステップ59
.60においてレジスタP1すなわち挿入すべきデータ
のアドレスをレジスタSDAに、レジスタP2すなわち
挿入先のアドレスをレジスタD人に保存する。ステップ
6lではレジスタDAの挿入先のアドレスと16進法表
記におけるIF即ちピント表記によれば0001111
1とのアンドをとり、即ち言いかえれば、1ワード(−
16ビ・スト)のL8B (リーストシグニフイカント
ビット)側から5ビット目のみを押出し、その後にその
押出結果より3を減じレジスタDPに記憶する。このス
テップの意味は該データのレコード即ち第3図に示す形
式のレコードのデータ部分即ち図示ロケーションB4か
ら始まる28ワードの第何ワード目に挿入するかの数を
レジスタDrに格納とする0 次にステップ62においては挿入先のアドレス即ちレジ
スタDAの内容と16進表記のFFEO吉のアンドをと
りレ・ゾスタRAに格納する。これは挿入先のアドレス
のレコードの先頭番地をレジスタRAに格納することで
第3曙により示せば図示BlのアドレスをレジスタRA
に格納することである。なおフローにおいて上述のステ
ップ61.62等で(XXXX)16と示すのはXXX
Xが16進表記であ、、ることを示すものである。
次にステップ63においてRA+2の内容即ち該レコー
ドのデータの長さが28より小さいかどうかを検べてい
る。長さが28より小さい場合、このレコード中に空き
スペースがあることを示しているので、挿入先のアドレ
スのデータ以後のデータを1ワード分第3図の形におい
て右にシフトする。即ちレジスタP1にシフ1・するワ
ード群の最終アドレスを、レジスタP2にシフト後のワ
ード群の最終アドレスを、レジスタP3にシフトすべき
ワード長をそれぞれセットし、ステップ67によって転
送を行う。ステップ67を詳述すれば第8図に示すよう
に、まずステップ68でレジスタNを0としてステップ
69において上述のレジスタP3即ちワード長にレジス
タNの内容がなったさキ、このサブルーチンを終了し、
それまではステップによってシフトを行う。この転送ス
テップ67が終了すると、次にステップ72によってこ
のレコードのデータのワード長をインクリメントする。
次にステップ73によって挿入すべきデータ即ちレジス
タ8DAの内容を挿入先のアドレス即ちレジスタD人に
入れてデータ転送を終了するつ一方ステップ63#ζ詔
いてこのレコードのデータワード長が28以上の場合は
このレコードには空きがない事を示しているので,挿入
部分がこのレコードの先頭アドレスであるかどうかをま
ずステップ74でテストし,即ちレジスタDPが1かど
うかをテストし1でない場合は新たにレコードを新設す
べく[株]へ移る。第9図lこおいてステップ75〜7
8でそれぞれ現先頭未使用レコードポインタFBRPの
内容をレジスタNgwRJpに、現レコードに続くレコ
ードのアドレスをレジスタONRPIこ、現先頭未使用
レコードの次のレコードのアドレスをレジスタONBR
Pに,現データレコードのレングスをレジスタORLに
保存する。次にステップ79から84により新たに設け
るレコードの接続と未使用レコードの接続の変更を行う
。ステップ79では先頭未使用レコードポインタONB
RPの内容を未使用レコードの第2レコード目のアドレ
スに変更する。次にステップ80はこの新しく示された
先頭未使用レコードポインタFB几Pの示すレコードの
先頭アドレスにOを入れる。
次にステップ81により現レコードの第2ワード目即ち
次に続くレコードのアドレスヲ示すワードにステップ7
5で保存した内容を入れる。
次にステップ82でステップ76で保存したレジスタO
NRPのコンデンッのアドレスにレジスタNEWRPの
コンテンッを入れる。次ζとステップ83では(NEW
RP)+1で示されるアドレスにレジスタONRPのコ
ンテンッを入れろ。ステップ84ではレジスタRAをレ
ジスタNgWRPのコンテンッで示される−アドレスに
入れて、新しいレコードの結合と、未使用レコードのつ
ながりの変更を完了する。
次Iこステップ85〜88で挿入すべきアドレスからそ
のレコードの最も終の部分までのデータにつき新しいレ
コードに転送する。この転送のルーチンは前述したもの
と同様第8図に示すものである。ステップ89ではデー
タを挿入するレコードのレコードレングスを新しいもの
に変える。即ちデータを挿入する場所即ちレジスタDP
の内容をR人+2で示されるアドレスに入れる。ステッ
プ90では新しいレコードのデータレングスを転送した
データレングスにする。
次に■へ移って第7図示73のステップ挿入すべきデー
タをレジスタDAで示されるアドレスに入れデータ挿入
のルーチンを終了する。またステップ74#こおいて、
レジスタDPすなわち挿入位置が該レコードのデータ部
分の第1ワード目である場合、■へ移り即ち810図に
移りステップ91〜95で挿入部分のアドレスより一つ
前のデータのあるアドレスを求める。
詳述すれば、ステップ95のデータスキャナはパラメー
タとして、レジスタP 1 /tスキャンの開始アドレ
スであり、レジスタP2はデータのスキャン長さであり
,レジスタP3はスキャン最終アドレスであり、レジス
タP4はスキャン方向であり、Oは順方向,1′は逆方
向を示す。
f′t!!. なおレジスタP2とレジスタP3は排地的に用いられ使
用しない場合Oを入れておくとデータスキャナ95を完
了した時に答が入れられるものである。例えば本例にお
いてはステップ91〜94iこよりP1=DA,P2=
1,P3=0,P4;1と指定するので、レジスタP3
にはレジスタP1即ちレジスタDAよりレジスタP2即
ち1ワードだけレジスタP4で示される方向すなわち逆
方向ヘスキャンした位置のアドレスをデータスキャナ9
5は出力する。更に詳述すれば、第11図においてステ
ップ96〜99で上記レジスタPIからP4の保存を行
いそれぞれレジスタ08BA,OSL,OSEA,OS
Dに格納する。ステップ100及び101においてそれ
ぞれレジスタSOAをレジスタOSBAの内容にし、レ
ジスタDSOを0とし初期値をセットする。
次にステップ102においてレジスタOSLが0以下即
ちスキャンの長さがO以下の場合はステップ103lこ
おいてレジスタOSEA即ちスキャン最終アドレスのチ
ェックを行い、これも0以下である場合はパラメータ不
良でありこのサブルーチンを終える。その他の場合は■
iこ移りスキャンを始める。第12図においてステップ
104においてスキャン中の現アドレスのレコードの先
頭アドレスをレジスタ8RAに格納する。
次にステップ105において80人+1−2XO8Dを
レジスタ80Aに格納する即ちレジスタOSDが0の場
合即ち順方向スキャンの場合はレジスタ80Aをカウン
トアップし、レジスタSOAが1の場合、即ち逆方向の
場合はカウントダウンする。(この例ではカウントダウ
ンになる。)次にステップ106では上記でカウントア
ップもし< ltダウンしたレジスタSOAの内容がS
RA+3より小即ち、第3図により説明すれば,該レコ
ードの図示Bl,B2,B3,B4,のアドレスに入っ
ているかどうかをチェックして、この間に入っていなけ
れば、ステップ10Bに移る。これは80A≦8RA+
(SR人+2)+3即ちレジスタ80Aの内容がレジス
タ8RAの内容で始まるレコードの最終データのあるア
ドレス以内であるかどうかをテストするものである。
YESであればステップ109に移りスキャンの長さを
計数しているレジスタDSOをインクリメントする。次
にステップ110においてレジスタ08Lがθ以下かど
うかをチェックしている。
即ちレジスタ08Lの内容が0より大のときは前述のご
とくスキャンのレングスが指定されていることが示され
ているので、ステップ111に移りレジスタDSOとレ
ジスタOSLを比較しレジスタDSOの方がレジスタC
SLより小さい場合は再び@より上述と同様のルーチン
をくり返し実行し、DSO=OSLとなったききにはス
テップ112に入る。ステップ112においてレジスタ
P3の内容をレジスタSOAに格納する。即ちレジスタ
P3を現アドレス吉しこのサブルーチンをぬける。
一方ステップ110においてOSL≦0の1合即ちスキ
ャンの長さが指定されざる場合は、ステップ113によ
ってレジスタSOAとレジスタ08gAが等しいかどう
か比較し、即ち現アドレスとスキャン最終アドレスとを
比較し等しい場合はステップ114によりレジスタP2
をレジスタD80へ格納し、即ちスキャン時にカウント
アップしてきた数値にしてこのサブルーチンを終える。
一方ステップ106においてSOA≦SRA+3である
場合はステップ115に移り( S R,A+1 −O
SD)が0かどうかをテストする。即ちステップ115
は次にスキャンすべきレコードが0であるかどうかを調
べており、次にスキャンすべきレコードがOのとき、即
ちもはや現レコードに続くレコードがない場合はステッ
プ116に移りOSL≦0のときはステップ117でP
3にOSD−1を格納し、08L)Oのときはステップ
118でP2=DSO七してこのサブルーチンを終える
。またステップ115で次lこスキャンすべきレコード
があることが判明した場合はステップ119にうつりS
RAを(SR,A+1−OSD )とし、ステップ12
0においてSOAを8RA+4+CSDx[(SRA+
2)]即ち80AをOSD(スキャン方向)がOの場合
はSRA+4として,また08Dが1のときはSRA+
4+OSDX(:(SRA+2))  とする。
この式においても他の場合と同様(SRA+2)はSR
A+2のコンテンツを示すものである。
上記のステップ終了後再びステップ105に佼とり上述
と同様のステップをくり返す。又ステップ108におい
てNOの場合はステップ119に入り上述と同様のステ
ップを実行する。上記によりデータスキャナのサブルー
チン第10図ステップ95を終了すると、次にステップ
120に入る。ステップ120ではP3と(FFBO)
16のアンドをとりレジスタPRjこ格納する。即ち挿
入しようとしたアドレスが当レコードのデータ部分の先
頭の場合、前のレコードのアドレスをレジスタPRに格
納したわけである。然る後ステツプ121においてレジ
スタPRで示したレコードのデータの長さを調べ即ち(
PR+2)≧28を検べYBSであればもはやここには
挿入すべき空きアドレスがないわけであるので■にうつ
り上で述べたステップを同様に実行する。Noの場合は
ステップ122に移り押すべきデータ即ち(SDA)を
P3+1即ちデータスキャナステップ95で求めたP3
のアドレスの次のアドレスに書き込む。次にステップ1
23によってこのレコードのデータ長さをインクリメン
トしてこのデータ挿入のサブルーチンを終了し第6図の
ステップ58を完了する。
続いてステップ124から128によりレジスタSOA
のアドレスの次のデータのアドレスを求める。ステップ
128のデータスキャナは第11図以下で説明したもの
と全く同じものである。
従ってデータスキャナステップ128では次のアドレス
をレジスタP3に入れる。次にステップ129によりS
OAとSLA即ちステップ58で実行したデータ挿入の
ための源データのアドレスとブロック挿入の最終アドレ
スを比較し等しければステップ130によりデータスキ
ャナステップ128で求めたアドレスを格納するレジス
タP3の内容を現在4亘レジスタNRに入れてブロック
挿入を完了する。またステップ129においてNOであ
ればステップ131によりレジスタ80AにP3の内容
を格納してステップ132にうつり、ステツ・プ58に
おいて挿入したデータが文字コードかどう・かを検べY
l8ならばステップ133によりORT・の表示に諺け
るカーソル位置をインクリメントした後化,またNOで
あればすぐステップ134に移る。ステップ134〜1
38により次の挿入先のアドレスを求める。、この結果
即ちレジスタP3の内容をステップ139でIAに格納
し再びステップ56へもどりすでに述べたルーチンをく
り返す。上述の行程によりブロック挿入第2図51を終
了すると、第2図140のステップに入る。ステップ1
40 − 142によってステップ51によって挿入し
たデータの源のデータ即ちステップ24及びステップ2
5で範囲を設定したブロックを削除する。詳述すれば、
ステップ140においてレジスタP1の内容を削除すべ
きデータの先頭アドレスとし,P2に削除すべきデータ
の最終のアドレスをセットする。次にステップ142に
移り、即ち第13図のステップ143に入る。ステップ
143〜144は上記のレジスタPI,P2のパラメー
タをそれぞれレジスタDLFA及びDLLAに保存し、
レジスタDLOAの内容をDLLAに格納する。
このブロック削除は削除するブロックの最後のデータよ
り順にさかのぼって先頭のデータまでを削除するもので
ある。削除するブロックの最終アドレスを格納するレジ
スタDLLAの内容をステップ145によりレジスタD
LOAに格納しステップ146以下でレジスタDLOA
で示されるアドレスのデータを削除し次にレジスタDL
OAの一つ前のデータを探して再び削除することにより
ブロック削除を行う。更に詳述すればステップ146で
P1=DLOAとしデータ削除のサブルーチン147に
入る。ステップ147は第141図で説明する。ステッ
プ148は削除すべきデータのアドレスをレジスタSD
LAに保存し、ステップ149で削除すべきデータのア
ドレスのレコードのアドレスをレジスタSDRAに格納
する。次にステップ150でこのレコードのデータ長が
1以下かどうかをテストし1以下でない場合は、ステッ
プ151に入る。ステップ151ではレジスタSDLA
の内容がそのレコードの終りのデータのアドレスである
かどうかを検べて、即ちSDLA≧SDLRA+(8D
LRA+2)+3ならばステップ152に入り、このレ
コードのデータ長をデイクリメントする。
次にステップ153においてレジスタSDLAもディク
リメントして第16図■に移りステップ154〜157
によって現レジスタSDLAの次のデータのアドレスを
求めステップ159にょりP2=P3とし、このサブル
ーチンを終る。
また、ステップ151でNOの1合はステップ160〜
162で逆転送ステップ163のパラメータを指定する
。211ち,レジスタP1は転送元の先頭アドレス、レ
ジスタP2は転送先の先頭アドレス、レジスタP3は転
送長さとし、転送すべきデー匡 タの先頭から順にへ長さだけ転送先に転送するものであ
る。更に詳しく述べると、第15図においてステップ1
64でN=Oとして、次にステップ165においてレジ
スタNとレジスタP3即ち転送長さと比較し等しくなる
まではステップ166,167をくり返し転送を行い、
等しくなるとこの逆転送のルーチンを終り第14図ステ
ップ168に入る。ステップ168ではこのレコードの
データ長をデイクリメントし次にステップ168′1こ
よりP2=SDLAとしデータ削除のサブルーチンをぬ
ける。またステップ150 lこおいてこのレコードの
データ長が1である場合は■に入り、第17図ステップ
169においてこのレコードがデータレコードの最終レ
コード即ち末尾データレコードポインタのコンテンッで
あるかどうかをテストし最終レコードでない嚇合即ちS
DL几’q(LDRP)(7)場合はステップ170 
〜177によりこのレコード削除を行う。詳しく説明す
ると、ステップ170で末尾未使用レコードポインタL
BRPのコンテンッをレジスタLBRIの内容として保
存し、ステップ171において(SDLRA+1)で示
されるアドレス即ち削除すべきレコードの次ζこ続くレ
コードの先頭アドレスに、レジスタSDI.RAで示さ
れるアドレス即ち削除すべきレコードの前に続くレコー
ドの先頭アドレスを入れる。次にステップ172におい
て(SDLRA+1)を(SDLRA)+1で示される
アドレスに入れ、即ち上記前に続くレコードのys2ワ
ード目に、前記次に続くレコードの先頭番地を入れる。
次にステップ173においてSDI,RAを(LBRP
)+1で示されるアドレスに入れ,即ら、削除すべきレ
コードを未使用レコードのストリングに入れる。次にス
テップ174にSいてこの削除すべきレコードの第2ワ
ード目をOにする。ステップ175に於で末尾未使用レ
コードポインタLBRPiこレジスタSDLRA叩ち削
除すべきレコードのアドレスを入れる。
次にステップ176に於で、レジスタP2の内容を娶除
したデータに続くデータの入っているアドレスとする。
次にステップ177に於で削除したレコード即ち末尾未
使用レコードポインタLBRPの示すアドレスにステッ
プ170で保存したものを入れてデータ削除のサブルー
チンを終る。また、ステップ169でYESとなった場
合即ち削除すべきレコードが末尾データレコードである
場合は@に移り、第18図ステップ178〜186によ
りこのレコードを削除する。詳しく説明すると,ステッ
プ178及びステップ179により末尾データレコード
ポインタLDRPと末尾未使用レコードポインタLBR
Pの示すアドレスをそれぞれレジスタLDRIとLBR
Iに保存する。ステップ180において末尾データレコ
ードポインタLDRPに削除すべきレコードの前に続く
レコードの先頭アドレス即ちレジスタLDRIのコンテ
ンッを入れ、次lこステップ181に於で末尾未使用レ
コードポインタLBRPにステップ178で保存したL
DRI即ら削除するレコードの先頭アドレスを入れろ。
次にステップ182に於て、(LDRP)+1で示され
るアドレスに0を入れる。次にステップ183において
レジスタLDRIで示されるアドレスにLBRIを入れ
る。次にステップ184  においてLBR1+1で示
されるアドレスにレジスタLD几1の内容を入れる。
次にステップ185において(LDRP)+1のアドレ
スに0を入れる。次にステップ186においてレジスタ
P 2.を−1.とじて現カーソル位置がレコードの最
終位置であることを示す、かくて上記データ削除ルーチ
ンによりレジスタPiで指定されたアドレスのデータを
削除し、レジスタP2に上記FlIJ除したデータの次
のデータのアドレスを入れる仕事を終る。次にステップ
187において上記のレジスタP2をレジスタDLOA
の内容とし,次にステップ188〜193化よりレジス
タDLO人の内容を現在DLOAで示されるデータの一
つ前のデータのアドレスtこ変える。
即ち前述のデータスキャナにより一つ前のデータのアド
レスをレジスタP3lこ返し、ステップ193でレジス
タDLOAの内容とするものである。次に194のステ
ップでレジスタDLOAの内容がステップ143で保存
したレジスタDLFA即ち削除すべきデータブロックの
先頭アドレスと等しくなるまでステップ146〜193
をくり返し、等しくなったらブロック削除が完了したこ
とIζなるのでブロック削除のサブルーチjを終る0 上記により第2図のステップ142のブロック削除をし
てステップ194により移動範囲のステイタスをリセッ
トし、Oに入る。
第19図 @ よりステップ195に入りORT装11
DPの先頭データのアドレスI, H A (1)をレ
ジスタP1に記憶してディスプレイのサブルーチンに入
り第1図メモリMの内容を新規に書きかえる。即ち順に
読み出し文字コードを順次ディスプレイ先頭データのア
ドレスL H A (1)よりメモリMIOに入れるこ
とによりCRT装[DPに表示させるものである。この
結果「移動範囲」で定めた範囲のデータは移動用バッフ
ァに記憶されると共Iこ元のデータから削除されまたC
RT画面よりも削除される。
次にカーソルを所望の移動先にもってきてキーボード5
上の不図示の「移動先」のキーを押すと、ステップ19
7(第2図)にょり■へ移り第2 0図ステップ198
により移動先のアドレスを記憶する。次にステップ19
9〜202により前記移動用バッファに記憶したデータ
を所望の位置に挿入するものである。
ブロック挿入ステップ202は前記に説明したと全く同
じものである。次に@に移り、前記のステップ194か
ら入ったときと同様、新しい表示をCRTに行う。
以上でブロック転送が行われたのであるが、転送後も移
動用パッファのデータは保存されているので、再び所望
の位置にカーソルをおいて「転送先」のキーを押すこと
により同様のデータを複製して挿入することができる。
【図面の簡単な説明】
第1図は本発明による文字処理装置の一実施例を示すブ
ロック図、 第2図は第1図に示すメモリRAMの詳細図、第3図は
第2図に示す移動用バツファMBの説明図、 第4図〜第20図は制御手順を説明する図である。 KB3・・・・・・・・・移動範囲キーKB4・・−・
・・・・・移動先キー ROM・・・・・・・・・制御メモリ RAM・・・・・・・・・メモリ 出 願 人 キ ヤ ノン株式会社 第 図 RA1fη王”f合p社愛明 第 ■ 図 v7図ズ刊グ67, Rεturn 不 11 口 男10図ステツア95:ヲ巧ス3CWアカ理第 団 Return Kcturル 手 続 ネ巾 正 書(自発) S1/成 1年 4月28日付提出の特許願(夕) 発明の名称 文字処理装置 補正をする者 事件との関係

Claims (1)

    【特許請求の範囲】
  1. 複数個のデータから成るデータ列を記憶するデータ記憶
    手段と、前記データ記憶手段に記憶された前記データ列
    の少なくとも一部のデータを指定する指定手段と、前記
    指定手段により指定された少なくとも一部のデータを記
    憶する一時記憶手段と、前記指定手段により指定された
    前記一部のデータを前記データ記憶手段より削除する削
    除手段と、前記一時記憶手段内に記憶された前記一部の
    データを前記データ記憶手段の前記データ列の任意の位
    置に挿入する挿入手段とを有する文字処理装置。
JP1111848A 1989-04-28 1989-04-28 文字処理方法 Expired - Lifetime JPH0778798B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP1111848A JPH0778798B2 (ja) 1989-04-28 1989-04-28 文字処理方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP1111848A JPH0778798B2 (ja) 1989-04-28 1989-04-28 文字処理方法

Related Parent Applications (1)

Application Number Title Priority Date Filing Date
JP12720579A Division JPS5650465A (en) 1979-10-01 1979-10-01 Character processor

Publications (2)

Publication Number Publication Date
JPH02236661A true JPH02236661A (ja) 1990-09-19
JPH0778798B2 JPH0778798B2 (ja) 1995-08-23

Family

ID=14571682

Family Applications (1)

Application Number Title Priority Date Filing Date
JP1111848A Expired - Lifetime JPH0778798B2 (ja) 1989-04-28 1989-04-28 文字処理方法

Country Status (1)

Country Link
JP (1) JPH0778798B2 (ja)

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS5444442A (en) * 1977-09-14 1979-04-07 Nec Corp Character display system
JPS5456726A (en) * 1977-10-14 1979-05-08 Fujitsu Ltd Display control system

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS5444442A (en) * 1977-09-14 1979-04-07 Nec Corp Character display system
JPS5456726A (en) * 1977-10-14 1979-05-08 Fujitsu Ltd Display control system

Also Published As

Publication number Publication date
JPH0778798B2 (ja) 1995-08-23

Similar Documents

Publication Publication Date Title
US4278973A (en) Video display terminal with partitioned screen
JPS5846428A (ja) 文章編集装置の停電保護用処理方式
JPH024938B2 (ja)
JP3480958B2 (ja) 文字ファイルアクセス方式
JPH02236661A (ja) 文字処理装置
JPS6026235B2 (ja) 図表デ−タの保護方法
JPS6144317B2 (ja)
JPS6326909B2 (ja)
JPS62105266A (ja) 文字処理装置
JPS58205277A (ja) 線表示・消去方式
JPS5840755B2 (ja) 表示制御方式
JP2599433Y2 (ja) マルチプロセッサシステムにおける各メモリボードの記憶保護装置
JPH02289073A (ja) 文字処理装置
JPS5838988A (ja) 図形発生装置
JPH0778791B2 (ja) 文字処理装置
JPH0314166A (ja) 文書表示装置
JPS6035072B2 (ja) 文字パタ−ン発生回路
JPS6048077A (ja) 文書情報記憶制御方式
JPH09308727A (ja) 棋譜処理装置及び方法
JPH07191990A (ja) 領域指定機能付き文書処理装置
JPS5854382A (ja) スクロ−ル型の表示方式
JPH02161557A (ja) 文字処理装置
JPH061469B2 (ja) ワ−ドプロセツサ
JPH0488552A (ja) 文字処理装置
JPH03176759A (ja) 文字処理装置及びその方法