JPH0340033A - 呼び出し元のコード系認識処理方式 - Google Patents

呼び出し元のコード系認識処理方式

Info

Publication number
JPH0340033A
JPH0340033A JP17491389A JP17491389A JPH0340033A JP H0340033 A JPH0340033 A JP H0340033A JP 17491389 A JP17491389 A JP 17491389A JP 17491389 A JP17491389 A JP 17491389A JP H0340033 A JPH0340033 A JP H0340033A
Authority
JP
Japan
Prior art keywords
code
code system
character
module
caller
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
JP17491389A
Other languages
English (en)
Other versions
JP2899316B2 (ja
Inventor
Takanobu Fujimoto
孝信 藤本
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.)
Fujitsu Ltd
Original Assignee
Fujitsu Ltd
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 Fujitsu Ltd filed Critical Fujitsu Ltd
Priority to JP17491389A priority Critical patent/JP2899316B2/ja
Publication of JPH0340033A publication Critical patent/JPH0340033A/ja
Application granted granted Critical
Publication of JP2899316B2 publication Critical patent/JP2899316B2/ja
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Landscapes

  • Stored Programmes (AREA)
  • Devices For Executing Special Programs (AREA)

Abstract

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

Description

【発明の詳細な説明】 〔概要〕 ライブラリモジュールを備えた計算機システムにおいて
、コード系を指定するための特別なパラメタがなくても
、コード系を識別し、複数のコード系を1種類のライブ
ラリモジュールでサポートできるようにした呼び出し元
のコード系認識処理方式に関し。
異なるコード系のプログラムの共通開発や、プログラム
の移植を容易にし、プログラムの生産性を向上させるこ
とを目的とし。
ライブラリモジュールは、ある特定のコード系に従って
処理を行う内部処理部と、呼び出し元から渡されたパラ
メタの中の文字列型パラメタに着目して、そのパラメタ
内の文字コードがどの範囲にあるかを判定し、呼び出し
元のコード系を識別するコード系判定処理部と1判定結
果のコード系が上記内部処理部の扱う特定のコード系と
異なるとき、すべての文字列型パラメタの文字コードを
その特定のコード系の文字コードに変換するコード変換
処理部とを備えるように構成する。
〔産業上の利用分野〕
本発明は、ライブラリモジュールを備えた計算機システ
ムにおいて、コード系を指定するための特別なパラメタ
がなくても、コード系を識別し。
複数のコード系を1種類のライブラリモジュールでサポ
ートできるようにした呼び出し元のコード系認識処理方
式に関する。
〔従来の技術〕
計算機システムでは、EBCDICコード系。
ASCIIコード系といった種々のコード系が用いられ
ている。従来、一般に1つの計算機システムでは、1つ
のコード系だけが用いられていた。
最近、複数のコード系をサポートする計算機システムも
用いられ始めている。
このような計算機システムにおいて、高級言語のプログ
ラムから呼び出されるライブラリ・タイプの製品は、従
来、呼び出し元のコード系について1次の(a)または
(b)のように扱っている。
(a)  呼び出し元のコード系は、ある特定の1つの
コード系だけを有効とし、サポートしていないコード系
については、呼び出し元でその特定のコード系にコード
を変換してもらう。
例えば、ライブラリモジュールが、ASCIIコード系
だけをサポートし、これとは別にEBCDICコードと
ASCIIコードとの間の変換ライブラリを用意して、
EBCDICコード系を扱う呼び出し元に、その変換ラ
イブラリを使用させる。
(b)  ライブラリモジュールに、EBCDICコー
ド系用の入口点と、ASCIIコード系用の入口点とを
用意し、呼び出し元は各コード系用の人口点を呼び出す
ようにする。
〔発明が解決しようとする課題〕
例えばEBCDICコード系の計算機システムで開発し
たプログラムを、ASCIIコード系を扱う計算機シス
テムに移植したり、また、この逆の移植を行うときに、
プログラム開発の生産性向上のために、できるだけソー
ス修正を行わないで済むようにすることが望まれる。
しかし、従来技術による上記(a)、 (b)の手法で
は。
次のような問題がある。
(a)の問題:EBCDICコード系のプログラムをA
SCIIコード系に移植したり、逆の移植をしたりする
とき、パラメタの文字列のコード変換を、呼び出し元の
プログラムが行うようにするために、プログラムの処理
論理を変更する必要がある。
(b)の問題=(a)のような処理論理の変更は不要で
あるが、入口点を変更するようなソース修正が必要にな
る。
本発明は上記問題点の解決を図り、異なるコード系のプ
ログラムの共通開発や、プログラムの移植を容易にし、
プログラムの生産性を向上させることを目的としている
〔課題を解決するための手段〕
第1図は本発明の構成例を示す。
第1図において、lOはCPUおよびメモリなどからな
る処理装置、11は高級言語で記述されコンパイルされ
た利用者プログラムなどの呼び出し元モジュール、12
はシステムや利用者があらかしめ用意したライブラリモ
ジュール、13はコード系判定処理部、14は内部処理
部、15はコード変換処理部を表す。
本発明では、呼び出し元モジュール11が異なる種々の
コード系を扱う場合であっても、同一の呼び出しインタ
フェースで、ライブラリモジュール12を呼び出すこと
ができるようになっている。
内部処理部14は、ある特定のコード系に従って、呼び
出し元から要求されたライブラリの処理を行うものであ
る。従来の通常のライブラリモジュールに相当する処理
を行う。
コード系判定処理部13は、呼び出し元モジュール11
から渡されたパラメタの中の文字列型パラメタに着目し
て、そのパラメタ内の文字コードがどの範囲にあるかを
判定し、呼び出し元モジュール11が扱っているコード
系を識別する。
コード急変換処理部15は、コード系判定処理部13に
よる判定結果によって、呼び出し元モジュール11のコ
ード系が内部処理部14の扱うコード系と異なるとき、
呼び出し元モジュール11から渡されたすべての文字列
型パラメタの文字コードを、その特定のコード系の文字
コードに変換する処理を行う。
〔作用〕
本発明は、EBCDICコード系とASCIIコード系
では、英大文字と数字および若干の特殊文字から構成さ
れる同一文字セットの内部表現に共通部分がないことに
着目し2文字列型パラメタ内の文字コードと1文字セッ
トのコードの範囲との関係を調べることにより5呼び出
し元のコード系を識別するようにしている。したがって
、コード系を識別するための専用の特別なパラメタを必
要としない。
こうして呼び出し元のコード系を識別することにより、
ライブラリモジュール12内で必要に応じてコード変換
を行い、呼び出し元モジュール11には、他の種類のコ
ード系を意識させないようにしている。
〔実施例〕
第2図は本発明の一実施例に係る処理形態の例。
第3図は本発明の一実施例処理フローを示す。
以下の実施例では、コード系として、EBCDICコー
ド系とASCIIコード系の2種類のコード系を対象と
し、呼び出し元モジュールが、これらのいずれかのコー
ド系を扱う場合について説明する。
例えば、EBCDICコード系のときの文字セットの範
囲を、16進数で表すと、以下のとおりである。
i)英大文字  01〜E9 ii)空白    40 iii )引用符   ’  (7D)または”(7F
)また、ASCIIコード系のときの文字セットの範囲
を、16進数で表すと、以下のとおりである。
i)英大文字  41〜5A ii)空白    20 iii’)引用符   ’  (27)または”(22
)これらの文字セットの範囲には2重複部分がないので
9文字列型の必須オペランドについて、その中の1文字
が、どちらの範囲に属しているかを調べれば、そのパラ
メタを用意した呼び出し元モジュール11が、EBCD
ICコード系であるかASCIIコード系であるかを判
別することができる。
異なるコード系を扱うシステムへの移植を行う場合、呼
び出し元モジュール11のプログラムが。
特別にコード系を意識した処理を行っている部分につい
ては処理ロジックの変更が必要であるが。
そのようなコード系を意識した処理を行うことはほとん
どないので、多くの場合、ソースプログラムを他のシス
テムに、そのまま移植することができる。
以下に、計算機の高級言語で記述されたプログラムにつ
いて、ライブラリ呼び出しの記述例を挙げる。
C言語(ASCIIコード系): APEPI(7’ 0PEN ’”、 &rcode、
 &msgarea、  −)ソースのコード系はAS
CII。
C言語(EBCDICコード系): APEFI(”’ 0PEN ’”+ &rcode、
 &msgarea、 −)ソースのコード系はEBC
DIC0 COBOL言語(EBCDICコード系):CALL 
” APEFI  ″USING″″’ 0PEN ’
 ” 、 RCODE ・・・ソースのコード系はEB
CDIC。
FORTRAN言語(EBCDICコード系):CAL
L   APEFI(” ’  0PEN  ’  ”
 、  RCODE、MSGAREA、・・・ソースの
コード系はEBCDIC。
上記の例で、下線を付けた部分がコード系の判定に使用
するパラメタである。両端の「1′」は。
文字列定数を記述するための構文要素であり、この例で
は、入口点がrAPEFIJという名前のライブラリモ
ジュールに、それぞれr ’ 0PEN ’ Jという
文字列が渡される。先頭文字の16進表現は、EBCD
ICでは°’7 D” 、 ASCI Iでは。
” 27 ”である。この値により、呼び出し元がEB
CDICかASCIIかを判断する。
なお、各言語の呼び出し形式での相違点は、言語固有の
問題であり、コード系に依存している部分はない。C言
語でのパラメタに小文字を使用しているのは、C言語の
ソース記述上の慣用のためである。また、パラメタ名の
先頭に&を指定しているのも、C言語に固有である。他
言語にリライトする利用者は、当然このことは知ってい
るので機械的な対処が可能である。
本実施例によるコード系に関する処理形態としては1例
えば第2図に示すような種類がある。
第2図(イ)は、呼び出し元モジュール11がASCI
Iコード系であり、ライブラリモジュール12の内部処
理でもASCIIコード系を扱う場合の例である。この
場合には2文字列型パラメタの判定結果により、コード
変換することなくそのまま処理できる。
第2図(ロ)は、呼び出し元モジュール11がASCI
Iコード系であり、ライブラリモジュール12の内部処
理ではEBCDICコード系を扱う場合の例である。こ
の場合には2文字列型パラメタの判定結果により、内部
処理へのパラメタの引き渡しの前に1文字列型パラメタ
のASCIIコードをEBCDICコードに変換する。
また呼び出し元モジュール11への文字列型の返却情報
がある場合には、復帰前に、EBCDICコードからA
SCIIコードへの逆変換を行う。
第2図(ハ)は、呼び出し元モジュール11がEBCD
ICコード系、ライブラリモジュール12の内部処理で
は、ASCIIコード系を扱う例であり、第2図(ニ)
は、呼び出し元モジュール11がEBCDICコード系
、ライブラリモジュール12の内部処理でも、EBCD
ICコード系を扱う例である。コード系が異なる場合に
、コード変換をライブラリモジュール12内で行う。
第3図は、ライブラリモジュール12における処理の例
を示している。以下の説明における■〜■は、第3図に
示す処理■〜■に対応する。
■ 呼び出し元モジュール11から渡されたパラメタ・
リストの中から1文字列型パラメタを得る。
■ 文字列型パラメタの先頭文字のコードを調べそのコ
ードがどのコード系の文字セットの範囲に含まれるかを
判定する。
■ そのコードが、ライブラリモジュール12の内部処
理で扱うコード系と同しコード系に属するかどうかを判
定する。同し場合、処理■へ移る。
■ コード系が異なる場合、パラメタの中のすべての文
字列型パラメタについて2文字コードを内部処理のコー
ド系に変換する。この変換は。
計算で行ってもよく、また変換テーブルを用いてもよい
■ 従来と同様に、呼び出し元から要求された処理を、
特定のコード系に従って行う。
■ 文字列型の返却情報について、コードの変更が必要
であるかどうかを判定する。必要でない場合、呼び出し
元モジュール11へ復帰する。
■ コードの変更が必要である場合、内部処理で扱うコ
ード系のコードを、呼び出し元のコード系に変換する。
その後、呼び出し元モジュール11へ復帰する。
〔発明の効果〕
以上説明したように1本発明によれば、複数のコード系
をサポートする計算機システム等において3次のような
効果がある。
(a)  異なるコード系のプログラムの共通開発が容
易になり、かつ必要な作業も減少する。
(1))  異なるコード系の言語間でのプログラムの
りライトが容易になる。
(c)EBCDICコード系またはASCIIコード系
等の一方のコード系しかサポートしていない計算機シス
テムで開発したプログラムを、他のコード系を扱う計算
機システムに移植することが容易になる。
また1以上により、複数の引算機システムを対象として
いるプログラムの生産性も向上する。
【図面の簡単な説明】
第1図は本発明の構成例 第2図は本発明の一実施例に係る処理形態の例。 第3図は本発明の一実施例処理フローを示す。 図中、10は処理装置、11は呼び出し元モジュール、
12はライブラリモジュール、13はコード系判定処理
部、14は内部処理部、15はコード変換処理部を表す

Claims (1)

  1. 【特許請求の範囲】 同一文字セットの内部表現に共通部分がない複数のコー
    ド系をサポートするライブラリモジュール(12)を備
    えた計算機システムにおける呼び出し元のコード系認識
    処理方式であって、 上記ライブラリモジュール(12)は、 ある特定のコード系に従って、呼び出し元から要求され
    た処理を行う内部処理部(14)と、呼び出し元から渡
    されたパラメタの中の文字列型パラメタに着目して、そ
    のパラメタ内の文字コードがどのコード系に属するかを
    判定し、呼び出し元のコード系を識別するコード系判定
    処理部(13)と、 判定結果のコード系が上記内部処理部(14)の扱う特
    定のコード系と異なるとき、すべての文字列型パラメタ
    の文字コードを、その特定のコード系の文字コードに変
    換するコード変換処理部(15)とを備えたことを特徴
    とする呼び出し元のコード系認識処理方式。
JP17491389A 1989-07-06 1989-07-06 呼び出し元のコード系認識処理方式 Expired - Fee Related JP2899316B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP17491389A JP2899316B2 (ja) 1989-07-06 1989-07-06 呼び出し元のコード系認識処理方式

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP17491389A JP2899316B2 (ja) 1989-07-06 1989-07-06 呼び出し元のコード系認識処理方式

Publications (2)

Publication Number Publication Date
JPH0340033A true JPH0340033A (ja) 1991-02-20
JP2899316B2 JP2899316B2 (ja) 1999-06-02

Family

ID=15986893

Family Applications (1)

Application Number Title Priority Date Filing Date
JP17491389A Expired - Fee Related JP2899316B2 (ja) 1989-07-06 1989-07-06 呼び出し元のコード系認識処理方式

Country Status (1)

Country Link
JP (1) JP2899316B2 (ja)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2010029962A (ja) * 2008-07-26 2010-02-12 Kuroda Techno Co Ltd ワーク処理装置
JP2010205068A (ja) * 2009-03-04 2010-09-16 Hitachi Information Systems Ltd ソフトウェア資源移行システム及び同移行方法

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2010029962A (ja) * 2008-07-26 2010-02-12 Kuroda Techno Co Ltd ワーク処理装置
JP2010205068A (ja) * 2009-03-04 2010-09-16 Hitachi Information Systems Ltd ソフトウェア資源移行システム及び同移行方法

Also Published As

Publication number Publication date
JP2899316B2 (ja) 1999-06-02

Similar Documents

Publication Publication Date Title
US6219831B1 (en) Device and method for converting computer programming languages
JPS59100946A (ja) 編集可能書類形式変換方法
JPH0340033A (ja) 呼び出し元のコード系認識処理方式
JPH04286029A (ja) ソースプログラム・コンバータ
JPH07160490A (ja) コーディング支援装置
JPH0430239A (ja) コマンドオプション指定処理装置
JPH06282566A (ja) 情報処理装置
JP2585790B2 (ja) 複数コード系に対応するコンパイル処理方式
JP2021124848A (ja) 文章増幅システム及びプログラム
CN111046636A (zh) 筛选pdf文件信息的方法、装置、计算机设备及存储介质
JPH04248624A (ja) プログラム変換処理装置
JPH036624A (ja) 複数コード系に対応する翻訳リスト出力処理方式
JPH02205930A (ja) インタフェースチェック処理方法
JPH0358137A (ja) 複数文字系に対する文字認織方式
JPS63111537A (ja) プログラム変換処理方式
JPS58114247A (ja) 精度自動拡張方式
JPS63280335A (ja) 言語処理システム
WO1997007452A1 (en) Programmable compiler
JPH0231236A (ja) コンパイラ
JPH01232428A (ja) データベース問い合わせ処理装置
JPH0244427A (ja) プログラム翻訳変換方式
JPS6266371A (ja) テキスト分離型学習システム
JPH0439730A (ja) チャート生成方法
JPS6315335A (ja) デ−タベ−ス用エンドユ−ザ言語の自然言語への拡張方式
JPH02297137A (ja) 文書作成支援装置

Legal Events

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