JPH03223923A - 不定バイト長文字入力制御方式 - Google Patents

不定バイト長文字入力制御方式

Info

Publication number
JPH03223923A
JPH03223923A JP2018239A JP1823990A JPH03223923A JP H03223923 A JPH03223923 A JP H03223923A JP 2018239 A JP2018239 A JP 2018239A JP 1823990 A JP1823990 A JP 1823990A JP H03223923 A JPH03223923 A JP H03223923A
Authority
JP
Japan
Prior art keywords
character
byte
characters
byte length
code
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
JP2018239A
Other languages
English (en)
Other versions
JP2569857B2 (ja
Inventor
Yuji Ogawa
雄司 小川
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.)
NEC Corp
Original Assignee
NEC Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by NEC Corp filed Critical NEC Corp
Priority to JP2018239A priority Critical patent/JP2569857B2/ja
Publication of JPH03223923A publication Critical patent/JPH03223923A/ja
Application granted granted Critical
Publication of JP2569857B2 publication Critical patent/JP2569857B2/ja
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Landscapes

  • Document Processing Apparatus (AREA)

Abstract

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

Description

【発明の詳細な説明】 (産業上の利用分野) 本発明は、計算機システムにおけるバイト長の異なる文
字が混在する文字列を処理する不定バイト長文字入力制
御方式に関する。
(従来の技術) 近年の情報処理システムでは、日本語データの処理は必
要不可欠となってきている。ところが、1バイトで表現
できない日本語データの文字の処理に対して、様々な問
題が発生している。この様々な問題は英数字を標準とし
た1バイトコード系に1文字と2バイトで表現する日本
語コード系を加えてコード系を拡張したことに起因する
。たとえば、1バイト文字の次に2バイト文字が現れる
文字列の処理を行う場合、その文字列を処理するシステ
ムに対して1文字を表すバイト長が変化したことをどの
ように伝えるかという問題や、ASCIIコードの°1
゛とJIS漠字コードの°l′を同じ数字として認識し
なくてはならないという問題などがある。そしてこれら
の問題は言語処理系等のように、テ該テキストコード処
理するシステムにとって大きな影響を与えることになる
第2図は従来の不定バイト長文字入力制御方式の構成を
表す図である。テキストコード生成部201が生成する
テキストコード208では、該テキストコード208中
の2バイト文字列部分が2バイト文字の始まりまたは終
わりを示すバイト長が固定の2つの制御文字で囲まれて
いる。たとえば、°^BC日本語X’/2 ’ という
文字列では、第3図に示すように′C′と′日°の間と
°語°と。
Xoの間にそれぞれ2バイト文字の始まりと終わりを表
す制御文字<KT>、<KO>が挿入されている。これ
ら2つの制御文字は2バイトからなり、16進数コード
ではそれぞれ3F75.3F76である。
テキストコード生成部201で生成したテキストコード
208を与えられた1バイト入力処理部202は、与え
られたテキストコード208で1バイト文字を1バイト
文字属性識別部204に与える。1バイト文字属性識別
部204は、与えられた文字コードで1バイトコードテ
ーブル206を表引きし、その1バイト文字に対する属
性情報が格納されている属性ビットテーブル209を得
る。ここで仮に、1バイト入力処理部202が1バイト
の3Fというコードを発見すると、次の1バイトを読み
、それが75なら2バイト入力処理部203へ制御を移
し、そうでなければそのまま1バイト入力処理を行う。
2バイト入力処理部203へ制御が移ると2バイト文字
を2バイト文字属性識別部205に与え、2バイトコー
ドテーブル207をその2バイトコードで表引きしてそ
の2バイト文字に対する属性ビットテーブル210を得
る。2バイト文字列の終わりを示す制御文字くKO〉は
2バイトであるから、2バイト入力処理部203は特別
な処理を行うことなく制御文字<KO>を識別すること
ができ、該制御文字くKO〉を発見すると1バイト入力
処理部202へ制御を戻す。
文字属性の識別は以下のように行っていた。たとえば、
1バイトが8ビツトの文字で32種類の属性の有無を表
すときは、要素数が256であって1要素が4バイトの
バイトコードテーブルを用意し、′1°の文字コードが
241であるとそのバイトコードテーブルの241番目
の属性ビットテーブルの数字属性を表すビットを°ON
’にする、といった具合である。2バイト文字に対して
は、テーブルの大きさを65536にして処理する。
(発明が解決しようとする課題) 上述した従来の不定バイト長文字入力制御方式では、2
バイト文字の前後に付加する2バイト文字の始まりまた
は終わりを示す2つの制御文字のバイト長が固定である
から、興なるバイト数の文字を含んだテ該テキストコー
ド処理するシステムが1バイト文字を入力中または2バ
イト文字を入力中に、処理中の文字とバイト長が異なる
制御文字に対応しなくてはならなかった。また、テキス
トコードの処理システムは、1バイト文字の入力処理部
と2バイト文字の入力処理部の2つの入力処理部とが必
要であり、処理システムが複雑かつ非効率的となってい
た。
このように、従来の不定バイト長文字入力制御方式には
解決すべき課題があった。
(課題を解決するための手段) 本発明は、1バイトで表現される英語文字と複数バイト
で表現される日本語文字とが混在する文字列の処理を行
う計算機システムにおける不定バイト長文字入力制御方
式において、 文字列に混在するそれぞれ異なるバイト長の文字毎に文
字と同じバイト長であって文字列において以下に続く文
字のバイト長が変化することとその以下に続く文字のバ
イト長とを示す制御文字と、文字を構成する各バイトに
対応するバイトコードテーブルを階層化し°ζ各バイト
長毎のそれぞれの文字に対する属性を管理する文字属性
情報とを定義し、 異なるバイト長の文字が混在する文字列を受け、該文字
列における異なるバイト長の文字と文字との間にある仮
想上の位置に、直前の文字と同じバイト長であって該文
字に続く文字のバイト長が何バイトであるかを示す前記
制御文字を挿入してテ該テキストコード生成するテキス
トコード生成手段と、 該テキストコード生成手段が生成するテ該テキストコー
ド受け、前記文字属性情報を参照して前記テキストコー
ドの各文字に定義されている文字属性を識別する文字属
性識別手段と、 を有する。
(実施例) 次に、本発明について図面を参照して説明する。
第1図は本発明の一実施例を示す構成図である。
テキストコード生成部1は、入力された文字列が途中で
その文字列を構成する文字のバイト長が変化したときに
、変化前の文字のバイト長である制御文字を付加したテ
該テキストコード生成する。
文字属性識別部2は、記憶領域3中の1バイト文字属性
情報5および2バイト文字属性情報6を管理する。それ
ぞれの文字属性情報はいくつかのバイトコードテーブル
7.8,9.10を有しており、各バイト長のそれぞれ
の文字に対する属性をその文字の各バイトに対応するバ
イトコードテーブルを階層化して管理している。そして
各文字の最下位バイトに対応するバイトコードテーブル
には、その文字に対する属性を示す属性ビットテーブル
または、文字のバイト長が変化することを知らせる他の
文字属性情報の最上位バイトに対するバイトコードテー
ブルへのポインタが格納されている。
レジスタCT4は現在入力中の文字のパイ1〜長に対す
る文字属性情報の最上位バイトのバイトコードテーブル
を指す、レジスタCT4の初期値は、1バイト文字属性
情報5のバイトコードテーブル7へのポインタ値である
1バイトが8ビツトで1要素の大きさが4バイトである
バイトコードテーブルについて考える。
ここで、1バイト文字から2バイト文字への変化を示す
1バイトの制御文字〈2S〉のコードを3F、2バイト
文字から1バイト文字への変化を示す2バイトの制御文
字くIS〉のコードを3F76とする。このとき、テキ
ストコード生成部1は°123456’という文字列に
対して、第4図に示すテ該テキストコード生成する。こ
こで’1’、’2’、’5’、°6′は1バイト文字で
あり、16進数でそれぞれFl、F2.F5F6のコー
ドであるとする。’ 3’ 、’ 4’は2バイト文字
であり、そのコードは16進法でそれぞれ7BF3.7
8F4であるとする。2゜と°3°との間および′4′
と5”との間には、それぞれ<28>、<IS>の制御
文字が挿入されている。したがって、2バイト長の文字
の前後にバイト長が変化する直前の文字と同じバイト長
の制御文字を挿入することにより文字のバイト長が変化
することを示す制御文字を全て現在入力中の文字のバイ
ト長で表現するから、現在入力中の文字のバイト長で制
御文字を識別することができる。
次に、テキストコード生成部1で生成された第4図に示
すテキストコードの処理について説明する。第5図は文
字属性識別部2の処理を示す流れ図である。文字属性識
別部2は、まず、レジスタP15にレジスタCT4の内
容を代入する(ステップ501)。このとき、レジスタ
CT4には1バイト文字属性情報5のバイトコードテー
ブル7へのポインタ値が格納されており、そのポインタ
値がレジスタP15に代入される。そして、テキストコ
ードの1バイトを読み、レジスタQ16に代入する(ス
テップ502)。すると、レジスタQ16には文字゛1
′の文字コードF1が渡り、レジスタCT4の指し示す
バイトコードテーブル7のF1番目の要素の内容をレジ
スタP15に代入する(ステップ503)(第7図(a
))。
各バイトコードテーブルの要素の内容は、他のバイトコ
ードテーブルへのポインタ値または属性ビットテーブル
もしくは文字がバイト長の変化を示す制御文字であると
きの他の文字属性情報の最上位バイトに対するバイトコ
ードテーブルへのポインタ値のいずれかである。これら
は次のようにして識別される。各バイトコードテーブル
の大きさは一定で、4の倍数のバイト数であるから、記
憶領域3の中で整列することにより、それぞれのバイト
コードテーブルの先頭番地の下位2ビツトをOにするこ
とができる。したがって、バイトコードテーブルの要素
の最下位ビットを第0ビツト、最上位ビットを第31ビ
ツトとすると、第6図に示すように第1、第0ビツトの
値が00なら他のバイトコードテーブルへのポインタ値
(601)、01なら属性ビットテーブル(602)、
11なら他の文字属性情報の最上位バイトに対するバイ
トコ−トチ−プルへのポインタ値に3を加えた値として
識別することができる。
今、入力処理をしている文字のバイト長は1であるから
レジスタP15の内容は他のバイトコードテーブルへの
ポインタ値ではなくまたその文字は1′であって制御文
字でもないからレジスタP15に与えられた属性ビット
テーブル12の内容に従った各属性処理を行う(ステッ
プ504゜505.506)(’ 1°という文字の意
味から数字としての処理が行われる)。次に、ステップ
501へと処理が戻り、°2°の文字に対して同様の処
理が行われる。制御文字である2Sに対してはステップ
503によってレジスタP15に1バイト文字属性情報
5のバイトコードテーブル7の3F番目の内容が得られ
る。この内容は、2バイト文字属性情報6の上位バイト
に対するバイトコードテーブル8へのポインタ値に3を
加えた値であるから、ステップ504,505を経てス
テップ507へ処理が移る。ここでレジスタP15の内
容から3を引いた値をレジスタCT4に代入して(ステ
ップ507)、ステップ501に戻る。
以下、レジスタCT4は、2バイト文字属性情報6の上
位バイトに対するバイトコードテーブルへのポインタ値
を保持する。テキストコード11から得られる3′の2
バイトの文字コードの上位バイトを得るとレジスタCT
4の指すバイトコードテーブル8の7B番目の要素には
、他のバイトコードテーブル9へのポインタ値が格納し
であるから、ステップ504ではステップ502へ処理
を移し、下位バイトに対しては下位バイトのバイトコー
ドテーブル10のF3番目の内容から属性ビットテーブ
ル14を得て、各属性処理を行う(ステップ506)(
第7図(b))。文字°4゛については、3′と同様で
ある。制御文字ISは2バイトからなる1バイト文字の
始まりを示す制御文字で、レジスタCT4の指すバイト
コードテーブル8の3F番目の要素が指すバイトコード
テーブル9の76番目の内容には1バイト文字属性情報
5のバイトコードテーブル7へのポインタ値に3を加え
た値が設定してあり、ステップ507によってレジスタ
CT4は再び1バイト文字を識別する状態になる。以下
、文字°5°、゛6′が°1°、°2°と同様に入力し
て処理される。
以上に説明した実施例は、1バイト文字と2バイト文字
に限ったものであったが、1〜Nバイトの文字を扱うシ
ステムでは、各文字毎にそのバイト長の変化を示す制御
文字をそれぞれN−1個定義することによって容易に本
発明を適用することができる。たとえば、1〜3バイト
の文字を扱うシステムでは、2バイトおよび3バイト文
字に変化することを示す1バイトの2つの制御文字、1
バイトおよび3バイト文字に変化することを示す2バイ
トの2つの制御文字、1バイトおよび2バイト文字に変
化することを示す3バイトの2つの制御文字の6個の制
御文字を定義すれば良い。また、本発明は一見多くのバ
イトコードテーブルを必要とするようにみえるが、実際
は特殊属性を持つ文字というのは極限られたいくつかの
文字であるから全く同じ内容のバイトコードテーブルが
多く存在する傾向がある。そこで、バイトコードテ−プ
ルを1つたけ用意し、別々なところから参照できるよう
に工夫することによって多数のバイトコードテーブルが
必要であるという問題を解決することができる。
(発明の効果) 以上に詳しく説明したように本発明の不定バイト長文字
入力制御方式は、テ該テキストコード処理するシステム
が1バイト文字を入力中であっても2バイト文字を入力
中であっても制御文字に対する処理の乱れがない。また
、テキストコードの処理部に1バイト文字に対する入力
処理部と2バイト文字に対する入力処理部とをそれぞれ
用意する必要がなく、単純かつ効率的なテキストコード
の処理部が実現できる。
本発明には以上のような効果がある。
【図面の簡単な説明】
第1図は本発明の一実施例を示す構成図、第2図は従来
の不定バイト長文字入力制御方式を示す構成図、第3図
は従来のテキストコード生成部201が生成したテ該テ
キストコード示す図、第4図は本発明のテキストコード
生成部1が生成したテ該テキストコード示す図、第5図
は本発明の文字属性識別部2の処理を示す流れ図、第6
図は本発明のバイトコードテーブルの要素の種類を示す
図、第7図は本発明のバイトコードテーブルにより階層
的に管理される属性ビットテーブルを示す図である。 1.201・・・テキストコード生成部、2・・・文字
属性識別部、3・・・記憶領域、4・・・レジスタCT
、5・・・1バイト文字属性情報、6・・・2バイト文
字属性情報、7,8,9.10・・・バイトコードテー
ブル、11,208・・・テキストコード、12.13
゜14.209.210・・・属性ビットテーブル、1
5・・・レジスタP、16・・・レジスタQ、202・
・・1バイト入力処理部、203・・・2バイト入力処
理部、204・・・1バイト文字属性識別部、205・
・・2バイト文字属性識別部、206・・・1バイトコ
ードテーブル、207・・・2バイトコードテーブル、
601.602,603・・・バイトコードテーブル6

Claims (1)

  1. 【特許請求の範囲】 1バイトで表現される英語文字と複数バイトで表現され
    る日本語文字とが混在する文字列の処理を行う計算機シ
    ステムにおける不定バイト長文字入力制御方式において
    、 文字列に混在するそれぞれ異なるバイト長の文字毎に文
    字と同じバイト長であって文字列において以下に続く文
    字のバイト長が変化することとその以下に続く文字のバ
    イト長とを示す制御文字と、文字を構成する各バイトに
    対応するバイトコードテーブルを階層化して各バイト長
    毎のそれぞれの文字に対する属性を管理する文字属性情
    報とを定義し、 異なるバイト長の文字が混在する文字列を受け、該文字
    列における異なるバイト長の文字と文字と該テキストコ
    ード生成手段が生成するテキストコードを受け、前記文
    字属性情報を参照して前記テキストコードの各文字に定
    義されている文字属性を識別する文字属性識別手段と、 を有することを特徴とする不定バイト長文字入力制御方
    式。
JP2018239A 1990-01-29 1990-01-29 不定バイト長文字入力制御方式 Expired - Fee Related JP2569857B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2018239A JP2569857B2 (ja) 1990-01-29 1990-01-29 不定バイト長文字入力制御方式

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2018239A JP2569857B2 (ja) 1990-01-29 1990-01-29 不定バイト長文字入力制御方式

Publications (2)

Publication Number Publication Date
JPH03223923A true JPH03223923A (ja) 1991-10-02
JP2569857B2 JP2569857B2 (ja) 1997-01-08

Family

ID=11966131

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2018239A Expired - Fee Related JP2569857B2 (ja) 1990-01-29 1990-01-29 不定バイト長文字入力制御方式

Country Status (1)

Country Link
JP (1) JP2569857B2 (ja)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH06223114A (ja) * 1993-01-26 1994-08-12 Ricoh Co Ltd 文字列処理方式
CN116301666A (zh) * 2023-05-17 2023-06-23 杭州数云信息技术有限公司 Java对象序列化方法及其反序列化方法及装置、终端

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH06223114A (ja) * 1993-01-26 1994-08-12 Ricoh Co Ltd 文字列処理方式
CN116301666A (zh) * 2023-05-17 2023-06-23 杭州数云信息技术有限公司 Java对象序列化方法及其反序列化方法及装置、终端
CN116301666B (zh) * 2023-05-17 2023-10-10 杭州数云信息技术有限公司 Java对象序列化方法及其反序列化方法及装置、终端

Also Published As

Publication number Publication date
JP2569857B2 (ja) 1997-01-08

Similar Documents

Publication Publication Date Title
US5414841A (en) Computerized system for representing data items using token identifiers
US5680616A (en) Method and system for generating and maintaining property sets with unique format identifiers
US5819283A (en) Method and system for the extensibility of objects
JPS6091450A (ja) テ−ブル型言語翻訳器
US6055365A (en) Code point translation for computer text, using state tables
EP0268069B1 (en) Method of forming a message file in a computer
US6438516B1 (en) Method and apparatus for optimizing unicode composition and decomposition
US6928438B2 (en) Culturally correct ordering of keyed records
JP2006512633A (ja) 中央XML構成ファイルにより分散Javaアプリケーションを生成させる方法と装置
EP0843266A2 (en) Dynamic incremental updating of electronic documents
JPH03223923A (ja) 不定バイト長文字入力制御方式
JP2006202308A (ja) グラフィカルユーザインターフェース方法、グラフィカルユーザインターフェース装置、及び記録媒体
EP0601254A1 (en) Method for allowing the access of a database by an application program
JPH03147181A (ja) オブジェクト参照処理装置
JPH08160929A (ja) 情報処理装置及び情報処理方法
JP2990312B2 (ja) データアクセス方法および装置
JPH0391863A (ja) 計算機システムにおける不定バイト長文字の属性管理方式
JPS5928190A (ja) 文字パタ−ン発生方式
GB2121221A (en) Table-driven apparatus for data display and modification
JPH02255976A (ja) 情報処理装置
JP2669070B2 (ja) 画面定義体作成装置
JP2695783B2 (ja) 概念検索方法
JPH09114854A (ja) 文書検索システム
JP4034377B2 (ja) データベース設計装置およびデータベース制御装置
JP3018579B2 (ja) 名前検索処理装置

Legal Events

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