この規格ページの目次
77
X 3003-1993
機能を用意してもよい。
(3) 処理系は,下位けたあふれを例外状態(1507,続行可能。ゼロで置き換えて処理を続ける。)としても
よい。この場合,下位けたあふれを例外処理区で処理することができる(12.1参照)。
11. ファイル
11.0 ファイル編成及び記録形式
ファイル編成及び記録形式は,次による。
(1) ファイル (file) は,BASICプログラムの外部にあるデータの構造化された集まりである。ファイルは,
BASICプログラムの実行中に生成されたデータを保存し,後の実行時にそのデータを取り出したり,
修正したりする手段を利用者に提供する。外部データをプログラムに転送する処理を入力 (input),プ
ログラムから転送する処理を出力 (output) という。
処理系は,ファイルの生成,保存及び取出しの機能を提供しなければならない。その手段は,処理
系定義とする。ファイルに対する入出力操作は,ここで規定されているとおりに実行されなければな
らない。
(2) この箇条11.では,ファイル及び装置のBASICプログラムに対する論理的な見え方を規定する。ある
場合には物理的な特性を反映することもあるが,一般的にこの規格は,ファイル及び装置の物理的な
表現及び構造については何も前提としていない。
(3) ファイル編成 (file-organization) は,次の四つとする。
順編成ファイル及び索引編成ファイルは,記録 (record) の列とする。相対編成ファイルは,記録領
域 (record-area) の列とする。この記録領域には,記録があることもあるし,ないこともある。流れ編
成ファイルは,値 (value) の列とする。
(a) 順編成 (sequential)
(b) 流れ編成 (stream)
(c) 相対編成 (relative)
(d) 索引編成 (keyed)
(4) 記録形式 (record-type) は,次の三つとする。
表示形式記録は,文字の列とする。内部形式記録は,型をもった値の列とする。固有形式記録は,
プログラムで指定した枠 (template) によって記述される欄 (field) の列とする。
表示形式記録は,数値及び文字列値に対して異なる内部表現を用いるシステム相互の間でデータを
交換する手段を与え,人間の目に見える形でデータを扱う。内部形式記録は,一つのシステムの内部
でデータを効率よく操作する手段を与える。固有形式記録は,一つのシステムの内部の異なる言語処
理系間でデータを交換する手段を与える。
(a) 表示形式 (display)
(b) 内部形式 (internal)
(c) 固有形式 (native)
(5) ファイルに関連して六つの機能単位 (module) をおく。これらは,ファイル編成と記録形式のある特
定の組合せを支援する(表11.4参照)。
(a) 中核機能単位及び部分集合中核機能単位は,表示形式順編成ファイル,内部形式順編成ファイル及
び内部形式流れ編成ファイルを支援する。
(b) 内部形式拡充ファイル機能単位及び内部形式拡充ファイル部分集合機能単位は,内部形式相対編成
ファイル及び内部形式索引編成ファイルを支援する。
――――― [JIS X 3003 pdf 81] ―――――
78
X 3003-1993
(c) 固有形式拡充ファイル機能単位及び固有形式拡充ファイル部分集合機能単位は,固有形式順編成フ
ァイル,固有形式相対編成ファイル及び固有形式索引編成ファイルを支援する。
(d) その他のファイル編成と記録形式の組合せは,処理系定義とする。
備考 六つの機能単位は,上のとおり二つずつ3組に分かれる。各組の二つの機能単位に対する11.
の規定は,それぞれ同じ(2.0参照)である。以下ではこれらを,“部分集合”の付かない名前
で併せて呼ぶ。
(6) 機能単位の区別は,構文の生成規則にも反映されている。それぞれの箇条では,最初に中核機能単位
の構文規則を示す。次に,拡充ファイル機能単位に関する追加の構文の生成規則を示す。固有形式拡
充ファイル機能単位に関してだけ適用される拡充の生成規則に対しては,番号の前に“固”と表示す
る。
(7) 箇条11.で使う用語の定義は,次による。
(7.1) ファイルは,“ファイル要素 (file element)”の列とする。すなわち,索引編成ファイル及び順編成フ
ァイルのファイル要素は記録,相対編成ファイルのファイル要素は記録領域,流れ編成ファイルの
ファイル要素は値とする。
(7.2) 実行中に,一つのファイルには一つの“ファイル指示子 (file pointer)”が,関連付けられる。文の
実行が完了した時,ファイル指示子は一つのファイル要素又はファイルの終りを指す。ファイル指
示子がファイルの始めにあるときには,それは,もし存在するならば先頭のファイル要素を指す。
ファイルが空列である場合には,ファイルの始めと終りは同じとし,ファイル指示子はこの位置を
指す。
(7.3) “次のファイル要素 (next file element)”というとき,そのようなファイル要素が存在しないならば,
それはファイルの終りを指す。
(7.4) “ファイルの終り (end of file)”は,順編成ファイル,流れ編成ファイル及び索引編成ファイルでは,
末尾のファイル要素の直後の位置とする。相対編成ファイルでは,存在する最後の記録の直後の空
の記録領域とする。
(7.5) ファイルを全体的に操作する文を“ファイル操作 (file operation)”といい,次の五つとする。
(a) pen文
(b) lose文
(c) rase文
(d) et文
(e) sk文
(7.6) 個々のファイル要素に適用する文を“記録操作 (record operation)”といい,次の七つとする。
これらには,機能語MAT及びLINEを前置した文をも含む。input操作,write操作などという場合,
その機能語を用いた文すべてを指す。例えば,write操作は,write文とmat-write文とを含む。
(a) nput操作
(b) rint操作
(c) ead操作
(d) rite操作
(e) ewrite操作
(f) elete文
(g) 指示子制御を指定したset文
――――― [JIS X 3003 pdf 82] ―――――
79
X 3003-1993
(7.7) 七つの記録操作は,次の対象に作用する。
(a) ファイル中のデータ
(b) プログラム中の変数
(c) ファイル指示子
(7.8) rint操作,write操作,rewrite操作及びdelete文は,ファイル中のデータ及びファイル指示子に作
用する。read操作及びinput操作は,プログラム中の変数及びファイル指示子に作用する。指示子
制御を指定したset文は,ファイル指示子だけに作用する。
(7.9) 入力及び出力は,上に規定したようなファイルに対する転送だけではない。処理系は,ファイルを
処理する文を,端末装置,行印字装置,通信回線などの装置 (device) に対しても適用してよい。
この箇条11.における“ファイル (file)”という用語は,外部データの入力源 (source) 又は出力先
(destination) を全般的に意味する。すなわち,狭義のファイル又は装置を意味する。この規格中で二
つを区別する必要がある場合には,用語として“狭義ファイル (true file)”と“装置 (device)”とを使
い分ける。
(8) 装置は,次の点で狭義ファイルとは異なる。
(a) 個々の装置に書き出したデータが,そのまま保存されて後の入力操作で取り出せるか否かは,処理
系定義とする(11.1参照)。
(b) 個々の装置が消去の能力をもつか否かは,処理系定義とする(11.1参照)。
(c) 装置のファイル編成としては,相対編成及び索引編成は許されない(11.1参照)。
(d) 装置は,すべての入出力方向 (access-mode) 属性を支援しなくてもよい(11.1参照)。
(e) 装置は,132以上の記録長を保証しなくてもよい(11.1参照)。ただし,処理系は,各装置で保証さ
れる最低限の記録長を文書で示さなければならない。
(f) 個々の装置が記録設定の能力をもつか否かは,処理系定義とする(11.2参照)。
(g) 個々の装置のデータ存在状態が真になったり偽になったりするための条件は,処理系定義とする
(11.2参照)。
(h) 入力制御項目の,prompt句,timeout句及びelapsed句の意味規則は,対話方式の端末装置の場合
にだけ適用される。処理系は,(もしあれば)どの装置が対話方式の端末装置であるかを定義しなけ
ればならない。これらの入力制御項目の,他の装置及び狭義ファイルに対する効果は,処理系定義
とする(11.4参照)。
(i) 装置に対するinput操作中に,表11.1に示す条件が発生したとき,それを,11.4に規定されたとお
り続行不能な例外状態として扱うか,10.2に規定されたとおり続行可能な例外状態として扱いその
回復手続きを適用するか否かは,処理系定義とする(11.4参照)。
(9) 表11.2表11.4は,さまざまなファイル機能の概要を示す。詳細な仕様は,11.111.5による。
――――― [JIS X 3003 pdf 83] ―――――
80
X 3003-1993
表11.1 端末とファイルとで異なる例外状態
11.4での 10.2での 条件
例外状態種別 例外状態種別
8105 8102 入力応答の構文誤り
8101 8103 数値変数に対応するデータ要素が数値定数で
ない
8012 8002 入力応答のデータ要素が足りない
8013 8003 入力応答のデータ要素が多すぎる
1008 1007 入力中の数値あふれ
1105 1054 入力中の文字列あふれ
表11.2 ファイル編成に対する操作及び記録設定
この表は,それぞれのファイル編成に対して有効な記録操作と記録設定の組合せを示す。編成は,許され
る記録操作の能力によって定義される。表にない記録操作と記録設定との組合せは,構文誤りとする。例え
ば,key句を指定したinput文は,構文誤りとする。
○ : 規格によって規定される,× : 例外状態,△ : 処理系定義
記録操作 記録設定 ファイル編成
順編成 流れ編成 順編成 索引編成
input操作 なし ○ △(2) △(2) △(2)
NEXT ○ △(2) △(2) △(2)
BEGIN ○ △(2) △(2) △(2)
END ○(4) △(2) △(2) △(2)
SAME ○ △(2) △(2) △(2)
print操作 なし ○ △(2) △(2) △(2)
NEXT ○ △(2) △(2) △(2)
BEGIN ○ △(2) △(2) △(2)
END ○ △(2) △(2) △(2)
SAME ○ △(2) △(2) △(2)
read操作 なし ○ ○ ○ ○
NEXT ○ ○ ○ ○
BEGIN ○ ○ ○ ○
END ○(4) ○(4) ○(4) ○(4)
SAME ○ ○ ○ ○
RECORD ×(1) ×(1) ○ ×(1)
KEY ×(1) ×(1) ×(1) ○(2)
write操作 なし ○ ○ ○ ×(3)
NEXT ○ ○ ○ ×(3)
BEGIN ○ ○ ○ ×(3)
END ○ ○ ○ ×(3)
SAME ○ ○ ○ ×(3)
RECORD ×(1) ×(1) ○ ×(1)(3)
KEY(等値) ×(1) ×(1) ×(1) ○
rewrite操作及びなし △(5) △(5) ○ ○
delete文 NEXT △(5) △(5) ○ ○
BEGIN △(5) △(5) ○ ○
END △(5) △(5) ○(4) ○(4)
SAME △(5) △(5) ○ ○
RECORD △(5) △(5) ○ ×(1)
KEY △(5) △(5) ×(1) ○
――――― [JIS X 3003 pdf 84] ―――――
81
X 3003-1993
記録操作 記録設定 ファイル編成
順編成 流れ編成 順編成 索引編成
指示子制御を指 なし ○ ○ ○ ○
定したset文 NEXT ○ ○ ○ ○
BEGIN ○ ○ ○ ○
END ○ ○ ○ ○
SAME ○ ○ ○ ○
RECORD ×(1) ×(1) ○ ×(1)
KEY ×(1) ×(1) ×(1) ○
注(1) ECORDは,相対編成ファイルにだけ有効とする。KEYは,索引編成ファイルにだけ有効とする。
(2) nput操作及びprint操作は,表示形式記録に対してだけ定義する。表示形式記録は,順編成ファイル
に対してだけ定義する。
(3) 索引編成ファイルに対するwrite操作には,等値探索を指定しなければならない。
(4) NDによってデータ存在状態は,偽となる。
(5) 相対編成及び索引編成以外のファイル編成に対するrewrite操作及びdelete文は,処理系定義とする。
表11.3 記録操作及び制御
この表は,記録操作に対して構文上許される制御機能を示す。○印は,許される制御機能を示す。
記録操作 制御
記録設定 データ存否 書式と枠
中核記録設 すべての記 if-missing句 if-there句 書式引用 枠引用
定(1) 録設定
input操作 ○ ○
print操作 ○ ○ ○
read操作 ○ ○ ○
write操作 ○ ○ ○
rewrite操作 ○ ○ ○
delete文 ○ ○
set文(2) ○ ○ ○
注(1) 中核記録設定=NEXT|BEGIN|END|SAME
(2) et文は,指示子制御を指定したものとする。
表11.4 ファイル編成及び記録形式
この表は,規格の規定するファイル編成と記録形式との組合せ及びそれを支援する機能単位を示す。
ファイル編成 記録形式
表示形式 内部形式 固有形式
順編成 中核 中核 固有形式拡充ファイル
流れ編成 中核
相対編成 内部形式拡充ファイル 固有形式拡充ファイル
索引編成 内部形式拡充ファイル 固有形式拡充ファイル
11.1 ファイル操作
11.1.1 概要 ファイル全体に作用する文として,次の四つ及びset文(11.3参照)がある。
(1) pen文 (open-statement) は,ファイルとプログラムとの接続を行い,ファイルをプログラムから参照
可能にする。ファイルの識別に用いられる形式は,オペレーティングシステムに依存する。したがっ
て,この規格では,ファイルにはそれぞれ名前と呼ばれる文字の列が関連付けられ,その名前によっ
てオペレーティングシステムがファイルを識別することだけを想定する。プログラム中では,ファイ
ルの識別には,そのファイルの参照に使用する経路 (channel) の番号を用いる。
(2) lose文 (close-statement) は,open文によって参照可能にされたファイルを,参照不能にする。
(3) rase文 (erase-statement) は,狭義ファイル中のデータの全部又は一部を削除する。装置には,何の効
――――― [JIS X 3003 pdf 85] ―――――
次のページ PDF 86
JIS X 3003:1993の引用国際規格 ISO 一覧
- ISO/IEC 10279:1991(IDT)
JIS X 3003:1993の国際規格 ICS 分類一覧
- 35 : 情報技術.事務機械 > 35.060 : 情報技術に使用される言語
JIS X 3003:1993の関連規格と引用規格一覧
- 規格番号
- 規格名称
- JISX0201:1997
- 7ビット及び8ビットの情報交換用符号化文字集合
- JISX0301:2002
- 情報交換のためのデータ要素及び交換形式―日付及び時刻の表記