プログラミング言語Ⅱ

科目基礎情報

学校 都城工業高等専門学校 開講年度 令和03年度 (2021年度)
授業科目 プログラミング言語Ⅱ
科目番号 0047 科目区分 専門 / 必修
授業形態 講義 単位の種別と単位数 履修単位: 2
開設学科 電気情報工学科 対象学年 3
開設期 通年 週時間数 2
教科書/教材 「CASLⅡとプログラミング入門」 鑰山 徹 著 (大学教育出版)978-4-88730-903-6  「プログラミング入門 CASL2」 浅井 宗海、岸田 徹夫、尾川 順子 著 (実教出版)978-4-407-30539-5
担当教員 小野 哲也

到達目標

1) 2進数、16進数について理解している
2) 簡単な繰り返し処理のプログラムを書ける
3) 簡単な配列処理のプログラムを書ける
4) 簡単なサブルーチンを使ったプログラムを書ける

ルーブリック

理想的な到達レベルの目安       A標準的な到達レベルの目安       B未到達レベルの目安     C(学生記入欄) 到達したレベルに〇をすること。
評価項目12進数、16進数と10進数の相互の変換ができ、2進数については2の補数ついても理解している。n進数について説明できる2進数、16進数と10進数の相互の変換ができ、2進数については2の補数ついても理解している2進数、16進数と10進数の相互の変換ができるが2の補数ついても理解していない  A ・ B ・ C
評価項目2多重ループ構造のプログラムが書ける単純なループ構造のプログラムが書ける単純なループ構造のプログラムが書けない  A ・ B ・ C
評価項目3多重ループ構造による配列処理のプログラムが書ける単純なループ構造による配列処理のプログラムが書ける単純なループ構造による配列処理のプログラムが書けない  A ・ B ・ C
評価項目4簡単なループ構造とサブルーチンを使ったプログラムが書ける簡単なサブルーチンを使ったプログラムを書ける簡単なサブルーチンを使ったプログラムを書けない  A ・ B ・ C

学科の到達目標項目との関係

学習・教育到達度目標 1-2 説明 閉じる
学習・教育到達度目標 2-2 説明 閉じる

教育方法等

概要:
アセンブリ言語はCPUと密接な関係を持っており、命令がCPUの命令とほぼ1対1で対応する。よって、CPUごとに命令等がことなるがコンパクトかつ高速なプログラムを組むことが可能であり、計算機を理解するのにも役立つ。本講義では、国家試験である情報処理技術者試験で使われるCASLⅡを使ってアセンブリ言語がどのようなもので、どのようにプログラミングするかを理解する。
授業の進め方・方法:
プログラミング言語は、文法といった覚えないといけないことがあるとともに、それらを使って目的の処理を実現するアルゴリズムを考えないといけないことから、授業計画を確認して予習をし、授業の後には復習をすること。また、プログラムは理解したから書けるというものではなく、自分で作りたいものを作るということを繰り返しながら上達するものであるから、授業以外でも各自でいろいろなプログラム作成してみること。
注意点:
本講義では、講義、演習共に演習室で行うという形式をとる。

ポートフォリオ

(学生記入欄)
【理解の度合】理解の度合について記入してください。
      (記入例)ファラデーの法則、交流の発生についてはほぼ理解できたが、渦電流についてはあまり理解できなかった。
 ・前期中間試験まで: 
                                      
 ・前期末試験まで :
                                       
 ・後期中間試験まで:
                                       
 ・学年末試験まで :

                                       
【試験の結果】定期試験の点数を記入し、試験全体の総評をしてください。
       (記入例)ファラデーの法則に関する基礎問題はできたが、応用問題が解けず、理解不足だった。
 ・前期中間試験 点数:      総評:                                       

 ・前期末試験  点数:      総評:                                       

 ・後期中間試験 点数:      総評:                                       

 ・学年末試験  点数:      総評:                                       


【総合到達度】「到達目標」どおりに達成することができたかどうか、記入してください。
 ・総合評価の点数:      総評:                                       


-------------------------------------------------------------------------------------------------------------------
(教員記入欄)
【授業計画の説明】実施状況を記入してください。
  
  
【授業の実施状況】実施状況を記入してください。
  ・前期中間試験まで:  
                                     
  ・前期末試験まで :                                       

  ・後期中間試験まで:                                       

  ・学年末試験まで : 
        
                                
【評価の実施状況】総合評価を出した後に記入してください。
 
    

授業の属性・履修上の区分

アクティブラーニング
ICT 利用
遠隔授業対応
実務経験のある教員による授業

授業計画

授業内容 週ごとの到達目標
前期
1stQ
1週 授業計画の説明、数の表現 授業計画・達成目標・成績の評価方法等の説明、数の表現および数系の変換
2週 データ表現、論理演算 データの表現方法、論理演算
3週 シフト、プログラミングの基礎知識 算術シフト、論理シフト、スタック、プログラムの構成
4週 COMETⅡの概要 COMETⅡのアーキテクチャの概要
5週 機械語命令 CASLⅡの機械語命令、アセンブラ命令とマクロ命令
6週 順次構造1 繰り返しや条件分岐がない簡単なプログラム
7週 順次構造2 繰り返しや条件分岐がない簡単なプログラム
8週 判断分岐1前期中間試験 無条件ジャンプ
2ndQ
9週 前期中間試験
10週 試験答案の返却及び解説、判断分岐2 試験問題の解説及びポートフォリオの記入、条件分岐
11週 繰り返し処理 繰り返し処理の基本
12週 回数の決まっている繰り返し1 繰り返し回数が決まってる簡単なプログラム
13週 回数の決まっている繰り返し2 繰り返し回数が決まってる簡単なプログラム
14週 回数の決まっていない繰り返し1 繰り返し回数が決まってない簡単なプログラム
15週 回数の決まっていない繰り返し2 繰り返し回数が決まってない簡単なプログラム
16週 前期末試験
(17週目は試験答案の返却・解説及びポートフォリオの記入)
後期
3rdQ
1週 試験答案の返却及び解説、配列とインデックス修飾 試験問題の解説及びポートフォリオの記入、データのインデックス参照
2週 配列処理1 配列処理の簡単なプログラム
3週 配列処理2 配列処理の簡単なプログラム
4週 入出力処理1 入出力がある簡単なプログラム
5週 入出力処理2 入出力がある簡単なプログラム
6週 副プログラムの基礎 サブルーチンの基礎
7週 副プログラムの例 サブルーチンがある簡単なプログラム
8週 後期中間試験
4thQ
9週 試験答案の返却及び解説、再帰的定義 試験問題の解説及びポートフォリオの記入、再帰処理
10週 データ検索1 データ検索プログラム
11週 データ検索2 データ検索プログラム
12週 並べ替え1 並び替えプログラム
13週 並べ替え2 並び替えプログラム
14週 文字処理1 文字処理プログラム
15週 文字処理2 文字処理プログラム
16週 学年末試験
(17週目は試験答案の返却・解説及びポートフォリオの記入)

モデルコアカリキュラムの学習内容と到達目標

分類分野学習内容学習内容の到達目標到達レベル授業週
専門的能力分野別の専門工学情報系分野プログラミング代入や演算子の概念を理解し、式を記述できる。3
プロシージャ(または、関数、サブルーチンなど)の概念を理解し、これらを含むプログラムを記述できる。3
変数の概念を説明できる。3
データ型の概念を説明できる。3
制御構造の概念を理解し、条件分岐を記述できる。4前10
制御構造の概念を理解し、反復処理を記述できる。4前11,前12,前13,前14,前15
与えられた問題に対して、それを解決するためのソースプログラムを記述できる。3
ソフトウェア生成に必要なツールを使い、ソースプログラムをロードモジュールに変換して実行できる。3
与えられたソースプログラムを解析し、プログラムの動作を予測することができる。3
要求仕様に従って、標準的な手法により実行効率を考慮したプログラムを設計できる。3
要求仕様に従って、いずれかの手法により動作するプログラムを設計することができる。3
要求仕様に従って、いずれかの手法により動作するプログラムを実装することができる。3
要求仕様に従って、標準的な手法により実行効率を考慮したプログラムを実装できる。3
ソフトウェアアルゴリズムの概念を説明できる。3
与えられたアルゴリズムが問題を解決していく過程を説明できる。3
同一の問題に対し、それを解決できる複数のアルゴリズムが存在しうることを説明できる。3
整列、探索など、基本的なアルゴリズムについて説明できる。3
コンピュータ内部でデータを表現する方法(データ構造)にはバリエーションがあることを説明できる。2
同一の問題に対し、選択したデータ構造によってアルゴリズムが変化しうることを説明できる。2
リスト構造、スタック、キュー、木構造などの基本的なデータ構造の概念と操作を説明できる。2
計算機工学整数を2進数、10進数、16進数で表現できる。4前1
小数を2進数、10進数、16進数で表現できる。4前1

評価割合

試験発表相互評価態度ポートフォリオその他合計
総合評価割合10000000100
基礎的能力500000050
専門的能力500000050
分野横断的能力0000000