アセンブリプログラミング

年度 2003
科目名 アセンブリプログラミング
教員名 大槻 善樹
授業概要 情報を学ぶ大学の学部ではコンピュータ関連の科目が種々あるが、プログラミングの科目としての基礎であるアセンブリ言語に関する科目が無い大学はめずらしい。 高級言語だけでは目的を達成できない場合が必ずあるからであり、アセンブリ言語を理解することを通じて、逆にコンピュータの理解を深めようとする場合もあるからだ。 また、情報処理技術者の国家試験においてもアセンブリ言語が採用されている。 ただし、現実のアセンブリ言語はコンピュータ毎に異なるため、情報処理技術者試験では、COMET という仮想コンピュータを想定し、そのアセンブリ言語であるCASL-IIを用いている。 本講義は、このCASL-IIを学習することによってアセンブリプログラミングを理解することが目的である。 実際、CASL-IIを理解できれば現実の様々なコンピュータにおけるアセンブリプログラミングも理解が容易になるからである。 授業の進め方は、セメスター制となって時間が半減したので、スピードアップを図りたいが、これまでの授業経験から、いきなり命令を解説するということはしない。 学生さんは意外にコンピュータのプログラミングにおける考え方がわかっていないらしいことが近年の経験でわかったので、最初はCASL-IIの命令にふれずに、初歩の考え方から講義を開始する予定である。 ただし、総授業時間が少ないため、必要時は課題を提出してもらう。 なお最初は必ずしも連動しないが、原則として講義を行う時限の次の時限は、実際のコンピュータを用いて演習を行うことを主目的とする。
授業計画 (講義時限の基本計画)
プログラミングとは仕事の指示である事の理解
自分が仕事のやり方をわかっていないと仕事の指示はできないという事の理解
CASL命令の理解(疑似命令、マクロ命令、ロード、ストア、ビット演算、シフト、比較、分岐、反復、スタック操作、サブルーチン、データの入出力の各命令)
典型的応用プログラミング手法の学習
(演習時限の基本計画)(初期は講義も行う。)
実際のコンピュータの取扱い(Windowsの使用法)
CASLシミュレータの使用方法
講義の時限で各自が作成したプログラムの入力と動作確認
各自が自主決定したテーマの作品を作成
評価方法 評価は、授業中に行う随時の小テスト、期末のテスト、および演習時限に製作する自主テーマ作品の評価とによって行う。
教科書  専門書籍も扱う書店や図書館に行けば多くの参考書があるが、どのようなタイプの本が最適かについては個人によって異なるので、特別に推奨はしない。
参考書  最適とは言えないが安価なので、教科書は下記の本を使用する。

 CASL研究会編、入門CASL、コロナ社、1500円+税、ISBN4-339-02271-3 C3055

メッセージ 参考書は、どのようなタイプの本が最適かについては個人の好みなどによっても異なるので、特別に推奨はしない。(教科書を自分の好む本にしたい場合は事前に私に相談して下さい。) CASL-IIを学習し、自分で考え、作成したものが動いた時に学生さんの目が輝く。 その感動を味わって欲しい。