仕様改訂による変更点
出典: フリー百科事典『ウィキペディア(Wikipedia)』 (2021/08/10 16:51 UTC 版)
2001年のCOMET II、CASL IIの改訂によってCASL COMETに比べていくつかの変更が行われている。具体的には以下の通り、 ビットの数え方が変更されている。COMETでは最上位ビットを0番、最下位ビットを15番としていたが、COMET IIでは最上位ビットが15番、最下位ビットが0番である。 GRの数がGR0からGR7までに拡張されている。 スタックポインタ専用のレジスタ SPが追加されている。これにより、スタックポインタとGR4の関係が無くなった。 FRが3ビットに変更される。最上位ビットにあたる部分が算術命令等で算術オーバーフローが発生した場合は1、それ以外が0が格納されるフラグとして追加される。 ADD、SUBがそれぞれADDA、SUBAという名称に変更される。 EORがXORという名称に変更される。 JMPがJUMPという名称に変更される。 レジスタ同士の演算が可能になった。具体的には "命令 GR1, GR2"という書き方で有効アドレスではなく GR2の内容から演算を行う。この書き方が採用された命令は以下の通り。LD ADDA(ADD) SUBA(SUB) AND OR XOR(EOR) CPA CPL LD 命令の実行後 FRが設定されるようになる。 COMETのLEAとJPZ命令、CASLのEXIT命令が廃止される。 COMET II、CASL II共に追加された命令がある。 COMET IIに追加された命令は以下の通り LAD GR, adr[, XR] - Load ADress 廃止された LEA 命令と同様の機能を持つ、ただし実行後に FRレジスタを更新しない点が異なる。 ADDL GR, adr[, XR]、ADDL GR1, GR2 - ADD Logic ADDA と同様だがデータを算術データではなく論理データ(符号無し整数)として扱う。 SUBL GR, adr[, XR]、SUBL GR1, GR2 - SUBtract Logic SUBA と同様だがデータを算術データではなく論理データ(符号無し整数)として扱う。 JPL adr[, XR] - Jump on PLus FRの値が *00 の場合、有効アドレスに分岐する。 JOV adr[, XR] - Jump on OVerflow FRの値が 1** の場合、有効アドレスに分岐する。 SVC adr[, XR] - SuperVisor Call 実行アドレスを引数としてシステムコールを行う。実行後のGRとFRは不定となる。 NOP - No OPeration 何もしない命令、NOPも参照のこと。 CASL IIに追加された命令は以下の通り RPUSH GR1からGR7の順で内容をスタックに順次格納する。 RPOP スタックから順次値を取り出し、GR7からGR1の順に格納する。
※この「仕様改訂による変更点」の解説は、「CASL」の解説の一部です。
「仕様改訂による変更点」を含む「CASL」の記事については、「CASL」の概要を参照ください。
- 仕様改訂による変更点のページへのリンク