Let's try programming

基本情報技術者試験(CASLⅡ)

  • HOME »
  • 基本情報技術者試験(CASLⅡ)

COMETⅡの仕様

レジスタの種類

FR(フラグレジスタ)[3bit]
演算結果の情報を設定
FRには三種類のフラグが存在する。
OF・・・オーバーフローフラグ
SF・・・サインフラグ(正/負)
ZF・・・ゼロフラグ
PR(プログラムレジスタ)[16bit]
次に実行する命令語の先頭アドレスを保持
 
SP(スタップポインタ)[16bit]
スタック最上段のアドレスを保持する。
 
GR[GR0~GR7](汎用レジスタ)[各16bit]
GR0~GR7の8個あり、各種演算に使用
GR1~GR7は指標レジスタとしても用いる
 

CASLⅡ命令一覧

EA・・・実効アドレスのこと

 命令 命令コード 説明 FRの設定
 アセンブラ START 開始  
  END 終了  
       
 
DC
(デファイン・コンスタント)
文字の定義※1  
 
DS
(デファイン・ストレージ)
領域の確保。値は不定  
 マクロ IN

文字列を入力

 不定
  OUT 文字列を出力  不定
  RPUSH GRの内容をスタックに格納する  
  RPOP  スタックの内容をGRに格納する  
       
 機械語 LD(ロード) 内容を汎用レジスタに書き込む 設定する
  ST (ストア) 内容を書き込み 設定しない
  LAD(ロードアドレス)
番地を汎用レジスタに書き込む
(内容ではない) 
設定しない
  ADDA(アッド算術) 算術加算命令 設定する
  SUBA(サブ算術) 算術減算命令 設定する
  ADDL(アッド論理) 論理加算命令 論理値で設定
  SUBL(サブ論理) 論理減算命令 論理値で設定
       
条件分岐 JUMP(ジャンプ) PRにアドレスを格納 設定しない
  JPL(プラス) FRが正なら 設定しない
  JMI(マイナス) FRが負なら 設定しない
  JZE(ゼロ) FRが零なら 設定しない
  JNZ(ノンゼロ) FRが零でないなら 設定しない
  JOV(オーバーフロー) FRがオーバーフローなら 設定しない
       
比較 CPA(コンペア・算術) 算術10進数で比較を行う 算術値で比較設定
  CPL(コンペア・論理) 論理10進数で比較を行う 論理値で比較設定
       
論理演算 OR(オア) 論理和 設定する
  AND(アンド) 論理積 設定する
  XOR(エックスオア) 排他的論理和 設定する
       
論理シフト
SLA
(シフトレフト算術)
左にシフト移動
(符号以外をシフト移動)
設定する
 
SRA
(シフトライト算術)
右にシフト移動
(空ビットには符号が入る)
設定する
 
SLL
(シフトレフト論理)
左にシフト移動(符号無視) 設定する
 
SRL
(シフトライト論理)
右にシフト移動(符号無視) 設定する
       
スタック
操作
PUSH(プッシュ) (SP-1)SPに実行アドレス格納  
  POP(ポップ) SPの実行アドレスを取り出す(SP+1)  
  CALL(コール) (SP-1)PRのアドレスをSPに格納  
  RET(リターン) SPの内容を取り出しPRに設定(SP+1)  
       
その他 SVC(エスブイシー) OSが用意している機能を使用 不定
  NOP(エヌオーピー)
何もしない
(他装置との時間調整などに使用)
設定しない
注釈 □;[コメント] □は空白  
 
 
 

PAGETOP
Copyright © Goran All Rights Reserved.
Powered by WordPress & BizVektor Theme by Vektor,Inc. technology.