プログラムの仕組み -アセンブラ言語によるプログラミングを通してハードウェアと親しくなる-

単位数 ナンバリングコード
2 DIF206
教員名 中島 潤
専門 情報通信
出身校等 北海学園大学大学院経営学研究科 博士課程単位取得退学 博士(経営)
現職 北海道情報大学 経営情報学部 教授
授業形態
前期印刷授業・後期印刷授業
授業範囲
教科書の内容すべて
試験範囲
授業範囲すべて
(持ち込み許可物)自筆ノート(印刷物の貼付不可)
科目の概要
 本科目の目的は、コンピュータのハードウェアがプログラムを実行する仕組みを理解することである。今日、プログラムは、さまざまな高水準のプログラミング言語で記述されているが、ハードウェアが解釈して実行できるのは、機械語で記述されたプログラムだけである。したがって、機械語のプログラムとは、どのようなものなのか、どのようなメカニズムで実行されるのかを理解する必要がある。機械語は、0と1の並びでしかないので、人間が直観的に理解するのは難しい。そこで、機械語と1対1に対応し、機械語よりも理解しやすいアセンブラ言語を通じて、プログラムの仕組みを学習する。
授業における学修の到達目標
 プログラムが動作する仕組みを理解することで、簡単な処理をCASLIIで記述できるようになるので、本科目では、教科書にしたがってCASLIIの学習を進めながら、(教科書に掲載されているレベルの)簡単な処理をCASLIIで記述できるようになることを目標とする。ただし、ある程度の規模の実用性のある複雑な処理をCASLIIで記述できるようになること、すなわち、実践的なプログラミングの能力の向上は目標としない。
講義の方針・計画
 教育用のアセンブラ言語CASLIIによるプログラミングを通して、プログラムの仕組みを学習するので、学習にあたっては、CASLIIのシミュレータソフトを使って、実際にプログラミング演習を行うことが不可欠である。

第1回:アセンブラ言語CASLIIとCOMETIIの概要
第2回:COMETIIの仕組み
第3回:プログラムの開始と終了(START, END),データの定義と領域の確保(DC, DS)
第4回:メモリと汎用レジスタ間の移動(LD, ST)
第5回:汎用レジスタ間のデータ移動(LD),汎用レジスタへの初期値設定,指標レジスタの変更(LAD)
第6回:加減算に使う命令(ADDA, SUBA, ADDL, SUBL)
第7回:ビット処理(AND, OR, XOR)
第8回:比較と分岐(CPX, JXX),シフト演算(SXY)
第9回:データの入出力(IN, OUT)
第10回:サブルーチンを使う(CALL, RET, PUSH, POP)
第11回:アドレスによるパラメタの受け渡し,サブルーチン側で使うマクロ命令(RPUSH, RPOP),
    その他の命令(SVC, NOP)
第12回:CASLIIによるプログラミング(四則演算,最大公約数を求める)
第13回:CASLIIによるプログラミング(表の中の最大値と最小値を求める,表の中の数値を並べ替える)
第14回:CASLIIによるプログラミング(表探索,うるう年の判定)
第15回:CASLIIによるプログラミング(入力文字の操作,ヒストグラムの出力,再帰的サブルーチン)
準備学習
印刷授業は、教科書や学習用プリントなどを基に自学自習で学習を進めますが、授業範囲の内容の他に、教科書の内容全体を2単位で90時間かけて学習することを目安としています。
わからない用語や内容は、参考文献等で検索することが準備学習として必要になります。
課題(試験やレポート等)に対するフィードバック方法
印刷授業は、提出されたレポートについて講評を付与して返却する。
成績評価の方法およびその基準
試験:100%
教科書
書 名:図解CASLIIによるプログラムの作り方(第2版)
著者名:澤田 晃
発行所:共立出版
ISBN:9784320120310
参考書
なし
その他
 アセンブラ言語は、C言語やJava言語など、高水準言語でのプログラミングの経験を積んだ技術者にとっても、難解な言語です。コンピュータの歴史から見ても、あまりに難解でどうしようもないので、高水準言語が開発されたのです。このことをよく認識しておいてください。本科目の内容を理解するためには、プログラミングの実習が極めて有効です。従って、CASLIIのシミュレータソフトを使って、プログラムを作成し、実行してみてください。アセンブラ言語によるプログラミングには、将棋や碁などのゲームに通じる面白さがあります。これらのゲームは、予めルールや定石をマスターしていないと楽しめませんが、それと同じように、アセンブラ言語も、基本的な規則や使い方を理解していないと、そのパズル的な面白さを堪能することができません。日頃から物事をきちんと論理的に考える習慣がついていないと、アセンブラ言語の学習は、かなり辛いものになると予想されます。
試験期間
シラバス検索画面トップページ(https://syllabus-tsushin.do-johodai.ac.jp/)下部の「2022科目試験時間割」を参照
学習プリント
あり
教職科目
情報5の1(選択)
関連受講科目
 「情報リテラシー」、「コンピュータサイエンス入門」、「コンピュータアーキテクチャ」、「コンピュータの構成」、「コンピュータの利用」
 特に、「情報リテラシー」と「コンピュータアーキテクチャ」を、既に修得していることを前提条件とする(本条件を満たさなくても履修登録は可能であるが、修得は困難であると予想される)。
担当教員の実務経験
実務経験なし
レポート課題
過年度のレポート課題は表示できません。