Mae向きなブログ

Mae向きな日記のブログ版。ようやくこちらに移行してきました。

平成21年度秋季基本情報午後問12

平成21年度秋季 基本情報技術者試験(FE)の午後問題12(アセンブラ言語CASL)は、

  • ビット列Aの特定のビット位置(p+1)からのqビットをビット列Bのqビットに置き換える副プログラムREPLACE

に関する問題でした。

ポイント

  • 空欄aに関する「AND GR2,=#000F」が55を16で割った余りであること
  • 12〜17行目の間にシフト命令が何個も出てきますが、12行目のSRAでは、符号ビットが1の場合、シフトによってできたスペースには1が入ること

に注意をする必要があると思います。

プログラム例

設問1の値でシミュレーションできるようにプログラムを作成してみました。ビット列Aは6語とも#FFFFが格納されています。

実行結果

作成したプログラムを「CASLシミュレータ(CASL II 対応)」で実行してみました。#000B番地からのビット列Aのうち第4,5語目がビット列Bによって置換えられています。

f:id:rahaema:20181210183105p:plain