• 検索結果がありません。

電子計算機実習用ソフトウェアシ■テムの開発 一 1. ln core FORTRAN 一

N/A
N/A
Protected

Academic year: 2021

シェア "電子計算機実習用ソフトウェアシ■テムの開発 一 1. ln core FORTRAN 一"

Copied!
6
0
0

読み込み中.... (全文を見る)

全文

(1)

電子計算機実習用ソフトウェアシ■テムの開発

一 1. ln core FORTRAN 一

祐*

(昭和49年9月30日受理)

New softwear systems for computer practice 工. In core FORTRAN一

Shunsuke KlsHIMoTO

(Received Seqtember 30, 1974)

 A new compile & go system (#SYSTEM−22) was developed for processing the FORTRAN jobs in the computer practice by NEAC−3200/30 (16KW system).

 in this new system, the user s run−program is generated into the user s area by the compiler and the loader directly.

It save much trouble and the core memory to deal with the object prograrns. Therefore, it is possible to process the FORTRAN source prograrn which is consisted of a few hundred steps.

1 緒

 小型電子計算機を,プログラミング実習等の言語教育用 として利用するためには,コンパイラ言語を処理するコア 常駐のソフ5ウェアシステムが備わっていることが望まし い。しかし本校において,小型電子計算機により実習が開 始された当初は常駐のソフトウェアがなく,コンパイラ,

m一ダ等のシステムモジュールを紙テープからコアにローー ドしてはジョブステップを進めていくという手間と時間が かかる方法で処理がなされていた。そのため,実習初期の 初歩的で小容量のプログラムでさえ,1時間当り数ジョブ 処理できれば上等であった。そこで,実習時におけるオペ

レータの手作業を軽減し,処理効率をあげるため,コア常 駐のFORTRAN処理システムが開発され,過去2年間に わたり改良が加えられてきた。その間,試作システムの段 階から実習で積極的に使用され,十分な実績をあげた。1・2)

しかし,利用頻度が増加し,利用形態も多様化するにつれ 最終システムにも,2〜3の弱点があることがわかり,十 分なシステムとはいえなくなった。そこで今回は,ソース プログラムのコンパイル毅階で,コンパイルと同時にラン プログラムを作るという新しい方法を試み,弱点をすべて

除くことに成功した。その結果,実用上満足できるシステ ムを成功させることができたので報告する。

*応用物理

2 新システムの仕様

 実習時における多量のジョブを効率よくさばかねばなら ないので,バッチ処理向きシステムとした。したがって.

複雑な操作の必要な1/0機器を除き,新システムで使用 するハードの構成を,NEAC−3200/30(16KW).コンソ_

ルタイプライタ(1/OTYPと略記),高速紙テープ読取 装置(PTRと略記)と決めた。一連の実習システム1,2)と の関連から今回のシステムに対し#SYSTEM−22と名付 け,FORTRAN処理能力はJIS−5000レベル,ユーザーズ エリアは3KW程度で, compile & goとすることを目標と

した。

 同じcompile&goで既に実用されている.#SYSTEM−

21では,ユーザーズ手リアの一部をさいて設けたファイル 領域にオブジェクトを格納しておき,コンパイル終了後ロ ーダによりリンクロードを行なってランプログラムを作っ ていた。2)すなわち,コンパイラ,ローダはシーケンシャ ルに糊御が渡りしかも独立に働いていた。しかし今回は,コ

ンパイラのオブジェクト出力ルーチンでローダを制御し,

コンパイルと同時に直接ランプログラムを作ってゆく方 式,つまり,コンパイラとn一ダに並列処理を行なわせる

(2)

津山高専紀要 第12号(1974)

ことにした。

 基本システムで蓄積されたユーザーライ.ブラリ等も扱え るよう基本システムと互換性を持たせるため,コンパイラ,

ローダ,ライブラリ等のシステムプログラムはNEAC−3200 基本ソフトウェア3)(以下基本システムと略記)のもの に部分的改良を加えてそっくり利用することにした。しか し,基本システムの各モジュールはそれぞれが独立してラ ンニングできるように設計されており,特にコンパイラは コアメモリで占有するロケーションも決っている。したが って,これらのモジュールを同時にコア上に存在させ,お 互に関係を保ちながらランニングさせるためには,コント m・一一ルモニタで各モジ=、.一ルを本来占めるべきロケーショ ンに移した上で,パラメータをセットし,制御を渡さねば ならない。そこ.で,今回のシステムには下記3つのモード を設定し,おのおののモードで働く各システムモジュール の仕様を次のように決めた。

2.1 シスデムのモード

i.コンパイル&ロードモード($Cモード):上記コ  ンパイラとそれに制御されtc m一ダに制御が渡ってい  るモード。ソースプログラムのコンパイルと同時に,

 FORTRANライブラリ等とリンクをとりながらランフ。

 nグラムをユーザーズエリアに作り出す。

ii. n一ドモード($Rモード):ローダのみに制御が  渡っているモードで,iでリンクが完了しなかった場  合,すなわち,ユーザーズプログラムが常駐ライブラ  リにないユーザーライブラリ等をコールしている場  合,これらのライブラリが含まれているオブジェクト  テープをPTRから読み込み,ひき続きリンクロード  を行なう。

iii.実行モード($Xモード):ユーザーズプPグラム  の実行を行なう。

 2.2 コンパイラ関係

 コンパイル時におけるソースプログラム入力はpTR,

コンパイルリスト出力は1/OTYPとする。ソースプロ グラムを一行分コンパイルし,そのオブジェクトをローダ 内のバッファに出力,n一ダのパラメータをセットして強 制m・・一ド4)を行なわせる。コンパイルエラーインデックス

(IE)を設けて,エラーがある場合はそれをセットし,オ ブジェクトの出力およびm一ダの制御をやめる。また,ソ ースプログラムのターミネータ5)は $0 ,tt$* 両方が 使用可能にする。センススイッチMlのON/OFFでリス

トコンパイル,ノーリストコンパイルを選択することにす

る。

 2.3 ローダ関係

 コンパイラから強制ロードの指令をもらったら,まずシ ステムをリンクロード状態に切り換える。次のバッファ内 のオブジェクトをユ・一N一ザーズエリアにラン形式で展開し,

同時に常駐ライブラリとのリンクをとる。オブジェクトの ブロックが最終ブロックでない場合は,コントロールモニ・

タを経由,システムをコンパイルモードにセットしてコン パイラに制御を帰す。最終ブロックをロードしても,リン クできてないサブプmグラム名がある場合はオブジェクト 入力をPTRに切り換えて,外部ライブラリのオブジェク

トテープが読めるようにする。リンクロードが完了した場 合はコントm一ルモニタに制御をもどす。最終ブロックか どうかを示すインデックス,リンクが完了したかどうかを 示すインデックスとしてそれぞれIB, ILを設けておく。

 2.4 FORTRANライブラリ

 FORTRANで使用される基本関数はすべてコアに常駐さ せることが望ましいが,それだけユーザーズエリアが圧迫 される。そこで数百例の実習ジョブについて調べてみて,

コールされる頻度の多いもののうちSQRT, SIN/COS,

ATAN/ATAN 2, ALOG/ALOGI O. EXP, ABS/IABS.

AMOD/MOD, AINT/INT, FLOAT/IFIXおよびこれらの ルーチンがコールする下位の実数演算ルーチン等をコア常 駐とする。

 他の標準関数TANH, SIGN/ISIGN, DIM/IDIM, AMAX l/AMAXO, MAXI/MAXO. AMINI/AMINO, MINI/MINO,

ISHF, URNDは外部ライブラリとしてオブジェクトテープ で用意しておく。ただし,ISHF, URNDはおのおのビット

シフト関数,一様乱数発生関数で,このシステム独自のラ イブラリである。

 2.5 1/0ライブラリ

 ユーザーズプログラム実行時はPTR入力,1/O TYP出 力を標準として常駐にする。なお工/0機器の門番は,教科 書等で最も多く使用されている入力5,出力6を使用する が,基本システムとの互換性も考えて下記のように決めた。

  入力: 1/OTYP…・一一 1

      PTR    ・……・…・ 5又は2

  出力:1/OTYP…・一…・6又は1

      PTP ・一・・一・・・・… 2

 1/OTYPからのキーボード入力, PTPへの出力は使用 される回数が少ないので,オブジェクトテープを用意して

おく。

2.6 コントロールモニタ

今回のシステムではコンパイラおよびローダにシステム

(3)

制御機能のかなりの部分を持たせねばならない。したがっ て,コントm一ルモニタ本体は比較的簡単で次の機能を持 てばよい。

 i・システムパラメータの初期値をセットする。初期化   の必要なパラメータは,システムのモードインデック   ス(IM),コンパイルエラーインデックス(IE),ユ   ーザーズプログラムのロード開始番地,間接アドレス   テーブル6)の始点,コモンエリアの始点,シンボルテ

START

1

  一ブルの始点,1/OTYPのページカウンタ,実行開始   番地等である。

 ii・処理の進度にしたがってシステムのモードを切り換   える。そしてその状態をメッセージとして出力する。

 iii・ジョブステップに応じて必要なシステムプログラム   に制御を渡す。

 iv.連続処理を中断して,強制的に所定のモードにセッ   トする。

 以上#SYSTEM−22のシステムフローチャートをFig.1 に示す。このシステムには終了がなく,一度起動されれば オペレータストップまでくりかえし処理が進んでゆく。

INTI

1M : O.〉;i

2

MCHG

iM ・e−O

MCHG

COMPiLER

INPUT

1E:Q

OBJ

IM et

3) (2

IL:0 キ

LOADER

lB二〇

PTR $x

3 システムジェネレーション(SG)

$R

PAUSE

3

PAUSE

USER S P

$c

PAUSE

      l

Fig.1 The flow chart of #SYSTEM−22.

   INTI :Initial routine    MCHG : Mode change routine

 コンパイラ,ローダ,ライブラリ等のシステムプログラ ムは基本システムのモジュールに部分的改良を加えて利用 することにしたが,これらはもちろんオブジェクトレベル のものしか提供されておらず,内容変更はコアイメージで しか扱うことができない。すなわち,これらのプログラム をコアにm一ドしラン形式にした上で,マニュアルオペレ ーションによりコンソールパネルから直接メモリ内容変更 するか,アブソリュート形式4)でアセンブルした変:更用プ ログラムを変更カ所にオーバーレイしてn・一一ドするかの2 通りの方法しかない。いずれの場合もロケーション,メモ

リ範囲が決まっていて自由度がなく変更は困難であるが,

後者の方法は手作業の部分が少ないので,この方法を用い ることにした。

 今回のシステムではコンパイラとローダが並行して働く ため,.コンパイラとユーザーズランプログラム(ライブラ

リも含めて)の間接アドレステーブルがコンパイル&ロー ド申完全に保存されねばならない。このため,システムの SGにあたっては,ジョブの進行によって乱されないエリ アを設けて,そこへ間接アドレステーブルを交互に待避さ せ得るよう配慮しておく必要がある。システムのモードチ ェンジでメモリ内容の移動が少なくてすむよう,各システ ムモジュールの配置をFig.2のように決めた。

 まず8K以降のメモリ領域(Fig. 2で200008番地以降)

を作業用にしてコンパイラ部のSGを行ない,間援アドレ ステーブルを待避エリアに逃がした形でSLST(セルフn 一ディングシステムテープ)3)にしておく。次にコンパイ ラ部が占めていたエリアを作業用として,8K以降のエリ アで常駐ライブラリ及びu一ダのSGを行なう。これには 2.4で示したライブラリ名をダミールーチンでコールし,

最高のロケーションにロードされたローダで所定のエリア にロードし常駐ライブラリを作る。最後にコントロールモ ニタ及びn一ダ変更用ルーチンをロードし,先にSLSTに

(4)

津山高専紀要 第12号(1974)

 0 630

15064 15550 16000

1 7777

I A

COMP

R A

bOMP−1/0

W A■

20000

26770

34640

37624 37777

LIB

UA

LDR

Fig.2 The memory map of #SYSTEM−22.

  m

      : lndirect address table area

COMP: FORTRAN Compiler

WA

LIB

UALDR cp

: Retreat of the indirect address table

: Compiler working area

: FORTRAN & 1/O Library

: User s area

; Object Loader

:Control皿onitor

The side figures are described in the octal notation.

したコンパイラ部を再ロードすれば,コア中に$Cモード のシステムが完成する。これをPLA−P2)ルーチンで一巻 のSLSTにしておく。 S Gの結果,各システムモジュール の占有メモリは,コンパイラ本体6.3KW,コンパイラ入 力カルーチン0,15KW,ライブラリ部3.6KW,ローダ 1.5KW,コントn一ルモニタO.1KW,間接アドレス0.4 KW,ワー一一キングエリア1KW,ユーザーズエリア3K:W となった。

4 使用方法・結 果

 今年度5月中旬に試作システム,下旬に実用システムの 1号が開発されて以来,6月に入ってから実習で積極的に 利用され始めた。最近の1カ月間(7月)の利用状況をみ

ると,本校の小型システム(モデル30システム)でさばか れた343のジョブの70%余り245のジョブが#SYSTEM−22 でさばかれている。残りはほぼアセンブラジョブなので,

FORTRANジョブにはほとんどこのシステムが利用されて いるとみてよい。この期間にモデル50システムで処理され たジョブ数は1035件であり,モデル30システムで処理さ れたものと合計すると1396件,そのうち約18%を#SYS−

TEM−22が受け持っていることになる。

SYSTEMlPL

@  LOAD #SYSTEM−22

2 DATE

SYSTEM#22

@ START START lSSAGE

3 SOURCE P.

零‡22

COMPILE

@ & LOAD COMPILE

@  LlST

4

#22 DATA

EXECUTE

R∈SULT

Fig.3 The process flow of #SYSTEM−22.

 Fig・3にこのシステムのプnセス・フm一示す。まず,

システムをコアにロードすると(第1ステップ),ロード終 了時に,日付けを入力するようメッle・一一ジが出力される。

日付けをコンソールから入力すると,スタートメッセージ が出力され,$Cモードとなり一時停止する(第2ステッ プ)。ここでソースプログラムのコンパイルを行なう(第

3ステップ)。コンパイルが終了すると$Xモードとなり 一時停止,続いてユーザーズプログラムの実行を行なう

(第4ステップ)。次のソースプmグラムの処理は第3ス テップ目からで,3〜4ステップがくりかえされることに なる。この手順で実際にソースプログラムを処理した結果 をFig.4に示す。これらの例題は実習に用いられたものの 申から適当に選んだものである。最初の例は連立一次方程 式を掃出し法で解く問題で,adjastable formatを使用し,

掃出しの過程も合わせ,出力させるよう指示したものであ る。$*はソースプmグラムのターミネータである。$X に続いて出力されている数字はユーザーのランプログラム

(5)

が占有したコアメモリ数を8進で示したものである。

場合は4442(8進)すなわち,

TYPE 工N:

74!06!聖O 幽す寧

YY/MM/DD

この 2338Wのコアメモリを使用

SYSτE醒一22 MA閣U良し OPεしAT:ON 寧毒奪 UOB STEP

CeMP a LOAD(LIST)

CeMP a LOADCNO LIST)

EXEeVTE

$c

t$YSTEM−22 FOHTRAN

c 寧孝零

500

5C)1

i

23

4

pc.

2e T2120

ssw:

OFFON

DATE t97nXO6/le GAUSS−JeRDAN *#

D:MENS工eN A(30,3卍),IFOPN1(35),:FOR卜!2(35)

READC5.5rJe) N FeRMAT(12)

Nt=Nウ1 K富o

nEAD(5.5el) IFORMI FORMAT(35A2}

REACC5.SOt) !FORM2

READ(5.IFORMI} ((A(1.J).J=1.Nl).1=±.N)

WRITE(6.IFePM2) H.C{ACI.J).J=t.Ni).1=1.N)

DO 7 K=歪3N MAX昌K De s rtK.N

IF(ABSCA(!.K)).GT.ABScA(MAX.X))〉 MA)C=I IECNAX.Eg.K) GO Te 3

De 2 JtK.Nl v昌A〔K,」》

A(K.J)4ACMAXJJ)

A(MAX.J)=V A}{K=ACK.K]

DO 4 J=X.Nl ACK.J)=A(K.J)/AKK DO 6 1冨夏,N rF(r.Ee.K) GO TO 6 AJK=A .K)

DO S J=K.Nl

A(1,」)昌直(1,J)一A=K寧A(K,」)

ceNT工NUE

VRITE(6.IFeRM2) K. ccA(1.J).J=1.Nl).r#1.N)

VRrTEC6.6eO) {!.ACIJNI)jl±bN)

FORMATCIHOI H ,2HX{.12.2H)=.IPEI3.S))

STOPEND

tSYSTEM−22 FORTRAN DATE i97ale6Xle

567

60e

sl eSX Olt442

0  2.eeoee

−1陰ooooe  4.oeeoe  s.eoeoo

t

 1.aeeoe

−e.eouerJ  o.eeeee e.oeeeo 2  レOOOOO

−e.eoeoe  o.eeoee  o.eeoee

3・

 1.eeeoe

−e.oeeee e.oeeoe e−oooeo

 t.oooee

−e・oeeee  e.eeeoo e.oeeee x( D冨 X( 2)露 x(3》童 xc 4)冨 sTep

 3.r)oeeo t.oeeea  2.oeoee 2.eaeeo  1.eeeoe 一3.eeeos 4.DりOO臼  一4.OOOOO

曾or80000  孟.20000  4.2eooe  n.6eeee

一e.seoeo  s.2eeof)

 o.2eeeo  ?.60eea

一〇.ooeoo 一e.34T83  且oOOOOO   O.56522  e幽00000  胃2●17391  0.eoooo o.s2n4

一e.eoeeo 一〇.ooeoo  l.eooeo o.oeooo  e.oeooo 1.ooeoe  e.eeoeo e.ooooo

一e.oooee 一〇.eeeee  t.oeoeo e.eoooe  u.oeeoe 1.eeeee  o.eeeeo o.ouoeo

 2.eeoeaE eo

−1.oeooeE oe  3.oeooeE oo  i.ooeooE oe

一3.rJeeee  a.eeeee  s.ooeoo  l.rJeeee

 o.20eee  q.20eoe  4.2eeee

−3.40eoe

一〇.3913e

−O.73913  7.3043S  5.eS696

冒量r56000  1.16eoo 曹3936000  6.saoee

一e.eooets  e.ooeoe

−e.eeeoe  1.00000

竃.00000 6.of)oee 3.ooeee 3曾OOOOO

 o.6eoae  6.60eoe  e.6eeee 冒。.2000e

 O.56522 冒。.0434s  e.7S261  6.6521T

e.440eo  O.且6000 幽O.36000  6.s4eeo

 2.eeeee 一塵goooeo  3.eoeoo  1.oeeee

CijMONTE C乱RO NO●2  S工Zε四 HO−5{AΣ申奪      IN了E6ER?,R工RDN,L(5監》

     DATA KK.T. INTe.RAIaDA.L )10. e. 5. e.eS. IHII      READC5.5eO) NO

  see Fon)sAT(rq)

     DO 3 LL=2.Si    3 L(LL)=IH一

     曽R夏TE【6,600) T,NO,τ」燭0,(L(LL〕,LL言且,5L)

  6ee EORMAT(iHO.4HTIMEJ 2X. IHNJ3X. IHM.2X.5HRtRON/

    llHe.13.15.14.16.2X.51Al)

     N=四〇      INT=tNTO      DO 2 T=1.50      M=e      DD 1 1=1.N      K=UR肘D(【NT)零IOO,

     κK轟KKウ1

     1FくKK冒し三,BOO◎) GO TO l.

     KK=e      INTO=INTe+2      1四τ置ΣNTO

    ■ IFK,GE・15巳創ND.K,L.ε●19》 M昌PIやi      N=N幽M

     R工RONロFLOAT(NO)零EXP(一FLOAT(T》喰RハMDA,

     DO 4 LL=2.51    4 L(LL)昌1罧      LN=四!Iooウ且      DO 5 LLt2.LN    S LtLL)=IHt

   2 VRITE(S.601) T.N.M.HIRON.{LCLL).LLThSl)

  6el EOnMAT(IH . r3.15.14. r6.eXj5)Al)

     5TOP      END s* eVRND Oe344#

SR sx ees66 T二門E  N  M  RIRON

STOP

soeo e seee a733 267 h7s6 4517 216 4524 q312 205 43e3 4067 24S ltO93 3S6S 199 3S94 3657 2ユ監  3704 3475 182 3523 3324 t51 33Sl SIS9 165 31gS 2985 174 3e32 2SIO 175 28SA 2685 125 2744 255S 127 2610 2428 13e 2482 23e2 126 2361 2202 10e 2246 2ege 112 2137 1997 93 Ee32

!867 監且O  L933

LTg5 92 IS39 1Ti6 79 17a9

塞633  6」  藍664 茎536  97  158ユ 且455  9崖  1505

13TS 77 1432

且3且7  6聖  1362

1259 SS 1296 i19T 62 1232 t139 5e 1172 1061 7S 111S leO9 S2 ie61  9S2 57 ]eO9  91L  4艮   960

 SsS 53 g13  S2e 38 86S  7Tl 49 B26  735 36 786

 704  3呈   74?

 675  29   ツ11

 641 34 676  ee4 37 643  S7S 26 612  549 29 5S2

 531  L8   55幽

 501 3e 52T  473 26 SO:

 a4S 2e 476  423 22 453  ael 22 43i

 380  2且   410

1一一冒−響冒一早檜,r冒r,, r,一騨冒一曹曹一一一一一一冒一冒一曹曹一曹一一一一冒一曹ロ冒一一r 1山山寧掌喰事寧傘寧寧家寧率*孝零**宰零ネ寧傘喉**卓幸事串事寧車率寧寧*率寧索亭率家噛寧串寧

:傘寧虚血歳事西山零寧寧寧率串串寧寧寧宰宰寧零寧率車串串寧寧率寧率寧窄噛準率零*零率亀事率掌

【山車血色山事寧寧寧寧‡零率寧寧串寧零率寧零零車傘車串取零零零噛宰零寧●率噛寧寧寧寧辱串 1掌窄寧ホ虚血廓虚血**寧窄*窒寧寧零寧寧寧聯掌卓寧ネ零ホホ窒喉寮*寧寧掌寧車傘喰 1直直自虐白血串白血寧零零*寧寧零率寧寧寧串寧*串寧亭宰寧串寧.寧寧零事寧準寧窄 工事幽幽康一白幽幽幽幽癖率率*零*零孝事率寧*零寧零率寧串串寧零寧率車寧傘 1寧歯車虚心改血寧率由串掌寧串掌導廓翠皐寧*購申幸禦象寧廓掌掌掌取寧寧 1喰藍色寧重出*山事寧零*寧寧喰率吻率寧零寧零寧零零*率率零零率零寧 1血色歯車血止*亭虚血率寧寧寧寧宰寧寧ゆ*噸串唯串寧廓串廓虞寧電

【白歯寧串白白**ホ寧幽幽寧寧零率車寧ホ寧事掌零*寧寧寧率寧 1寧歳寧虚血寧虚血血色串歯止寧寧廓寧事*零寧承串寧寧寧嘱率 1*寧申零寧寧ホ零率直寧一家率寧率寧*零‡寧寧寧寧零率 1零歳準準止血白血白血ゆ血止廓寧寧窟事零ホ亀電*掌寧 1喫喰止血電白血率由申事率直率直寧‡寧寧*寧寧串事 1率歳歳寧率直重畳虚血傘傘寧零寧寧車寧幽事事廓寧 二重寧率串寧寧*率*血止直直血止止血寧率率車零

:率直寧零零止血止血*喀血古事掌ネ享廓零事

:取虚血取止血止寧寧虚血*寧*直直重重車 工串白血古事幽幽亭寧白血率串率由白白

:止血*止血幽幽直直止血止血止血串率

:直直点出■■***寧車山自白止血噛 1立山虚血虫喰虚血止血寧亭白血*寧

【ホ率単寧窒傘血止寧*虚血寧掌寧

【ホ喰喰歯止*白山曲直串奪一白

=血止車寧串率牢一白專止血宰

:一曲止血富忠*寧率事由率寧 Σ血止寧白血ホ自己亭寧廓壌 1一色血止寧**寧止血車

:串地白幽趣宰*零*‡#

【*躍率*止血ヰ窟寧寧 1幽幽串零寧止血寧 工寧血止白油奉亭一壷 1止血寧*寧***零

【山止寧幽幽山山*

:率幽幽寧幽幽地盛 z自治*出歯酒池 エホ寧*事零亭寧 1零寧寧寧寧零零 1ホ寧串零寧黙 1串寧寧零率宰 1寧寧寧寧車奪 1串寧寧寧寧 工寧串曜寧零 1牢零零串牢 1寧寧寧寧寧 三寧零事庸

【寧寧丁寧

【章零串申 1寧掌*事 工寧取曜

sc $c

Fig.4 Examples of the output results by # SYSTEM−22.

(a) A program for solving a system of simultaneous equations by the Gauss−Jordan method. (Using

object−time formats.) .

(b) A simulation of a single type of radio−active     disintegration. (Using the function library      URNDt,.)

していることがわかる。そのうち,

x2=1930W使用しているので,

配列で30x31×2十35 実質のステートメントが

.占めるコアメモリは408Wである。 ソースプログラムの1

リに入っていないたぬ $Rモードとなっている。

URNDを含むオブジェクトテープを入力すれば,

完了した時点で$Xモードとなり,

ここ.で

リンクが 実行に移ることができ スアー トメント当り単純平均で13Wとなっている。次の例 る。このプログラムの場合の占有メモリ数は10進で374W

.は単 核種の原子核の自然崩壊をシミュレーションしたも であり, URNDも含め, 1ステーFメント当り12ステッ のである。一様乱数発生関数URNDはコア常駐ライブラ プである。

(6)

津山高専紀要 第12号.(1974)

t// 5 結

 新しい実習システム (#SYSTEM−22)を開発し,2カ

月間電子計算機実習におけるジョブを処理してみて,次の ことがわかった。

 1) FORTRANソースプログラムの処理レベルはJIS−

  5000+α,すなわち,倍精度および複素数関係の演算   ライブラリを含んでいないが,他のステートメントは   ほぼすべて処理可能である。

 2) ユーザーズエリア3KWの範囲内で,配列はいくら   でもとれる。又,処理できるソースプログラム容量は   大きい配列をとらねば3K:W/(12〜13ステップ)=230   〜250ステートメントであり,旧システム(#21)の   3倍程度となっている。

 3) 旧システムのようにユーザーズプログラムの実行で   システムが破壊されることがほとんどなくなった。

1)岸本,小坂富田:津山高専紀要3(1973)309.

2)岸本,宮地:津山高専紀要11(1973)47.

3)NEACシリーズ3200ソフトウェアマニュアル    ソフトウェア概説書(昭46)5,45

4)NEACシリーズ3200ソフトウェアマニュアル    アセンブラ説明書(昭46)22,119

5)NEACシリーズ3200ソフトウェアマニュアル    FORTRAN説明書(昭46)117,138

6)NEACシリーズ3200ソフトウェアマニュアル    システム説明書(昭46)13.

以上マニュアルは日本電気KK発行。

 小型電子計算機の処理効率は,周辺装置のスピードによ って決ってしまうのが現状であり,本校の場合もその例に もれない。我々の開発した一連の実習システムも出力機器 として1/OTYPを標準としており,処理時間の90%以上 は1/OTYPの出力待ちとなっている。

 さいわい,本校のシステムはCRTディスプレイ装置が 増設され,これを用いることにより出力のスピード化,無 騒音化を計ることが可能となった。しかし一方ではハード コピーがとれない等の問題点もあり,いかに実習システム にとり入れていくかが今後の課題である。

 おわりに,新システムの開発にあたり,御協力いただい た本校機械工学科 宮地 功氏,電子計算機室の赤堀登美 子氏に感謝致します。

参照

関連したドキュメント

第3次枚方市環境基本計画では、計画の基本目標と SDGs

以上のような背景の中で、本研究は計画に基づく戦

1-1 睡眠習慣データの基礎集計 ……… p.4-p.9 1-2 学習習慣データの基礎集計 ……… p.10-p.12 1-3 デジタル機器の活用習慣データの基礎集計………

 「時価の算定に関する会計基準」(企業会計基準第30号

基本目標4 基本計画推 進 のための区政 運営.

り、高さ3m以上の高木 1 本、高さ1m以上の中木2 本、低木 15

原子力規制委員会 設置法の一部の施 行に伴う変更(新 規制基準の施行に 伴う変更). 実用発電用原子炉 の設置,運転等に

三 配電費の部門の第一次整理原価を、基礎原価等項目