到達目標
①仮想コンピュータCOMETIIの構造を説明することができる。
②CASLII言語を用いたプログラムを作成することができる。
③C言語により基本的なデータ構造を扱うプログラムを作成することができる。
④C言語により基本的な数値計算を扱うプログラムを作成することができる。
ルーブリック
| 理想的な到達レベルの目安 | 標準的な到達レベルの目安 | 未到達レベルの目安 |
| 仮想コンピュータCOMETIIの構造を説明することができて,CASLII言語を用いたプログラムを作成することができる。 | 仮想コンピュータCOMETIIの構造を説明することができて,CASLII言語を用いた簡単なプログラムを作成することができる。 | COMETIIの構造を説明することができない。CASLII言語を用いたプログラムを作成することができない。 |
| C言語により基本的なデータ構造を扱うプログラムを作成することができる。 | C言語により基本的なデータ構造を扱う簡単なプログラムを作成することができる。 | C言語により基本的なデータ構造を扱うプログラムを作成することができない。 |
| C言語により基本的な数値計算を扱うプログラムを作成することができる。 | C言語により基本的な数値計算を扱う簡単なプログラムを作成することができる。 | C言語により基本的な数値計算を扱うプログラムを作成することができない。 |
学科の到達目標項目との関係
教育方法等
概要:
前期は,コンピュータのハードウェア機構の制御アルゴリズムを理解するために,情報処理技術者試験で採用されているCASLII言語によるプログラミング技法を学ぶ。
後期は,高級水準言語によるデータ構造と数値計算アルゴリズムについて理解するために,C言語によるプログラミング技法を学ぶ。
授業の進め方・方法:
教科書を用いて説明した後,関連する演習問題のプログラムを作ることにより理解を深める。
注意点:
提示された演習問題のプログラムを授業時間内に完成できない場合は,次回までに確実に完成しておくこと。
授業計画
|
|
週 |
授業内容 |
週ごとの到達目標 |
前期 |
1stQ |
1週 |
授業のガイダンス,COMETIIの構成 |
COMETIIの構成を理解する。
|
2週 |
記憶装置の構造、レジスタの種類、アドレス修飾 |
記憶装置の構造、レジスタの種類、アドレス修飾について理解する。
|
3週 |
機械語命令の取り出し手順と実行手順 |
機械語命令の取り出し手順と実行手順を理解する。
|
4週 |
アセンブラ命令とマクロ命令に関するCASLIIプログラミング演習 |
アセンブラ命令とマクロ命令を扱うCASLIIプログラムが作成できる。
|
5週 |
転送命令に関するCASLIIプログラミング演習 |
転送命令を扱うCASLIIプログラムが作成できる。
|
6週 |
加減算に関するCASLIIプログラミング演習 |
加減算を扱うCASLIIプログラムが作成できる。
|
7週 |
論理演算に関するCASLIIプログラミング演習 |
論理演算を扱うCASLIIプログラムが作成できる。
|
8週 |
前期中間試験 |
|
2ndQ |
9週 |
シフト演算に関するCASLIIプログラミング演習 |
シフト演算を扱うCASLIIプログラムが作成できる。
|
10週 |
比較演算と分岐命令に関するCASLIIプログラミング演習 |
比較演算と分岐命令を扱うCASLIIプログラムが作成できる。
|
11週 |
比較演算と分岐命令に関するCASLIIプログラミング演習 |
比較演算と分岐命令を扱うCASLIIプログラムが作成できる。
|
12週 |
比較演算と分岐命令に関するCASLIIプログラミング演習 |
比較演算と分岐命令を扱うCASLIIプログラムが作成できる。
|
13週 |
サブルーチンに関するCASLIIプログラミング演習 |
サブルーチンを扱うCASLIIプログラムが作成できる。
|
14週 |
CASLII応用プログラミング演習 |
論理演算,シフト演算,比較演算,分岐命令などを用いたCASLIIプログラムが作成できる。
|
15週 |
CASLII応用プログラミング演習 |
論理演算,シフト演算,比較演算,分岐命令などを用いたCASLIIプログラムが作成できる。
|
16週 |
|
|
後期 |
3rdQ |
1週 |
スタックに関するCプログラミング演習 |
スタックを扱うCプログラムが作成できる。
|
2週 |
キューに関するCプログラミング演習 |
キューを扱うCプログラムが作成できる。
|
3週 |
線形探索に関するCプログラミング演習 |
線形探索を扱うCプログラムが作成できる。
|
4週 |
二分探索に関するCプログラミング演習 |
二分探索を扱うCプログラムが作成できる。
|
5週 |
リスト構造に関するCプログラミング演習 |
リスト構造を扱うCプログラムが作成できる。
|
6週 |
木構造に関するCプログラミング演習 |
木構造を扱うCプログラムが作成できる。
|
7週 |
計算誤差 |
計算誤差について理解する。
|
8週 |
後期中間試験 |
|
4thQ |
9週 |
ニュートン法に関するCプログラミング演習 |
ニュートン法に関するCプログラムが作成できる。
|
10週 |
ニュートン法に関するCプログラミング演習 |
ニュートン法に関するCプログラムが作成できる。
|
11週 |
シンプソン則に関するCプログラミング演習 |
シンプソン則に関するCプログラムが作成できる。
|
12週 |
シンプソン則に関するCプログラミング演習 |
シンプソン則に関するCプログラムが作成できる。
|
13週 |
ルンゲクッタ法に関するCプログラミング演習 |
ルンゲクッタ法に関するCプログラムが作成できる。
|
14週 |
ラグランジェ補間法に関するCプログラミング演習 |
ラグランジェ補間法に関するCプログラムが作成できる。
|
15週 |
行列の積に関するCプログラミング演習 |
行列の積に関するCプログラムが作成できる。
|
16週 |
|
|
モデルコアカリキュラムの学習内容と到達目標
分類 | 分野 | 学習内容 | 学習内容の到達目標 | 到達レベル | 授業週 |
専門的能力 | 分野別の専門工学 | 情報系分野 | ソフトウェア | アルゴリズムの概念を説明できる。 | 2 | |
与えられたアルゴリズムが問題を解決していく過程を説明できる。 | 2 | |
同一の問題に対し、それを解決できる複数のアルゴリズムが存在しうることを説明できる。 | 2 | |
整列、探索など、基本的なアルゴリズムについて説明できる。 | 2 | |
時間計算量によってアルゴリズムを比較・評価できることを説明できる。 | 2 | |
領域計算量などによってアルゴリズムを比較・評価できることを説明できる。 | 2 | |
コンピュータ内部でデータを表現する方法(データ構造)にはバリエーションがあることを説明できる。 | 2 | |
同一の問題に対し、選択したデータ構造によってアルゴリズムが変化しうることを説明できる。 | 2 | |
リスト構造、スタック、キュー、木構造などの基本的なデータ構造の概念と操作を説明できる。 | 2 | |
リスト構造、スタック、キュー、木構造などの基本的なデータ構造を実装することができる。 | 2 | |
評価割合
| 試験 | 発表 | 相互評価 | 態度 | ポートフォリオ | 課題 | 合計 |
総合評価割合 | 70 | 0 | 0 | 5 | 0 | 25 | 100 |
基礎的能力 | 0 | 0 | 0 | 5 | 0 | 0 | 5 |
専門的能力 | 70 | 0 | 0 | 0 | 0 | 25 | 95 |
分野横断的能力 | 0 | 0 | 0 | 0 | 0 | 0 | 0 |