JPS61206038A - コンピユ−タのプログラミング実行方法 - Google Patents

コンピユ−タのプログラミング実行方法

Info

Publication number
JPS61206038A
JPS61206038A JP4780985A JP4780985A JPS61206038A JP S61206038 A JPS61206038 A JP S61206038A JP 4780985 A JP4780985 A JP 4780985A JP 4780985 A JP4780985 A JP 4780985A JP S61206038 A JPS61206038 A JP S61206038A
Authority
JP
Japan
Prior art keywords
variable
program
variables
memory
compiler
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
JP4780985A
Other languages
English (en)
Inventor
Naoya Suzuki
直也 鈴木
Sadanobu Maruyama
丸山 定信
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.)
Sony Corp
Original Assignee
Sony 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 Sony Corp filed Critical Sony Corp
Priority to JP4780985A priority Critical patent/JPS61206038A/ja
Priority to CA000503426A priority patent/CA1259138A/en
Priority to AU54364/86A priority patent/AU5436486A/en
Priority to EP86301648A priority patent/EP0194822A3/en
Publication of JPS61206038A publication Critical patent/JPS61206038A/ja
Pending legal-status Critical Current

Links

Landscapes

  • Devices For Executing Special Programs (AREA)

Abstract

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

Description

【発明の詳細な説明】 〔産業上の利用分野〕 この発明はミ例えば一つのプログラムの変数を他のプロ
グラムで共通に用いる場合に好適なコンピュータのプロ
グラミング実行方法に関する。
〔発明の概要〕
この発明は、コンビエータのプログラミング実行方法に
おいて、メモリ上に格納された変数及び変数に関する情
報を必要に応じてディスク上にセーブするようにし、共
通の変数を複数のプログラムで用いることができるよう
にしたものである。
〔従来の技術〕
プログラミングの処理方式には、インタプリタ方式とコ
ンパイラ方式とがある。インタプリタ方式は、高級言語
例えばBAS I Cで書かれたソースプログラムを一
行毎に解釈し、順次実行していくものである。このよう
に、ソースプログラムを解釈しながら実行するものであ
るから、インタプリタ方式は、対話型機能を必要とする
ものに適している。インタプリタ方式では、プログラミ
ングに誤りがあると、実行の途中で誤りの行番号とエラ
ーコードが表示され、実行が中止される。この誤りの部
分を対話的に修正すれば、再実行させることができる。
しかしながら、−行毎の解釈の時間が必要であり、処理
時間が長い。
コンパイラ方式は、ソースプログラムを一度機械語の実
行形式のオブジェクトプログラムに翻訳し、このオブジ
ェクトプログラムにより実行させるものである。例えば
、テキストエディタでディスク上にソースプログラムを
作成し、コンパイラでこのソースプログラムをリロケー
タブルオブジェクトプログラムに変換し、ランタイムル
ーチンとこのリロケータブルオブジェクトプログラムを
リンカ−で結合編集し、実行形式のオブジェクトプログ
ラムを生成し、この実行形式のオブジェクトプログラム
により実行させる。
コンパイラ方式では、機械語のオブジェクトプログラム
を直接実行するものであるから、処理速度が速い。しか
し、コンパイラ方式は、例えば特開昭59−22140
号公報に示されるように対話型の機能を持たせることが
難しい、コンパイラ方式では、プログラミングに誤りが
あると、コンパイラ及びリンカ−の夫々から誤りが全て
表示され、プログラムの実行は行われない。
〔発明が解決しようとする問題点〕
1つのプログラムで用いられた変数を、他のプログラム
でも用いたい場合がある。このような場合、インクブリ
タ方式では、内部メモリ上で変数を渡すコマンド文を用
いて、内部メモリでの変数の受は渡しを行っていた。例
えばRAS I C言語の場合には、変数を共用したい
プログラムに同一の“C0MM0N”文を書けば、”C
0MM0N”文で指定された変数は内部メモリ上に残さ
れ、“CIA IN”文で呼び出せる。
しかし、このように内部メモリ上での変数の受は渡しに
よる方法は、インクプリタ方式では利用できるが、コン
パイラ方式では、変数がディスク上に記録されるため、
利用できない。
コンパイラ方式では、従来、例えばBAS I Cの場
合には、1つのプログラムの変数を“0PEN”文、”
PRINT”文、“CLOSEm文等を用いてディスク
1に書き込み、変数を共用したい他のプログラムでは、
”OPENm文、“INPUT’″文、“CLO3E”
文を用いてディスクに書き込まれていた変数を読み出す
ことで、1つのプログラムで用いた変数を他のプログラ
ムで用いることが行われていた。
このように、コンパイラ方式では、変数を共用したい場
合のプログラムの記述が複雑である。また、コンパイラ
方式でディスクに書き込みを行うコマンドは、文字コー
ドが用いられている。このため、記憶容量が大きくなる
従って、この発明の目的は、1つのプログラムに用いら
れた変数をディスク上で他のプログラム。
に結合して実行することができるコン(エータのプログ
ラミング実行方法を提供するどとにある。
この発明の他の目的は、ディスクの記憶容量を効率的に
用いることができるコンビエータのプログラミング実行
方法を提供することにある。
〔問題点を解決するための手段〕
この発明は、所定単位毎に高級言語で記述されたソース
プログラムを機械語で記述されたオブジェクトプログラ
ムにコンパイルし、ソースプログラム及びコンパルされ
たオブジェクトプログラムを共通のメモリに格納し、メ
モリに設けられた変数に関する領域に変数及び該変数に
関する情報を格納し、変数及び該変数に関する情報を磁
気記憶手段にセーブし、他のブ・ダラムと変数と門結合
して実行可能とするようにしたことを特徴とするコンピ
ュータのプログラミング実行方法である。
〔作用〕
メモリ上に変数及びこの変数に関する情報を格納する。
この変数をディスク上で受は渡すことにより、複数のプ
ログラムで共通の変数を用いることができる。
〔実施例〕
以下、この発明の一実施例について、図面を参照して説
明する。第1図において、1がコンパイラ、2がキーボ
ード、3がCRTディスプレイ、4がメモリである。コ
ンパイラ1は、インクリメンタリー型のコンパイラで、
所定の単位例えばソースプログラムの一行毎に順次オブ
ジェクトプログラムへのコンパイルを行う。コンパイラ
1は、コンパイル機能のみならず、エディツト機能も有
している。コンパイラ1とメモリ4とは、双方向に結ば
れている。
キーボード2からコンパイラlにソースプログラムが与
えられる。ソースプログラムの言語としては、例えばB
ASICが用いられる。入力されたソースプログラムは
、コンパイラ1で順次オブジェクトプログラムにコンパ
イルされる。ソースプログラムは、メモリ4上のメモリ
領域4Aに順次格納される。コンパイルされたオブジェ
クトプログラムは、実行順に編集され、メモリ4上のメ
モリ領域4Bに順次格納される。
メモリ4上には、変数とその変数に関する情報のシンボ
ルテーブルを形成するためのメモリ領域4Cが設けられ
ている。変数に関するシンボルテーブルに記録する情報
は、変数の使われている行番号、変数の型(整数、実数
、倍精度実数、文字配列の何れか)、配列の場合にはそ
の次元数と要素数、アドレス参照番号等である。変数の
値の内部表現としては、数値については2進表現が用い
られている。
プログラムの修正、変更は、対話的に行える。
つまり、ソースプログラムの一部が変更されたときには
、コンパイラ1で変更を受けたソースプログラムが翻訳
し直され、オブジェクトプログラムが書換られる。従っ
て、ソースプログラム全体を修正し直すことなく、オブ
ジェクトプログラムを修正できる。
実行時に変数のシンボルテーブルの変数に関する情報を
基に、変数がリンクされ、オブジェクトプログラムによ
り実行がなされる。
実行は、メモリ領域4Bに格納されているオブジェクト
プログラムにより行われるので、インクブリタ方式に比
べて処理速度が速い。
メモリ4上には、変数とその変数に関する情報のシンボ
ルテーブルを形成するためのメモリ領域4Cが設けられ
ている。従って、このメモリ領域4Cに貯えられている
変数及び変数に関する情報は、第2図に示すように、容
易にディスク5上にセーブすることができる。これによ
り、1つのプログラムから他のプログラムに変数及び変
数についての情報を容易に受は渡すことができる。
変数をセーブするには、”VARSAVE”コマンドが
用いられる0例えば、 VARSAVE“ファイル名、〈変数、〉、〈変数2〉
・・・・ と記述することにより、変数1、変数2、・・・・がデ
ィスク上にセーブされる。変数は、単純変数(A、B、
s、CI、D#  等)でも配列変数名(A O,B$
 0.C# 0  等)でもよい。
配列名を書くと配列の内容が全てセーブされる。
セーブされる変数に関する情報は、メモリ領域4Cのシ
ンボルテーブルに記録されている型情報と、配列の場合
には、その次元数と要素数である。
変数の値の内容表現は、数値については2進表現である
。このように、数値については文字表現でなく、2進表
現が用いられているので、ディスク5の利用効率が高い
1つのプログラムでセーブされた変数は、“VARLO
AD″コマンドで他のプログラムに呼び出せる1例えば
、 vARLOAD′ファイル名く変数、〉、〈変数2〉1
09.。
と記述することにより、ディスク5上のファイルから変
数1、変数8、・・・・が続出される。これにより、他
のプログラム中に変数値が設定される。
“VARLOAD”コマンドにより変数を読出する際に
は、変数の型情報と、ファイル上の値の型情報との照合
がなされる。従って、誤操作によるプログラムの不定な
動作を防止できる。
この一実施例ではプログラム言語としてBAS ICを
用いたが、他の言語、例えばFORTRANやPASC
ALを用いてもよい。
〔発明の効果〕
この発明に依れば、共通のメモリ上に変数及び変数に関
する情報が記録されているので、一つのコマンドで変数
をディスク上にセーブすることが容易にできるやこのた
め、ディスク上に複数のプログラムに対して共通の変数
を記録することにより、1つのプログラムで用いた変数
を他のプログラムでも用いることができる。また、変数
は2進表現で記録されているので、ディスクの利用効率
が高い。
【図面の簡単な説明】
第1図はこの発明の一実施例の構成図、第2図はこの発
明の一実施例の説明図である。 図面における主要な符号の説明 1:コンパイラ、    2:キーボード、4:メモリ

Claims (1)

    【特許請求の範囲】
  1. 所定単位毎に高級言語で記述されたソースプログラムを
    機械語で記述されたオブジェクトプログラムにコンパイ
    ルし、上記ソースプログラム及びコンパルされた上記オ
    ブジェクトプログラムを共通のメモリに格納し、上記メ
    モリに設けられた変数に関する領域に変数及び該変数に
    関する情報を格納し、上記変数及び該変数に関する情報
    を磁気記憶手段にセーブし、他のプログラムと上記変数
    とを結合して実行可能とするようにしたことを特徴とす
    るコンピュータのプログラミング実行方法。
JP4780985A 1985-03-11 1985-03-11 コンピユ−タのプログラミング実行方法 Pending JPS61206038A (ja)

Priority Applications (4)

Application Number Priority Date Filing Date Title
JP4780985A JPS61206038A (ja) 1985-03-11 1985-03-11 コンピユ−タのプログラミング実行方法
CA000503426A CA1259138A (en) 1985-03-11 1986-03-06 Method of compiling high level language statements into low level language instruction sets
AU54364/86A AU5436486A (en) 1985-03-11 1986-03-06 Compiling high-level lanuage statements into lower-level language instruction sets
EP86301648A EP0194822A3 (en) 1985-03-11 1986-03-07 Methods of and apparatus for compiling high-level language statements into low-level language instruction sets

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP4780985A JPS61206038A (ja) 1985-03-11 1985-03-11 コンピユ−タのプログラミング実行方法

Publications (1)

Publication Number Publication Date
JPS61206038A true JPS61206038A (ja) 1986-09-12

Family

ID=12785689

Family Applications (1)

Application Number Title Priority Date Filing Date
JP4780985A Pending JPS61206038A (ja) 1985-03-11 1985-03-11 コンピユ−タのプログラミング実行方法

Country Status (1)

Country Link
JP (1) JPS61206038A (ja)

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS5987550A (ja) * 1982-11-12 1984-05-21 Hitachi Ltd デ−タ処理方式

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS5987550A (ja) * 1982-11-12 1984-05-21 Hitachi Ltd デ−タ処理方式

Similar Documents

Publication Publication Date Title
US5204960A (en) Incremental compiler
US5680621A (en) System and method for domained incremental changes storage and retrieval
US5900000A (en) System, method, and computer program product for providing and incremental retrieval adaptor
US5826088A (en) System for protecting computer software written in interpreted language
Kaiser Semantics for structure editing environments
US5062039A (en) Sharing of workspaces in interactive processing using workspace name tables for linking of workspaces
US6314564B1 (en) Method for resolving arbitrarily complex expressions at link-time
JPS61206038A (ja) コンピユ−タのプログラミング実行方法
CA1259138A (en) Method of compiling high level language statements into low level language instruction sets
JPS61206039A (ja) コンピユ−タのプログラミング実行方法
JPS61211738A (ja) 原始プログラムの注釈管理方式
JPS6367695B2 (ja)
Culwin ADA, a developmental approach
JPH03135630A (ja) 命令スケジューリング方式
Marriott et al. An enhancement to ACT: A stand-alone disk driver compatible with RDOS
Gust Introduction to machine and assembly language programming
IL145365A (en) Generate optimal data field conversion routines on your computer
Jones et al. FORTRAN tools for VAX/VMS and MS-DOS
Symes Manipulation of data structures in a numerical analysis problem solving system: NAPSS
KR100229567B1 (ko) 오버레이 코딩시 좌표값과 텍스트값 생성방법
Grafton et al. Six Basics
Symes Manipulation of Data Structure in a Numerical Analysis Problem Solving Systems
Breitbard et al. The ACME compiler.
JPS61206040A (ja) コンピユ−タのプログラミング方法
JPS62221037A (ja) コンパイル方法