シラバス情報

科目授業名称(和文) Name of the subject/class (in Japanese)
コンピュテーション技術
科目授業名称(英文) Name of the subject/class (in English)
Fundamentals of Computation
授業コード Class code
9989G13
科目番号 Course number
L1IDSEMn23

教員名
佐藤 喜一郎
Instructor
Ki-ichiro Sato

開講年度学期
2026年度後期
Year
2026年度
Semester
②Second semester
曜日時限
月曜5限
Class hours
Monday 5th Period

開講学科・専攻 Department
経営学部 国際デザイン経営学科(一般教養科目)

A course of liberal arts, the Department of International Design Management, School of Management
単位数 Course credit
2.0単位
授業の方法 Teaching method
講義

Lecture
外国語のみの科目(使用言語) Course in only foreign languages (languages)
-
授業の主な実施形態 Main class format
① [対面]対面授業/ [On-site] On-site class

概要 Description
コンピュータの中で行われる計算の実際を学ぶ。
CPUで行われる計算の簡単なモデルを学んだあと、COMET IIという仮想マシンとその処理を記述するための言語CASL IIを使えるシミュレーターを使って、CPUレベルでの計算を体験し、コンピュータ内での計算の実際を知る。計算に使われる・計算結果を表すデータの入出力のためのデバイスとのやり取りのため、データを交換する単位としてのファイルシステムの存在の重要性を知る。一般に計算を行う対象はCPUで直接扱えるものではない。人間の思考レベルに近いプログラミング専用の言語を使って、データの構造化とそれに対応したアルゴリズムの記述を行う必要があることを学ぶ。
目的 Objectives
国際デザイン経営学科のカリキュラム・ポリシーの4 に規定される「⾃然・⼈間・社会を幅広く俯瞰できる能⼒、論理的・批判的思考⼒、コミュニケーション能⼒、国際性、⾃⼰管理能⼒を養う」ための科⽬の⼀つである。

現代の高度な情報通信技術を支えているのがコンピュータである。個々にみると専用のコンピュータも活躍していないわけではないが、書き換え可能なソフトウェアを使用するデジタルコンピュータがその主役となっている。デジタルコンピューターの原理、フォンノイマン型コンピュータの特性は、次世代の量子コンピュータにも引き継がれることであるから、この基本的な動作を学び、その無限に近い応用面の広がりを理解することを目的とする。
また、特定メーカーのCPUの動作を学ぶことよりも、デジタルコンピュータの一般的な動作を学ぶものであるから、演習では情報処理技術者試験に採用されていたCOMET IIの環境でのアセンブリ言語CASL IIでのプログラミングの演習を行い、プログラミングでの分析・デザイン・仕様策定・コーディングの多岐にわたる活動を通じ、高級言語を用いることへの理解を助け、必修科目「プログラミング基礎1」、「プログラミング基礎2」での高級言語Pythonでのプログラミングの基礎を支援することを目的とする。
到達目標 Outcomes
・2進数や2進数を使った符号化で、データだけではなく命令など関係するすべてのものが表される世界があることを認識する。(*)
・2進数の世界で、論理演算(AND, OR, NOT, XOR, NAND)と算術演算の意味を理解するとともに、その違いを理解する
・そのうえで、メモリとCPUという構成でデジタルコンピュータの最小単位が構成されることを理解し、メモリー上にデータだけではなく命令が記憶されるシステムであることを理解する。(命令を替えれば、別の動作を行うことができるフォンノイマン型コンピュータのことである)
・メモリ上のオブジェクトはメモリアドレスで管理されることを理解する。これも2進数で表される。
・計算を行うということはメモリ・CPUの2進数(複数)で表される状態が、メモリ上の命令により最終的に別の状態へ変化するということであることを理解する。(オートマトン・有限状態マシンという視点)
・外部からの入力や外部への出力は別に考える必要があることを理解する。(I/Oやインターフェイス)
・CPUには命令がメモリ上のどこにあるかを記憶するプログラムカウンターが必要で、データがどこになるかのメモリアドレスを指定するインデックスレジスタが、計算以外に必要である。CPUの計算後の状態もレジスタで2進数で表す必要がある。つまり、(*)の事項を再認識する。
・プログラミングをCPU側で行うのは大変な事前準備が必要であることを理解し、Pythonなどの高級言語によるプログラミングがいかに効率的か理解する。
・仮想CPU環境であるCOMET IIを用いて、デジタルコンピュータの動作を完全に理解する。(ただし、機械語の代わりにアセンブリ言語CASL IIを使い、情報処理技術者試験などの導入を容易にする。)
卒業認定・学位授与の方針との関係(学部科目のみ)
リンク先の [評価項目と科目の対応一覧]から確認できます(学部対象)。
履修登録の際に参照ください。
​You can check this from “Correspondence table between grading items and subjects” by following the link(for departments).
https://www.tus.ac.jp/fd/ict_tusrubric/​​​
履修上の注意 Course notes prerequisites
演習においてBYOD機を使用するので、学科の推奨するBYOD機を準備の上、授業に臨むこと。

Chrome OSやMacOSのサポートは行えないので、COMET II/CASL IIのシミュレーターは各自で用意する必要がある。

演習の都合上、定員を25名に設定する。
アクティブ・ラーニング科目 Teaching type(Active Learning)
課題に対する作文 Essay/小テストの実施 Quiz type test/PBL (課題解決型学習) Problem-based learning/実習 Practical learning
-

準備学習・復習 Preparation and review
大学の授業は、時間割上の授業時間に加え、その2倍にあたる授業時間外の学習(予習・復習)をもって構成される。
本授業は2単位なので、以下のように、予習・準備学習と復習であわせて4時間の学習を行う必要がある。

【準備学習】
教科書指定は、infoCASLの演習のためのものであり、プログラミング編では必ず必要な要素を予習しておく。一般的なデジタルコンピュータの仕組みについては、「コミュニケーション技術」で指定の教科書の第2、3、4章を参照する。

予習にあたっては、LETUS(https://letus.ed.tus.ac.jp/course/view.php?id=180743)に教材を用意するので、必ずアクセスすること。予習課題としてLETUS(https://letus.ed.tus.ac.jp/course/view.php?id=180743)で小テストなどが課される可能性があるので、それらについても準備学習として行っておくこと。

【復習】
授業は2進数ベースの計算の演習中心となる。手計算で2進数を処理できるように、何度も復習して確実なものにする必要がある。ただし、表記が16進数になるので、2進10進16進変換になれる必要がある。そのために課題が課されるが、結果ではなく、得られる過程が重要であるから、第三者に説明できるレベルになるまで復習を行う。

後半のCOMET IIでのプログラミングについては、実行環境を確実に整備するのに時間をかけてほしい。授業時間は動作確認・質問などにあてるが、試行錯誤には時間が必要なので、授業が終わってからも引き続き復習を行い、データの保存や再試行での確認など時間を割いて欲しい。
成績評価方法 Performance grading policy
課題提出60%
到達度評価試験40%
で評価を行う。

授業回が進むごとに行われる課題を軽視せずに取り組むこと。
学修成果の評価 Evaluation of academic achievement
・S:到達目標を十分に達成し、極めて優秀な成果を収めている
・A:到達目標を十分に達成している
・B:到達目標を達成している
・C:到達目標を最低限達成している
・D:到達目標を達成していない
・-:学修成果の評価を判断する要件を欠格している

・S:Achieved outcomes, excellent result
・A:Achieved outcomes, good result
・B:Achieved outcomes
・C:Minimally achieved outcomes
・D:Did not achieve outcomes
・-:Failed to meet even the minimal requirements for evaluation

教科書 Textbooks/Readings
教科書の使用有無(有=Y , 無=N) Textbook used(Y for yes, N for no)
Y
書誌情報 Bibliographic information
アセンブラ言語CASL Ⅱ、東田幸樹・山本芳人・広瀬啓雄共著、工学図書株式会社、ISBN978-4-7692-0416-9、2000円
MyKiTSのURL(教科書販売サイト) URL for MyKiTS(textbook sales site)
教科書および一部の参考書は、MyKiTS (教科書販売サイト) から検索・購入可能です。
​https://gomykits.kinokuniya.co.jp/tokyorika/​​​

It is possible to search for and purchase textbooks and certain reference materials at MyKiTS (online textbook store).
​​https://gomykits.kinokuniya.co.jp/tokyorika/

参考書・その他資料 Reference and other materials
1. アセンブリ言語の基礎-CASL IIによるプログラミング--、山崎一生著、共立出版、ISBN4-320-12095-7、2,800円
2. 情報処理技術者試験 アセンブラ言語 CASLⅡ演習問題、山本芳人 著、工学図書株式会社、ISBN 4-7692-0424-8, 本体1,800円+税、
3. プログラムはなぜ動くのか - 知っておきたいプログラミングの基礎知識 -第2版、矢沢久雄著/日経ソフトウェア監修、日経BP社、ISBN978-4-8222-8315-5、2400円
4. コンピュータはなぜ動くのか - 知っておきたいハードウェア&ソフトウェアの基礎知識 -, 矢沢久雄著/日経ソフトウェア監修、日経BP社、ISBN4-8222-8165-6、2400円
5. 情報科学概論、田中琢磨著、学術図書出版社、ISBN978-4-7806-0702-4、2400円

授業計画 Class plan
1.コンピュータ概説
von Neuman型コンピュータとは、デジタルコンピュータの基礎を学ぶ

2.記憶と演算
デジタルデータの表現方法、符号化、ファイル等々

3. 計算の実際1
数値計算や文字列処理などの処理を人間が行うレベルで考え、コンピュータに「計算」させる困難さを理解する。(データの表現とアルゴリズムの分離を意識)

4.計算の実際2
2進数レベルの計算でできることを学ぶ。数値計算や文字列処理に加え画像処理を体験する。(データの表現にあわせた単純計算)

5. CPUと機械語1
メモリーとレジスタ間load&storeモデルによるCPUでの計算の構成

6. CPUと機械語2
メモリーとレジスタ間load&storeモデルによるCPUでの計算の実際

7. CPUと機械語3
分岐と繰り返し1
メモリーとレジスタ間load&storeモデルによるCPUでの計算の構成
各種フラグの意味とjump

8. CPUと機械語4
分岐と繰り返し2
繰り返しの実際


9. 仮想マシンCOMET IIとCASL IIによる計算の実際1
10. 仮想マシンCOMET IIとCASL IIによる計算の実際2
11. 仮想マシンCOMET IIとCASL IIによる計算の実際3
12. 仮想マシンCOMET IIとCASL IIによる計算の実際4
13. 仮想マシンCOMET IIとCASL IIによる計算の実際5
14. 仮想マシンCOMET IIとCASL IIによる計算の実際6
仮想マシンCOMET IIとアセンブリ言語CASL IIを紹介し、エミュレータInfoCASLを使って実際に計算させる


15.まとめ
これまでの授業を総括し、到達度を測定する。

より詳しい実施計画はLETUShttps://letus.ed.tus.ac.jp/course/view.php?id=156944に掲示されるのでそちらを参照すること。

担当教員の実務経験とそれを活かした教育内容 Work experience of the instructor
-
教育用ソフトウェア Educational software
-
2進10進16進数の相互変換のできる電卓を使用できると便利である。
COMET II/CASL IIシミュレーターは、Windows版のInfoCASL(https://www.rs.kagu.tus.ac.jp/infoserv/j-siken/infocasl/)の使用を本授業での標準とする。\n\nBYOD機がMacOSやlinuxの場合には、情報処理技術者教育協会配布のjava版のシミュレータを各自で設定できることを前提とする。それらのサポートは本授業では一切行わない。各自の責任

備考 Remarks

授業でのBYOD PCの利用有無 Whether or not students may use BYOD PCs in class
Y
授業での仮想PCの利用有無 Whether or not students may use a virtual PC in class
Y