JPH0381829A - 高級言語プログラムの初期値を有したスタティック変数参照方式 - Google Patents

高級言語プログラムの初期値を有したスタティック変数参照方式

Info

Publication number
JPH0381829A
JPH0381829A JP21891289A JP21891289A JPH0381829A JP H0381829 A JPH0381829 A JP H0381829A JP 21891289 A JP21891289 A JP 21891289A JP 21891289 A JP21891289 A JP 21891289A JP H0381829 A JPH0381829 A JP H0381829A
Authority
JP
Japan
Prior art keywords
name table
initial value
storage area
table type
setting means
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
JP21891289A
Other languages
English (en)
Inventor
Tomoyuki Yui
朋之 湯井
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 JP21891289A priority Critical patent/JPH0381829A/ja
Publication of JPH0381829A publication Critical patent/JPH0381829A/ja
Pending legal-status Critical Current

Links

Landscapes

  • Devices For Executing Special Programs (AREA)

Abstract

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

Description

【発明の詳細な説明】 〔産業上の利用分野〕 本発明は高級言語コンパイラがコンパイル時に初期値を
有したスタティック変数を参照する方式に関し、特にス
タティック変数をメモリに割り付けず定数として参照す
る方式に関する。
〔従来の技術〕
従来この種の初期値を有したスタティック(STATI
C)変数の参照は、必らずメモリに割り付けたデータと
して参照していた。
〔発明が解決しようとする課題〕
上述した従来の初期値を有した5TATIC変数の参照
方式は、−度も更新され々い5TATIC変数も必らず
メモリに割り付けるので、5TATIC変数が多くなる
と、5TATIC変数の割り付けられているメモリサイ
ズも増大するという欠点がある。
〔課題を解決するための手段〕
本発明の高級言語プログラムの初期値を有したスタティ
ック変数参照方式は、宣言データ処理部を備え、初期値
を有するスタテイ、り変数が宣言されている高級言語ソ
ースプログラムをコンパイルするとき、前記スタティッ
ク変数を参照する高級言語プログラムの初期値を有した
スタティック変数参照方式において、 前記宣言データ処理部の内の名前テーブル作成部によっ
て作成される名前テーブル内に前記初期値を有したスタ
ティック変数の初期値情報を格納する初期値情報格納域
と、名前テーブル種別を格納する名前テーブル種別格納
域と、宣言された変数の更新情報であるデータ更新情報
を格納するデータ更新情報格納域とを有し、 宣言データトークンを入力し、前記名前テーブル種別格
納域に宣言された変数の種別である名前テーブル種別を
設定する名前テーブル種別設定手段と、 前記初期値情報格納域へ前記初期値情報を設定する初期
値情報設定手段と、 実行文トークンを入力し、前記データ更新情報格納域へ
データ更新情報を設定するデータ更新情報設定手段と、 前記データ更新情報設定手段によりデータ更新情報格納
域へ設定されたデータ更新情報を入力し、スタティック
変数を定数に変更可能かを判定し前記名前テーブル種別
設定手段により前記名前テーブル種別格納域へ設定され
た名前テーブル種別を定数を表わす種別に変更する名前
テーブル種別変更手段とを備えている。
〔実施例〕
次に、本発明について図面を参照して説明する。
第1図は本発明の一実施例の構成図で・ある。
第1図を参照すると本発明の一実施例は、コンパイラの
一部である宣言データ処理部1、ソースプログラム中の
各変数の宣言毎に作成される名前テーブル13a〜13
d、宣言文に対するトークンである宣言データトークン
14、実行文に対するトークンである実行文トークン1
5から構成される。
さらに、宣言データ処理部lは、名前テーブル作成部2
、データ更新情報設定手段5、名前テーブル種別変更手
段6から構成される。
また、名前テーブル作成部2は、名前テーブル種別設定
手段3、初期値情報設定手段4から構成される。
そして、名前テーブル13a〜13dは名前テーブル種
別格納域7、初期値情報格納域9、データ更新情報格納
域11から構成される。
次に、処理の流れを説明する。
第1図において宣言データ処理部1が起動されると、宣
言データ処理部1の名前テーブル作成部2、データ更新
情報設定手段5、名前テーブル種別変更手段6が順次起
動される。さらに、名前テーブル作成部2の名前テーブ
ル種別設定手段3、初期値情報設定手段4が順次起動さ
れる。
そして、名前テーブル作成部2は宣言された変数の情報
を持つ宣言データトークン14を入力し、入力された変
数情報から名前テーブル13a〜13dを作成しデータ
更新情報格納域11をクリアする。さらに、名前テーブ
ル種別設定手段3は宣言データトークン14から変数の
割り付は状態を名前テーブル種別8として名前テーブル
種別格納域7へ設定する。また、初期値情報設定手段4
は宣言データトークン14内の初期値情報10を名前テ
ーブル13a〜13d中の初期値情報格納域9へ設定す
る。変数に対して初期値が存在しない場合は初期値なし
の情報を初期値情報格納域9へ設定する。
データ更新情報設定手段5は実行文トークン15を入力
し、入力された実行文が変数の内容を更新するような文
である時に、その変数に対する名前テーブル13a〜1
3dを検索し、その名前テーブル13a〜13d中のデ
ータ更新情報格納域11へ変数が更新されたことを表示
するデータ更新情報12を設定する。名前テーブル種別
変更手段6は全ての名前テーブル13a〜13dを入力
し、名前テーブル種別格納域7中に格納されている名前
テーブル種別8が5TATIC変数を表わすもので、初
期値情報格納域9中に初期値情報10が存在し、且つ、
データ更新情報格納域ll中のデータ更新情報12が変
数に対して更新が行われなかったことを示している場合
に、名前テーブル種別格納域7中の名前テーブル種別8
を初期値情報10を値として持つ定数であることを示す
名前テーブル種別8に変更する。
このように、コンパイラが初期値を有した5TATIC
変数を定数として参照できるか否かを判定し、定数とし
て参照可能であれば、5TATIC変数をメモリには割
り付けず定数として参照することにより、5TATIC
変数割り付は域の総サイズを減少することができる。ま
た、メモリへの参照が不要となるため、目的プログラム
の実行時性能を向上させることができる。
〔発明の効果〕
以上説明したように本発明は、コンパイラが初期値を有
した5TATIC変数を定数として参照できるか否かを
判定し、定数として参照可能であれば、5TATIC変
数をメモリには割り付けず定数として参照することによ
り、5TATIC変数割り付は域の総サイズを減少する
ことができるという効果がある。
【図面の簡単な説明】
第1図は本発明の一実施例の構成国である。 l・・・・・・宣言データ処理部、2・・・・・・名前
テーブル作成部、3・・・・・・名前テーブル種別設定
手段、4・・・・・・初期値情報設定手段、5・・・・
・・データ更新情報設定手段、6・・・・・・名前テー
ブル種別変更手段、7・・・・・・名前テーブル種別格
納域、8・・・・・・名前テーブル種別、9・・・・・
・初期値情報格納域、10・・・・・・初期値情報、1
1・・・・・・データ更新情報格納域、12・・・・・
・データ更新情報、13・・・・・・名前テーブル、1
4・・・・・・宣言データトークン、15・・・・・・
実行文トークン。

Claims (1)

  1. 【特許請求の範囲】 宣言データ処理部を備え、初期値を有するスタティック
    変数が宣言されている高級言語ソースプログラムをコン
    パイルするとき、前記スタティック変数を参照する高級
    言語プログラムの初期値を有したスタティック変数参照
    方式において、前記宣言データ処理部の内の名前テーブ
    ル作成部によって作成される名前テーブル内に前記初期
    値を有したスタティック変数の初期値情報を格納する初
    期値情報格納域と、名前テーブル種別を格納する名前テ
    ーブル種別格納域と、宣言された変数の更新情報である
    データ更新情報を格納するデータ更新情報格納域とを有
    し、 宣言データトークンを入力し、前記名前テーブル種別格
    納域に宣言された変数の種別である名前テーブル種別を
    設定する名前テーブル種別設定手段と、 前記初期値情報格納域へ前記初期値情報を設定する初期
    値情報設定手段と、 実行文トークンを入力し、前記データ更新情報格納域へ
    データ更新情報を設定するデータ更新情報設定手段と、 前記データ更新情報設定手段によりデータ更新情報格納
    域へ設定されたデータ更新情報を入力し、スタティック
    変数を定数に変更可能かを判定し前記名前テーブル種別
    設定手段により前記名前テーブル種別格納域へ設定され
    た名前テーブル種別を定数を表わす種別に変更する名前
    テーブル種別変更手段とを備えたことを特徴とする高級
    言語プログラムの初期値を有したスタティック変数参照
    方式。
JP21891289A 1989-08-24 1989-08-24 高級言語プログラムの初期値を有したスタティック変数参照方式 Pending JPH0381829A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP21891289A JPH0381829A (ja) 1989-08-24 1989-08-24 高級言語プログラムの初期値を有したスタティック変数参照方式

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP21891289A JPH0381829A (ja) 1989-08-24 1989-08-24 高級言語プログラムの初期値を有したスタティック変数参照方式

Publications (1)

Publication Number Publication Date
JPH0381829A true JPH0381829A (ja) 1991-04-08

Family

ID=16727266

Family Applications (1)

Application Number Title Priority Date Filing Date
JP21891289A Pending JPH0381829A (ja) 1989-08-24 1989-08-24 高級言語プログラムの初期値を有したスタティック変数参照方式

Country Status (1)

Country Link
JP (1) JPH0381829A (ja)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2012069010A1 (zh) * 2010-11-25 2012-05-31 意法·爱立信半导体(北京)有限公司 静态存储的分配方法和装置

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2012069010A1 (zh) * 2010-11-25 2012-05-31 意法·爱立信半导体(北京)有限公司 静态存储的分配方法和装置

Similar Documents

Publication Publication Date Title
JP4794437B2 (ja) 編集処理中にプログラムコンポーネントの整合性を表現しチェックするための拡張型システム
EP0777177B1 (en) A method for object-oriented programming using dynamic interfaces
JPH0827774B2 (ja) 修正可能な機能をサーバ上で実行する方法
JPH02272627A (ja) デイジタル・コンピユータ・システムとその手続呼び出し方法
EP0373361A3 (en) Generating efficient code for a computer with dissimilar register spaces
JPH06103085A (ja) オブジェクト指向型プログラム言語のためのコンパイラに仮想ファンクションテーブルをインプリメントする方法
US7096456B2 (en) Method and apparatus for providing dynamically scoped variables within a statically scoped computer programming language
US20060150164A1 (en) Run-time type conversion
US6526407B1 (en) Method for supporting multiple file-systems in file input/output operations
JPH0381829A (ja) 高級言語プログラムの初期値を有したスタティック変数参照方式
Ichbiah et al. General concepts of the simula 67 programming language
US7185324B2 (en) Compiler apparatus and method for determining locations for data in memory area
US6124856A (en) Method and apparatus for displaying modeless bar interfaces in a computer system
US20100229164A1 (en) Method and system generating execution file system device
US6128772A (en) Object-oriented apparatus and method in a computer system for establishing/altering the ownership relationship between objects
US8775453B2 (en) System and method for reducing memory usage of tree-based data structures
JPH0370038A (ja) 高級言語プログラムの変数割付け方式
JPS6234240A (ja) デ−タ割付け方式
JPH0239242A (ja) 電子計算機システムの一時作業領域割付方式
JPH03255534A (ja) 高級プログラム言語のポインタ修飾データ参照方式
Mitchell et al. LC2: A language for conversational computing
JPS63247824A (ja) デ−タエントリ画面定義数の拡張方法
JPH04344533A (ja) インタプリタ言語におけるコンパイルドコードオブジェクトからのデータ参照方式
JPH04178738A (ja) レジスタアロケーション方式
Liu An advanced C++ library for symbolic computing