JPS63213030A - Basicインタプリタ装置 - Google Patents

Basicインタプリタ装置

Info

Publication number
JPS63213030A
JPS63213030A JP4606587A JP4606587A JPS63213030A JP S63213030 A JPS63213030 A JP S63213030A JP 4606587 A JP4606587 A JP 4606587A JP 4606587 A JP4606587 A JP 4606587A JP S63213030 A JPS63213030 A JP S63213030A
Authority
JP
Japan
Prior art keywords
comment
command
program
file
sentences
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
JP4606587A
Other languages
English (en)
Inventor
Masahiro Inoue
正広 井上
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.)
Casio Computer Co Ltd
Original Assignee
Casio Computer Co 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 Casio Computer Co Ltd filed Critical Casio Computer Co Ltd
Priority to JP4606587A priority Critical patent/JPS63213030A/ja
Publication of JPS63213030A publication Critical patent/JPS63213030A/ja
Pending legal-status Critical Current

Links

Landscapes

  • Devices For Executing Special Programs (AREA)

Abstract

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

Description

【発明の詳細な説明】 〔産業上の利用分野〕 本発明はソースプログラムのセーブおよびロードする装
置に係り、特にソースプログラムを複数ファイルで管理
して、セーブ、ロードを行なうBAS I Cインタプ
リタ装置に関する。
〔発明の概要〕
BASICインクプリタにおいては、一般にソースプロ
グラムをすべてメモリ上に格納し、実行する。しかしソ
ースプログラムにはコメントが含まれているためその分
メモリを多く使用する問題を有していた。
本発明はソースプログラムのセーブ時に、コマンド文と
コメント文に分離し、それぞれコマンドファイルおよび
コメントファイルとして記憶装置に格納し、プログラム
実行時には必要に応じてコマンドファイルをロードし、
さらにはコマンドファイルとコメントファイルとを結合
してロードするもので、本発明によってプログラムの使
用するメモリサイズを小さくし、ユーザがメモリを有効
に活用できるとともに、従来通り、コメント付ソースフ
ァイルをロードする事もでき、プログラム修正時のプロ
グラム内容のわかりやすさを保つことができる。
〔従 来 の 技 術〕
通常、ソースプログラム作成時、プログラマは後でその
プログラムを見る時に、内容をわかりやすくする為、必
要なステートメントに処理の内容を表わすコメントを書
き加えている。この時そのコメントがくわしいほど、後
はどソースプログラムを修正する必要が出た場合等にお
いてはソースプログラムの内容が理解しやすくなる。
しかしながらBASICインタプリタにおいては一般的
にはソースプログラムのすべてを主記憶上に常駐させな
ければプログラムを実行することができない。そのため
プログラムの実行には関与しないコメント文も主記憶上
にロードされ、一定の記憶域を占有してしまい、プログ
ラマの使用可能な記憶域が減ってしまう。そこで、長い
プログラムを作成し、本体の主記憶上に格納できなくな
る様な場合、プログラマがコメント部を削り、プログラ
ムサイズを小さくする作業が行なわれる。
また、例えばいったん主記憶上で作成が終了したプログ
ラムでも、記憶容量をいっばいに使っていて、実行時に
変数データ等の領域が不足し、メモリ不足で実行できな
い場合も、同様にコメント部を削る事が行なわれていた
一方、開発装置のメモリを多く使用して開発したコメン
ト付プログラムを、ユーザーが使用する時には同じ容量
のメモリを有する装置を必要としていた。
〔発明が解決しようとする問題点〕
しかしながら、前述した様にコメント文を削ると、プロ
グラムのわかりやすさが失なわれる為にプログラムの保
守等のメンテナンスにおける作業力(II下するという
問題を有していた。一方、プログラム開発者以外にはこ
のコメント文は必要でないがコメント文を削除しないと
前述した様に例えば開発装置でなくとも多くのメモリを
必要とする問題を有していた。
本発明は、上記従来の欠点に鑑み、開発時等にはコメン
ト文を使用することができ、またアプリケーションとし
て使用する時にはメモリの使用量を減らした、BASI
Cインタプリタ装置を提供することを目的とする。
〔問題点を解決するための手段〕
第1図は本発明の機能ブロック図である。同図において
1はBASICのソースプログラムをコマンド文とコメ
ント文に分離する分離手段2は分離されたコマンド文を
記憶する第1の記憶手段3は分離されたコメント文を記
taする第2の記憶手段、4は前記、第1、第2の記憶
手段にコマンド文、コメント文を格納する制御手段であ
る。
〔作   用〕
次に第1図の機能ブロック図の作用を説明すると、例え
ば、入力されたソースプログラムに対するセーブコマン
ドが発行されると、ソースプログラムは分離手段1に加
わり、前記分離手段1によリ、コマンド文とコメント文
に分離され、制御手段4に加わる。そして、それぞれコ
マンド文は例えばコマンドファイルとして第1の記憶手
段2に、コメント文は例えばコメントファイルとして第
2の記憶手段3に、制御手段4の制御により格納される
。コマンド文とコメント文とに分離されて第1、第2の
記憶手段に記憶されるので、プログラムを実行する場合
には、コマンド文だけをロードし、コメント文を省略す
る事によりプログラムのメモリ使用量を減らすことがで
きる。
〔発明の実施例〕
(構  成) 第2図は本実施例のシステム構成図である。5は入力さ
れたソースプログラムを、主記憶(RAM)7に格納し
、さらにインタプリタを起動させ、ソースプログラムの
実行を行なうCPUである。
6はソースプログラムに含まれるコマンド例えばFOR
,NEXT、5AVEなどの各種コマンドの処理ルーチ
ンのアドレスを示すコマンドテーブルや、各種コマンド
の処理ルーチン等からなるB6一 ASICインクプリタであり、通常ROMに格納されて
いる。8はRAM?上に格納されたプログラムを保存す
るための外部記憶装置である。さらにこの他に図示しな
い、文字、数字等を入力するためのキーボードと、入力
されたソースプログラムを表示するCRTがある。
本発明に係るBAS I Cインタプリタのコマンドと
して例えばセーブやロードがある。セーブとは、RAM
?上に作成されたプログラムファイルを、外部記憶装置
8に、ファイル単位で登録し、ファイルの保存を行なう
コマンドである。ロードは反対に外部記憶装置8に保存
されているファイルを、RAM?上に移動させるコマン
ドである。
(動  作) 次に動作を説明する。プログラマがキーボードから入力
を行ない、例えばTESTというソースプログラムを作
成し、そのソースファイルを外部記憶装置8にセーブす
る場合インクプリタロのセーブコマンドの処理プログラ
ムが実行される。この処理は第3図のセーブ時のフロー
チャートに従って実行される。プログラマがキーボード
から「5AVE″TEST″CRLF」と入力すると、
BASICインタプリタ6のセーブコマンドの処理プロ
グラムの実行を開始する。ここでCRL、は改行コード
である。前記CPU5が上記処理プログラムの実行を開
始すると外部記憶装置8にソースプログラムrTEsT
Jのコマンド文とコメント文を格納するため、それぞれ
のファイルをオープンする。(ステップf1、f2)尚
、TESTなるコマンドファイルとコメントファイルが
存在しない時には、この処理ではTESTなるコマンド
ファイルとコメントファイルを作成してオープンする。
先ず、ステートメントの解析処理(ステップrt)を行
なう。この処理はステートメント中の1文字コードを読
出す処理である。この読出した文字コードを次には改行
コード(CRLF)であるかを判別する(ステップrs
)。改行コード(CRL、 )でない時には(N)、さ
らにコメント識別子(=)であるかを判別する(ステッ
プf6)。判別処理f6においてコメント識別子(=)
でない時(N)には、同一ステートメントの1文字を読
出す処理すなわち前述のステートメント解析(ステップ
f4)を実行する。これらの処理(ステップf4、fs
、f6)によって、一般の行番号やコマンド等の文字は
検出されず、判別処理(ステップfs)では改行コード
が、判別処理(ステップf6)ではコメンl別子がそれ
ぞれ検出される。改行コードは、ステートメントの後ろ
を表わすものであり、すなわち1行の文の終りを表わす
ものである。
よって、判別処理(ステップrs)で改行コードありと
判別(Y)した時には、1ステートメント中にコメント
が存在しない時であるので、次には行番号とステートメ
ントの改行コードまでの文をコマンドファイルに書込む
処理(ステップf+o)を行なう。そして、次に前述の
処理した行が最終行であるかを判別する(ステップf 
++)。最終行でない時(N)には欧文を判別処理(ス
テップf ++)で指示して、ステートメントの解析処
理(ステップf4)から再度実行する。この時、判別処
理f、で次のステートメントの指定処理を行なっている
ので、解析処理(ステップf4)の実行では次の行の処
理となる。
一方、判別処理(ステップf6)でコメント識別子が存
在すると判別した時(Y)には、次には行番号と判別し
た識別子の次の文字から改行コードまでをコメントファ
イルに書込む処理(ステップf、)を行なう。これによ
って行番号とコメント文とが対応して1行文ファイルに
書込まれる。
次には主記憶上のコマンド文をセーブする為、主記憶上
のステートメントのコメント識別子のあとに改行コード
を入れる処理(ステップfe)を行なう。
さらに、次にはコメントフラグを1とする処理(ステッ
プfq)を行ない、つづいて前述した処理f、。を行な
う。この時には処理f’IOが処理すべき文は(主記憶
上に記憶されている)行番号とコマンド文とその後の改
行コードとなっているので、処理(ステップf+o)で
書込むべき文中にはコメント文が除かれている。判別処
理(ステップf6)=10− で、コメント識別子が存在すると判別した時にも処理f
1゜を実行するので、次には処理fllを行ない前述と
同様の繰り返しを行なう。
一方、判別処理(ステップf11)において、最終行と
判別した時には、個々のファイルをクローズする処理す
なわち、コマンドファイルクローズ処理(ステップfl
り、コメントファイルクローズ処理(ステップf+a)
を行なう。
ここでコメント文が存在しない時にはコメントファイル
を作成する必要がないので、次にはコメントフラグが“
0”であるか否かを判別しくステップf14)、“0”
である時(Y)にはコメントファイルを削除して全処理
を終了する。また判別処理(ステップf、4)でコメン
トフラグが“0”でない時(N)にはコメント文が存在
するので、そのまま、全処理を終了する。
以上の動作によって、セーブ時にコメント文が存在する
時には、コマンドファイルとコメントファイルが別々に
設けられ、コマンド文とコメント文がそれぞれに記憶さ
れる。また、コメント文が存在しない時にはコマンドフ
ァイルのみが作成され、コマンド文が記憶される。
次に前述したのと逆に、プログラマがキーボードからロ
ードコマンドを入力し、外部記憶装置8に保存されたコ
マンドファイルおよびコメントファイルをRAM7にロ
ードする場合、CPU5はインタプリタのロードコマン
ドの処理プログラムを実行する。例えば、TESTとい
うファイルをロードする為、rLOAD”TEST″/
PJと入力すると、インタプリタのロードコマンドの処
理ルーチンを実行する。ここでは、「/P」付きである
ので、コマンドファイルのみをRAM7にロードする。
尚、「/P」はコマンドファイルのみをロードする事を
指定する命令である。
一方rLOAD″TEST″」とだけ入力すると、コマ
ンドファイルとコメントファイルを結合し、元のソース
ファイルとして再生しRAM7にロードする。以下にB
ASICインタプリタ6のロードコマンドの処理プログ
ラムの一部を第4図のロード時のフローチャートに従っ
て説明する。
先ず入力されたコマンドがコマンドファイルのみをRA
M7にロードする「/P」付のロードコマンドか、それ
ともコマンドファイルとコメントファイルから元のソー
スプログラムを再生してRAM7にロードする「/P」
無しのロードコマンドかを「/P」の有無によって判別
する(ステラ7”f16)。「/P」付のロードコマン
ドの場合(Y)、後述するコメント文をRAM7にロー
ドする処理(f26、f2.)を実行する必要がないこ
とを表わすコメントフラグを“O”とする処理(ステッ
プf1.)を行ない、「/P」付でないならば(N)コ
メントフラグを1”とする処理(ステップ11B)を行
なう。これらの処理(ステップf17、fIll)の次
に、ファイルをロードする為に、コマンドファイル、コ
メントファイルをオープンする(ステップf19、f2
゜)。さらにコメントファイルが存在するかどうか判別
しくステップf21)、存在しなければ(N)フラグを
“0”に設定しくステップf22)、コメントファイル
が存在したら(Y)フラグはそのままで次のステツプを
実行する。なお、ここで再度コメントフラグを0”に設
定するのは、仮にコマンド文とコメント文を結合しロー
ドする「/P」無しの命令を実行してもコメントファイ
ルが存在しない場合もあり、その場合、コメントフラグ
を“0”に設定する事により、コメントファイルをロー
ドする処理(f23、f26)を省略するためである。
次にコマンドファイルのステートメントを改行コードま
で、RAM7にロードする(ステップf23)。コマン
ドファイルのロード(ステップf23)が終了したらコ
メントフラグを判別する(ステップf24)。
フラグが“0”であるならば(N)、コメント文をロー
ドする処理(f23、f26)を実行しないでステップ
f2.を実行し、最終行であるかどうか判別する(ステ
ップf27)。最終行でなければステップf’T13に
もどり、コマンドファイルの次のステートメントをRA
M7にロードし、最終行になるまでステップf43〜f
z7までの処理を繰り返す。
一方、最初のステップで「/P」無しのロード命令と判
別されたとき(N)、すなわちコマンド文とコメント文
を結合し、元のソースファイルを再生する場合には判別
処理ft4においてフラグが“l”であると判別(Y)
し、処理(f z、)を実行する。すなわち、現在の行
番号のコメント文が有るかどうか判別し、コメント文が
有る場合、まずステップfZ3でRAM7に格納したコ
マンド文の改行コードを削除し、それに続けてコメント
ファイルの行番号の次から、改行コードまでをRAM7
にロードする。これによりコマンド文とコメント文が結
合し、本来のコメント付ソースプログラムが再生される
(ステップf2.)。
前述したと同様に次には最終行であるかどうか判別しく
ステップf1)、最終行でなければステップrtsにも
どり、上述の処理(f2.〜f2.)を最終行になるま
で繰り返す。またステップitsで現在の行番号のコメ
ント文が無ければ、最終行かどうか判別し、最終行でな
ければ、次のステートメントを読み出し上述処理(f2
3〜f2.)を繰り返す。
以上の動作によって例えば「/P」を付してrLOAD
”TEST”/Pjとした時にはコマンド文のみがRA
M7にロードされる。また「/P」を付けないでrLO
AD“TEST”」とした時にはコメントファイルが存
在すれば、そのコメント文とコマンド文とを結合してR
AM7にロードする。尚、コメントファイルが存在しな
い時にはコマンドファイルの内容のみがRAM7にロー
ドされる。
第5図は前述のセーブ動作をrTEsTJというプログ
ラムに対し行なった場合に作られる、コマンドファイル
とコメントファイルのリストの一例である。第4図(a
)はrTEsTJのソースリストであり、プログラムの
内容はAIB$の2つの変数にそれぞれ100個のバッ
ファを確保し、各々のバッファをブランクにするという
ものである。
ここで「7」はコメント文を識別するためのコメント識
別子であり、ソースリストには、行100にrTEsT
  PROGRAMJ、行110にrEDIT  BU
FFRJ、行130にrBUFFERCLEARJとい
うコメントが付いている。
第5図(blはソースプログラムrTEsTJから作成
されるコマンドファイルrTEST、BASJのリスト
であり、コメント識別子「v」以後のコメント文が省略
され、コマンド文のみで構成されている。
なおファイル名「TEST、BASJのr、 BASは
ファイルの属性を示し、このファイルがコマンド文のフ
ァイルである事を示す。第5図(C1はrTEsTJか
ら作成されるコメントファイルrTEsT、CMTJの
リストであり、コメント識別子以後のコメント文と、そ
の行番号とにより構成されている。なおrcMTJはフ
ァイルの属性を示し、コメント文のファイルである事を
示す。
以上の様にソースプログラムを、実行に関わるコマンド
文と、関わらないコメント文に分離し、それぞれコマン
ドファイル、コメントファイルとして、外部記憶装置に
セーブし、実行時はコマンドファイルのみをロードする
事により、プログラムのサイズを小さくする事ができメ
モリを有効に使用できる。
尚、本発明の実施例においてはRAS I Cインタプ
リタを用いて説明したが、これに限らず他の高級言語で
あっても同様に可能である。
〔発明の効果〕
本発明によれば、ユーザが従来と同じ要領で記述したプ
ログラムを、BASICインクプリタのセーブ処理等に
おいて、コマンド文とコメント文に分離して記憶するの
で、従来とまったく同じ操作でセーブ等が行ないながら
、プログラムの実行時には、コマンド文のみロードする
ことが可能となり、メモリを大幅に節約できるため、変
数エリア等のワークを十分にとる事ができる。また、プ
ログラム作成時には、メモリの容量以内であっても、実
行時に変数データのしめるデータ領域が不足゛し、わず
かにメモリ容量不足で実行できないような場合コマンド
文だけをロードすれば実行可能であり、プログラムサイ
ズを小さくするためコメントを削るといった作業が必要
なくなりユーザがプログラムを作成する上で大きな利点
がある。
【図面の簡単な説明】
第1図は本発明の機能ブロック図、 第2図は本発明の一実施例のシステム構成図、第3図、
第4図は第2図の動作を説明するためのフローチャート
、 第5図ta)、 (b)、 (C)は第3図のセーブ処
理を説明するプログラム図である。 1・・・分離手段、 2・・・第1の記憶手段、 3・・・第2の記憶手段、 4・・・制御手段。 特許出願人  カシオ計算機株式会社 オ筬 訛ブロック図 第1図 システム構FN、図 第2図

Claims (3)

    【特許請求の範囲】
  1. (1)BASICのコメント付きのソースプログラムを
    コマンド文とコメント文に分離する分離手段と、前記分
    離手段により分離された、コマンド文を記憶する第1の
    記憶手段と、コメント文を記憶する第2の記憶手段と、
    前記第1、第2の記憶手段への格納を制御する制御手段
    とを有する事を特徴とするBASICインタプリタ装置
  2. (2)前記第1、第2の記憶手段はファイル単位で管理
    する外部記憶装置のファイルである事を特徴とする特許
    請求の範囲第1項記載のBASICインタプリタ装置。
  3. (3)ソースプログラムから分離、作成されたコマンド
    ファイルとコメントファイルとを記憶する第3の記憶手
    段と、前記第3の記憶手段からコマンドファイルとコメ
    ントファイルとを読出し、分離前の前記ソースプログラ
    ムを再生する再生手段とを有する事を特徴とするBAS
    ICインタプリタ装置。
JP4606587A 1987-02-28 1987-02-28 Basicインタプリタ装置 Pending JPS63213030A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP4606587A JPS63213030A (ja) 1987-02-28 1987-02-28 Basicインタプリタ装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP4606587A JPS63213030A (ja) 1987-02-28 1987-02-28 Basicインタプリタ装置

Publications (1)

Publication Number Publication Date
JPS63213030A true JPS63213030A (ja) 1988-09-05

Family

ID=12736602

Family Applications (1)

Application Number Title Priority Date Filing Date
JP4606587A Pending JPS63213030A (ja) 1987-02-28 1987-02-28 Basicインタプリタ装置

Country Status (1)

Country Link
JP (1) JPS63213030A (ja)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2001028585A (ja) * 1999-07-13 2001-01-30 Sony Corp 配信コンテンツ生成方法、コンテンツ配信方法および装置、並びに、コード変換方法
JP2008269192A (ja) * 2007-04-19 2008-11-06 Sumitomo Electric Ind Ltd コンピュータ装置、交通信号制御機

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2001028585A (ja) * 1999-07-13 2001-01-30 Sony Corp 配信コンテンツ生成方法、コンテンツ配信方法および装置、並びに、コード変換方法
US7653752B2 (en) 1999-07-13 2010-01-26 Sony Corporation Distribution contents forming method, contents distributing method and apparatus, and code converting method
JP2008269192A (ja) * 2007-04-19 2008-11-06 Sumitomo Electric Ind Ltd コンピュータ装置、交通信号制御機
JP4737131B2 (ja) * 2007-04-19 2011-07-27 住友電気工業株式会社 コンピュータ装置、交通信号制御機

Similar Documents

Publication Publication Date Title
US5467448A (en) Text formatting by the direct selection of borders in an editing display
JPH0721033A (ja) 言語処理装置及びその方法
US4827447A (en) Method for selectively returning to the beginning or the previous revision point in document edition
JPS63213030A (ja) Basicインタプリタ装置
JP2946715B2 (ja) プログラム生成方法およびそのための仕様入力方法
JPH03186933A (ja) 言語処理システムのシンボル処理方式
JP3494350B2 (ja) プログラマブルコントローラ
JPS5969831A (ja) 文書作成装置
JP2721377B2 (ja) Basicプログラム圧縮方法
JP2000222252A (ja) メモリ内容表示方式及びメモリ内容編集方式
JPH02214964A (ja) 計算機システム
JP2607976B2 (ja) デバック方式
JPH0635907A (ja) 構造化文書編集装置
JPS6286436A (ja) エデイタ制御情報作成システム
JPH0619731B2 (ja) プログラムの単体テスト方式
JPS63292326A (ja) アセンブルリストの編集出力方式
JPH0793329A (ja) 文書作成装置及び文書の割り付け方法
JPH01205331A (ja) 大規模プログラムリンク方式
JPS62271160A (ja) 業務終了処理方式
JPS61245232A (ja) 自動編集方法
JPH06131333A (ja) 文章編集装置
JPS63174161A (ja) 文書処理装置
JPH0425949A (ja) ファイル更新処理装置
JPS6142296B2 (ja)
JPH04134533A (ja) プログラム実行方式