From: j8takagi Date: Thu, 8 Aug 2013 22:58:06 +0000 (+0900) Subject: CASL2仕様書を更新 X-Git-Tag: v0.2p28~1 X-Git-Url: https://j8takagi.net/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=9f2b754c4e0b23f755545b89434d4aa4fb2d89d1;p=YACASL2.git CASL2仕様書を更新 --- diff --git a/doc/casl2_spec.texi b/doc/casl2_spec.texi index b2370f9..07b95a8 100644 --- a/doc/casl2_spec.texi +++ b/doc/casl2_spec.texi @@ -249,7 +249,7 @@ FRの値 JIS X 0201 ラテン文字・片仮名用8ビット符号で規定する文字の符号表を使用する。 @item -次に符号表の一部を示す。1文字は8ビットからなり,上位4ビットを列で,下位4ビットを行で示す。 たとえば,間隔,4,H,\のビット構成は,16進表示で,ビット構成が 21~7E(及び表では省略しているA1~DF)に対応する文字を図形文字という。 図形文字は,表示(印刷)装置で,文字として表示(印字)できる。 +次に符号表の一部を示す。1文字は8ビットからなり,上位4ビットを列で,下位4ビットを行で示す。 たとえば,間隔,4,H,@backslashchar{}のビット構成は,16進表示で,ビット構成が 21~7E(及び表では省略しているA1~DF)に対応する文字を図形文字という。 図形文字は,表示(印刷)装置で,文字として表示(印字)できる。 @multitable @columnfractions .22 .13 .13 .13 .13 .13 .13 @headitem 行\列 @tab 02 @tab 03 @tab 04 @tab 05 @tab 06 @tab 07 @@ -297,6 +297,7 @@ CASL IIは,COMET IIのためのアセンブラ言語である。 @item @tab オペランドなし @tab [ラベル]{空白}{命令コード}[{空白}[{;}[コメント]] @item 注釈行 @tab @tab [空白]{;}[コメント] @end multitable +@end enumerate @itemize @item 注 @@ -323,7 +324,6 @@ CASL IIは,COMET IIのためのアセンブラ言語である。 覚え書きなどの任意の情報であり,処理系で許す任意の文字を書くことができる。 @end table @end itemize -@end enumerate @section 命令の種類 @@ -340,7 +340,7 @@ CASL IIは,COMET IIのためのアセンブラ言語である。 @item @tab [ラベル] @tab OUT @tab 出力領域,出力文字長領域 @tab 出力装置へ文字データを出力 @item @tab [ラベル] @tab RPUSH @tab @tab GRの内容をスタックに格納 @item @tab [ラベル] @tab RPOP @tab @tab スタックの内容をGRに格納 -@item 機械語命令 @tab [ラベル] @tab (「1.2 命令」を参照) +@item 機械語命令 @tab [ラベル] @tab @tab @tab (「1.2 命令」を参照) @end multitable @section アセンブラ命令 @@ -374,10 +374,10 @@ END命令は,プログラムの終わりを定義する。 DS命令は,指定した語数の領域を確保する。 -語数は,10進定数(≧0)で指定する。語数を0とした場合,領域は確保しないが,ラベルは有効である。 +語数は,10進定数(>= 0)で指定する。語数を0とした場合,領域は確保しないが,ラベルは有効である。 @item -@multitable @columnfractions .20 .80 +@multitable @columnfractions .10 .80 @item DC @tab 定数[,定数]・・・ @end multitable @@ -387,7 +387,7 @@ DC命令は,定数で指定したデータを(連続する)語に格納す @multitable @columnfractions .20 .10 .70 @headitem 定数の種類 @tab 書き方 @tab 命令の説明 @item 10進定数 @tab n @tab nで指定した10進数値を,1語の2進数データとして格納する。 ただし,nが-32768~32767の範囲にないときは,その下位16ビットを格納する。 -@item 16進定数 @tab #h @tab hは4桁の16進数(16進数字は0~9,A~F)とする。 hで指定した16進数値を1語の2進数データとして格納する(0000≦h≦FFFF)。 +@item 16進定数 @tab #h @tab hは4桁の16進数(16進数字は0~9,A~F)とする。 hで指定した16進数値を1語の2進数データとして格納する(0000 <= h <= FFFF)。 @item 文字定数 @tab ’文字列’ @tab 文字列の文字数(>0)分の連続する領域を確保し,最初の文字は第1語の下位8ビットに, 2番目の文字は第2語の下位8ビットに,・・・と順次文字データとして格納する。 各語の上位8ビットには0のビットが入る。 @* 文字列には,間隔および任意の図形文字を書くことができる。 ただし,アポストロフィ(')は2個続けて書く。 @item アドレス定数 @tab ラベル @tab ラベルに対応するアドレスを1語の2進数データとして格納する。 @end multitable @@ -399,19 +399,19 @@ DC命令は,定数で指定したデータを(連続する)語に格納す @enumerate @item -@multitable @columnfractions .20 .80 -@item IN @tab 入力領域,入力文字長領域 +@multitable @columnfractions .075 .925 +@item IN @tab 入力領域,入力文字長領域 @end multitable IN命令は,あらかじめ割り当てた入力装置から,1レコードの文字データを読み込む。 入力領域は,256語長の作業域のラベルであり,この領域の先頭から,1文字を1語に対応させて順次入力される。レコードの区切り符号(キーボ-ド入力の復帰符号など)は,格納しない。格納の形式は,DC命令の文字定数と同じである。入力データが256文字に満たない場合, 入力領域の残りの部分は実行前のデータを保持する。入力データが256文字を超える場合, 以降の文字は無視される。 -入力文字長領域は,1語長の領域のラベルであり,入力された文字の長さ(≧0)が2進数で格納される。ファイルの終わり(end of file)を検出した場合は,-1が格納される。 +入力文字長領域は,1語長の領域のラベルであり,入力された文字の長さ(>= 0)が2進数で格納される。ファイルの終わり(end of file)を検出した場合は,-1が格納される。 IN命令を実行すると,GRの内容は保存されるが,FRの内容は不定となる。 @item -@multitable @columnfractions .20 .80 +@multitable @columnfractions .10 .90 @item OUT @tab 出力領域,出力文字長領域 @end multitable @@ -419,7 +419,7 @@ OUT命令は,あらかじめ割り当てた出力装置に,文字データ 出力領域は,出力しようとするデータが1文字1語で格納されている領域のラベルである。 格納の形式は,DC命令の文字定数と同じであるが, 上位8ビットは,OSが無視するので0でなくてもよい。 -出力文字長領域は,1語長の領域のラベルであり, 出力しようとする文字の長さ(≧0)を2進数で格納しておく。 +出力文字長領域は,1語長の領域のラベルであり, 出力しようとする文字の長さ(>= 0)を2進数で格納しておく。 OUT命令を実行すると,GRの内容は保存されるが,FRの内容は不定となる。 @@ -503,15 +503,12 @@ OSは,入出力装置や媒体による入出力手続の違いを吸収し, 命令語の構成は定義しないが,次のような構成を想定する。ここで,OPの数値は16進表示で示す。 @multitable @columnfractions .1 .1 .1 .1 .1 .1 .2 .2 -@headitem 定数の種類 @tab 書き方 @tab 命令の説明 -@item 10進定数 @tab n @tab nで指定した10進数値を,1語の2進数データとして格納する。 ただし,nが-32768~32767の範囲にないとき +@headitem 15 @tab 11 7 @tab 3 0 @tab 15 0 @tab ←ビット番号 +@headitem 第1語 @tab @tab @tab @tab 第2語 @tab 命令語長 @tab 命令語とアセンブラとの対応 @tab +@headitem OP @tab @tab r/r1 @tab x/r2 @tab adr @tab @tab 機械語命令 @tab 意味 +@headitem 主OP @tab 副OP @tab @tab @tab @tab @tab @tab @end multitable -15 11 7 3 0 15 -第1語 第2語 命令語長 -OP -r/r1 x/r2 -主OP副OP 0 0 - @@ -593,8 +590,6 @@ adr - - - -ビット番号 -命令語とアセンブラとの対応 1 2