電子計算機概論I講義日記



4/14

初回。能書きプリントとアンケートとを配る。 4年生以上7名+3年生21名+2年生1名の29人。 去年に較べると大分減ったが、まぁ本来こんなものか。

プロジェクタ資料を仕込んでいって映しながらの授業。 「計算」とは何か。「計算機で行なえること」である、 と言って、計算の定式化を計算機の定式化にすり替えている。 数学では良くあることですが。 大きなテーマは「計算の定式化」「計算の実現」「計算の量と質」てなことですが、 いきなり「計算の定式化(計算の理論・計算可能性の理論)」へ行ってしまうと、 結構しんどい講義になるので、 まづは「計算の実現(計算機の仕組み)」から。 全てのデータ(プログラム内蔵方式なのでプログラムもですが)は ビット列で表される、ってことで、今日は二進表記や十六進表記の話まで。

4/21

この授業は電子計算機概論ということで、 主題はディジタル計算機(特にプログラム内蔵方式)であるが、 その前にアナログ計算機の例も見せておこうということで、 計算尺を持ち込んで基本操作を実演してみた。 去年の授業で計算尺を持っていった時 には書画カメラを用意していなかったので、 今回はぬかりなく書画カメラを持ち込んで、 操作をスクリーンに大写しにして見せた。 ピントが余りはっきりは合わなかったので、ちょっと見難かったかも知れないが、 基本操作(掛け算・割り算)の説明・近似計算であること・桁の取扱い、 そして見せ場の連続計算(途中の目盛は値を読まなくて良い)辺りまでを説明。 20分程度。対数目盛の説明は特にしなかったが、数学科の学生なら判るよね。

二進表記の復習をして、筆算の演習。 内容は難しい訳ではないけれど、論理回路の構成に向けて、 基本となる二進各桁の計算を積み重ねて計算が実行される、 という手続きを実感してもらうのが主眼。 十進←→二進の変換はやっぱり下の桁から決めていくのが便利だと思うけど。 「2の補数表示」の話や桁溢れの話、bit shiftの話あたりまでで終わり。 次回は論理回路。

4/28

履修登録者数が確定して、36名らしい。 二進での計算を細かく見ると、 与えられたbit情報の組に対して或る規則でbit情報を生成する、 というのが、計算機が行なう「計算」の実態となる。 それをどう実現するか、という訳で論理回路の話。

Boole関数とそのNOT・OR・ANDによる実現(論理和標準形・論理積標準形)を紹介。 NOT・OR・AND・XOR・NOR・NANDの真理値表を 少々時間を取って書いてもらって答え合わせ。 回路図を用いての表現で、XOR・半加算器(semi adder)を書いて見せる。 ここいらで時間が迫ったので、用意してきた次の問題の用紙を配って宿題に。

問題: 全加算器(full adder)を、NOT, OR, AND を用いて構成せよ。

5/12

先週は「こどもの日」で休みだったので、1週空いて2週間振りの授業。 全加算器の課題の解説に続いて順序回路へ。 ここはちょっと難しめに感ずる所じゃないかな。 SR-フリップフロップを紹介して、D-フリップフロップの手前まで。

5/19

順序回路の続き。 SR-フリップフロップの復習から、D-フリップフロップの紹介へ。 これで記憶素子が出来た。 簡単な応用としてカウンタの構成。 記憶装置を沢山並べて使うための番地(address)による管理と、 指定番地のデータを読み書きするための番地解読回路の話。

5/26

前回までで計算機の各部品(演算回路・記憶素子など)に触れたので、 いよいよそれをどのように組み合わせると計算機として動作するのか、 その簡易モデルを構成してみる。 今回は必要なもの達が、それぞれどのような動作をすべきかを整理。 去年の時は、 loadした時にフラグレジスタ(FR)を書換える仕様にするのを忘れていたので修正。 loadしただけで符号判定が出来るので、この方が便利。 いよいよアキュムレータ(Acc)の符号bitとの違いが全くなくなってしまったが (符号bitの情報をそのまま持っているだけなので分ける必要がない)、 働きが異なるし、実機やCASLではFRを複数持っていたりするので、 原理の説明としてはFRを別途持たせた方が良かろう。 実装は次回に。