レポート課題:アセンブラ言語による数値判定プログラムの実装・テスト

課題

アセンブラ言語(CASL2)を用いて,ユーザーが指定したある数nが,0, 1, 素数, 16の倍数, 8の倍数, 4の倍数, 偶数, 奇数のいずれかに判定するプログラムを実装し,テストしなさい 実装するプログラムは以下の要件を満たすように作成すること.

プログラムの要件

ヒント:判定の優先度は0 or 1 > 素数 > 16の倍数 > 8の倍数> 4の倍数> 奇数 or 偶数の順

考察課題

  1. フラグレジスタの3種類のフラグ(OF, SF, ZF)がどのような場合に変化するか,各フラグに関連する命令を例に挙げ,詳細に説明せよ
  2. マスク処理について,作成した数値判定プログラムを例に説明せよ.
  3. 16進数#FFFFを算術右nビットシフトしたときと,論理右nビットシフトしたときでは,結果が異なる.その理由を説明し,#FFFFの算術および論理右ビットシフト結果を示せ.なお,n=1~10とする

オプション課題(どちらか一方でも可)

スケジュール

注意点