CASL2仕様書を更新
authorj8takagi <j8takagi@nifty.com>
Thu, 8 Aug 2013 22:58:06 +0000 (07:58 +0900)
committerj8takagi <j8takagi@nifty.com>
Thu, 8 Aug 2013 22:58:06 +0000 (07:58 +0900)
doc/casl2_spec.texi

index b2370f9..07b95a8 100644 (file)
@@ -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