授業内レポート第 1 回学籍番号名前 (1) 下記の単語のうち, 簡単に説明できるものに を, 説明はできないが聞いたことがあるものに をつけよ. 2 進数 10 進数機械語ギガバイトテラバイトスタック パイプライン再起呼出し浮動小数点 2 の補数仮想記憶排他的論理和 分岐予測コンパイラ投機実行 C# java android (2) 下記のサービスのうち, 実際に登録して利用しているものに を, 内容を知っているものに をつけよ. mixi GREE Gmail モバゲータウングルーポン食べログ facebook Twitter instagram Google Calendar Flicker (3) 計算機アーキテクチャによって, ハードウェアの物理的な違いやメーカの違いにかかわらず, 同一のプロ グラムが実行できると何がうれしいかを 1 つ述べよ. なお, 新規ソフトウェアの開発 応用ソフトウェアの 開発 価格性能比 コンピュータファミリー といった言葉を 1 つ以上含めて記述すること 下記のような記述があれば OK 機種ごとに別のプログラムを用意する必要がないので応用ソフトウェアの価格が高くならない 新規ソフトウェアを開発するときでも, 同ファミリーでこれまでに開発してきた資産が活用できる ハードウェア設計の際に, 同じソフトウェアが動作するが, その性能が異なるハードウェアを製作しやすい 同じアーキテクチャで複数の性能のハードウェアを設計できるため, 使用目的にあった価格性能比のものを選択できる 同様のアーキテクチャをもつコンピュータをコンピュータファミリーとして定義づけることで, 同じソフトウェアが動作する安心感からコンピュータハードウェアの買い替えも容易になる 同じソフトウェアが動作するため, 適切な価格性能比となるような値段設定を行う必要があり, ハードウェアが不当な高価格になりにくい (4) 授業に関して, 希望や質問等があれば記述してください.
授業内レポート第二回学籍番号名前 (1) 2 の歩数系で数を表す 2 値系列 X=(xn-1, xn-2, xn-3,, x0) において, 左算術シフトを XL, 右算術シフトし た数 XR を示せ. その際, オーバフローおよびアンダーフローの条件を示すこと. また, なぜその条件に なるのかを考えよ. XL=(xn-1, xn-3,, x0, 0) ただし,xn-1=xn-2 XR=(xn-1, xn-1, xn-2,, x1) ただし,x0=0 XL において,xn-1=xn-2 でないときは,xn-2 ( 数値の最上位ビット ) に数字が存在するため,2 倍したときに桁 あふれを起こす.xn-1=xn-2 のときは, 数値の最上位ビットがゼロを意味するため,2 倍しても用意したビット 数に収まる. XR において,x0=0 でない場合,X は 2 で割れない数となるため, アンダーフローとなる. (2) (10011010)2=154 に (1010)2C=-6 を加算せよ. 計算の途中経過も記すこと. 添え字の 2 や 2C はそれ ぞれ, 正しかない 2 進数系,2 の補数系を表す. (10011010)2=(010011010)2C, (1010)2C を上記にあわせて符号拡張すると,(111111010)2C 010011010 +111111010 (010010100)2C=148 上位 2 桁に桁上がりがあったので, オーバフローではない (3) コメントや質問があれば書いてください. 4
授業レポート第三回学籍番号名前 (1) 1 語 32 ビットで浮動小数点数 m β e を表現する.m と e の絶対値に割り当てられるビット数が 30 ビット ( つ まり m と e はそれぞれ符号付絶対値系であり, 符号に 2 ビット消費する ) であるとき,β=2,m が 24 ビット, e が 6 ビットのときを例に,β の大きさ, および m と e のビット数という 3 つの値の関係を説明せよ. β=2,m が 24 ビット,e が 6 ビットのとき, 表現できる最大値は 2 64 まで (= 約 10 19 程度 ) となる.m のビット数を大きくすれば精度は高くなる (m が 24 ビットのとき,10 進で約 7.2 桁の精度 ) が, その分 e に割けるビット数が少なくなるため, 表現できる値の範囲は小さくなる. また,β はシステムで決める値である. βを大きくすれば,m と e に割り当てられるビット数が同じでもより広い範囲の値を表現できるようになるが,m に同じビット数を割り当てた場合でも桁の精度は悪くなる. 例えばβを 16 にすることで, 表現できる桁数は 10 77 程度まで上昇するが, 精度が 10 進で約 1 桁低下する. (2) IEEE754 の倍精度の方式と 符号ビットが 1 ビット, 整数部分が 16 ビット, 小数部分が 47 ビット の固 定小数点形式について, 表現できる数の絶対値の最大値を比較せよ. 固定小数点の絶対値の最大値 : 2 16 +(1-2 -47 ) すべてが 1 の場合 IEEE754 倍精度の絶対値の最大値 : (1+(1-2 -52 )) 2 1023 すべてが 1 の場合後者の桁数が 2 1007 程度多いことがわかる. 参考固定小数点の絶対値の最小値 : 2-47 最下位桁だけが 1 の場合 IEEE754 倍精度の絶対値の最小値 : 1.0 2-1022 仮数が全て 0 で, 指数が最小値をとる場合 (3) 授業に関するリクエストや何か質問等があれば書いてください.
授業内レポート第四回学籍番号名前 (1) -3 10 5 10 を, ブースのアルゴリズムを使って解く様子を記述せよ. アルゴリズム動作がわかるように書 かれていれば形式は問わない. ブースのアルゴリズムでは, 現在注目している bit と1つ前の bit を見て,00,11 なら不加算,01 なら+B, 10 なら-B を加算するアルゴリズムである. -3 は 2 の補数で 1101,5 は 2 の補数で 0101,-5 は 1011 なので, 1101 0-3( 右端に 0 があるものと仮定する ) ------------- 111011 右端の bit は 10 なので-5 をおく ( 後の加算のために符号拡張されていることに注意 ) 00101 2 個目の bit は 01 なので 5 を加算 1011 3 個目の bit は 10 なので-5 を加算 -------- 4 個目の bit は 11 なので加算なし 1110001(-15) 上記の和をとると,-15 になるとなる (2).1001 2.1101 2 を引き戻し法と引き放し法それぞれで計算せよ引き戻し法 ( 通常の割り算のように進める ).4 ビットなので,2 倍することを考慮して 5 ビット+ 符号ビットで進める r 0 =00.1001 D=00.1101,-D=11.0011 (1) 2r 0 (01.0010)+-D(11.0011)=00.0101 > 0 Q=.1xxx (2) 2r 1 (00.1010)+-D(11.0011)=11.1101 < 0 Q=.10xx (3) 2r 2 =4r 1 (01.0100)+-D(11.0011)=00.0111 > 0 Q=.101x (4) 2r 3 (00.1110)+-D(11.0011)=00.0001 > 0 Q=.1011 余りは 0.0001*2-4 =2-8 引き放し法では, とりあえず商を 1 として立て, 負になったときには-1 として後で計算する. (1) 2r 0 (01.0010)+-D(11.0011)=00.0101 > 0 Q=.1xxx (2) 2r 1 (00.1010)+-D(11.0011)=11.1101 < 0 Q=.11xx (3) 2r 2 (11.1010)+D(00.1101)=00.0111 > 0 Q=.11-1x (4) 2r 3 (00.1110)+-D(11.0011)=00.0001 > 0 Q=.11-11 したがって,Q=.1101 -.0010=.1011, 余りは 0.0001*2-4 =2-8 (3) 授業に関するリクエストやその他質問等があれば書いてください.
授業内レポート第 5 回学籍番号名前 (1) アキュムレータ型計算機, レジスタ型計算機, スタック型計算機の特徴を簡単にまとめよ. また, 現在レ ジスタ型計算機が主流である理由を説明せよ. 下記のような内容がまとまっていれば OK A [B] op [C] において, アキュムレータ型: A=B= アキュムレータ レジスタ型: A, B, C がレジスタや主記憶を自由に取り得る スタック型: 上記のような演算命令にはオペランドが存在しない アキュムレータ型計算機 : オペランドの選択肢が 1 つしかないため, ある機能を実行するために必要な命令数が多くなる. レジスタ型計算機 : 命令あたりのオペランド数は可変. ある機能を実行するために必要な命令数は少なくなる. スタック型計算機 : オペランドはスタックの内容のみを使うため, ある機能を実行するために必要な命令数はレジスタ型に比べて多くなるが, スタック内には複数の要素を格納できるため, アキュムレータ型よりは命令数が少なくなる場合が多い. レジスタ型を採用するためには, レジスタに利用する高速な素子を高密度で配置する必要があるが, 近年の高 集積化技術の進歩や素子の低価格化に伴いレジスタを複数もつデメリットが小さくなった. そのため, 柔軟性 の高いレジスタ型計算機が主流となっている. (2) 授業に関するリクエスト等があれば書いてください.
授業内レポート第六回学籍番号名前 (1) あるプログラムをシミュレータで実行して測定したところ,4 クロックで実行できる命令が 40%,5 クロ ックで実行できる命令が 60% の頻度で起こっていた. この場合, 逐次実行した場合の 1 命令あたりの平均所 要クロック数はいくつになるか. 0.4 4+0.6 5 = 4.6 すなわち, 平均 4.6 クロック (2) (1) のプログラムを逐次処理で実行した場合に比べて,5 ステージ (F D E M W) のパイプライン処理を実装 した場合, 何倍の速度で実行できるか. ただし, パイプラインはすべてのステージが命令を実行している定常 状態にあるとし, パイプラインが乱れるようなことはないと仮定してよい. パイプライン化することで, 平均必要クロックは 1 となる. したがって,4.6 倍 (2) 授業に関するリクエストやその他質問等があれば書いてください.
授業内レポート第七回学籍番号名前 (1) キャッシュメモリの容量が 256K バイト, 主記憶の最大容量が 4G バイトのメモリ系 (=アドレス指定に 32 ビット必要 ) において, ブロックの大きさが 32 バイトの 8 ウェイ群連想方式 ( 群におけるブロック枠の数が 8 つ ) を採用したとき, 群番号, および群内ブロック番号の指定に何ビット必要か. また, ディレクトリ全体で何ビット必要か. キャッシュメモリ 256K バイト,1 ブロックのサイズが32 バイトだから, キャッシュのブロック数は256K/32 =8K.8 ウェイ群連想方式なので, 群の数は8K/8=1K. つまり, 群番号の指定には10 ビット必要. ブロック内でアドレス (32 バイト ) を指定するためには5 ビットが必要. すなわち, 残りの 17 ビットが群内ブロック番号となる. ディレクトリの容量は 17 ビット 8K=136K ビットとなる. (2) メモリ系への書き込みにおけるライトスルー方式およびライトバック方式のメリット デメリットについ て簡単に議論せよ. ライトスルー方式 : データ更新ごとに主記憶を書き換える必要があるため, 更新コストが大きくなる. 一方, キャッシュと主記憶の不整合が起こらないため, 複数 CPU を利用している場合でも特殊な処理が必要ない. ライトバック方式 : 同じキャッシュに対して高確率でアクセスがある場合に, 主記憶へのアクセス回数が少なくなる. 一方, 書き戻し時に主記憶を更新する必要があるかどうかを判断するためのビットを用意しておく必要がある. また,CPU が複数存在するときには, 主記憶上の不正確な値が他のCPU に伝播してしまう可能性がある. (3) 授業に関するリクエストやその他質問等があれば書いてください.
授業内レポート第八回学籍番号名前 (1) キャッシングと主記憶の仮想化の, 類似点および相違点をまとめよ 下記のような内容でまとめておけば OK 類似点: 小容量の高速な記憶を実効的に大容量化する技術である点 相違点: 想定しているアクセス速度が異なるため, 主記憶仮想化ではストア スルー方式が現実的でない. また, キャッシングでは連想記憶が構成できないため完全連想方式は使えない. 主記憶仮想化も連想記憶は使えないが, 想定する主記憶サイズがキャッシュのサイズと比べて大きいため, ページ表を用いて完全連想方式が使える. (2) プロセスの基本状態において, 待ち の状態が存在する意味を説明せよ. 実行状態と実行可能状態のみしか存在しない場合, 入力待ちなどの理由でやるべきタスクがない仮想 CPU に も実プロセッサが割り当てられてしまうため. (3) 授業に関するリクエストやその他質問等があれば書いてください.
授業内レポート第九回学籍番号名前 (1) サブルーチンの呼び出し時に, 復帰先アドレスの格納にスタックを用いるメリットを述べよ. 下記のようなことが分かっていれば OK - サブルーチンを多重に呼び出す場合など, 復帰先アドレスを複数格納する必要があるが, 最後に格納された ものが最初に利用されるという点でスタックの動作と同じであるため, スタックの利用が適している. (2) 命令の分岐予測に関して, 静的予測と飽和カウンタの予測精度に差が出る場合を例を挙げて示せ. 例えば単純に 1: for i=0 to 9 2: if i<5 then print low 3: next みたいなプログラムを考えた場合,2 行目が分岐になる. 静的予測で分岐が必ず起こると想定した場合,5 回目までは予測が当たり,6 回目から 9 回目は外れることになる. 飽和カウンタであれば,6 回目と 7 回目を外した時点で予測が切り替わるため,8 回目以降の予測があたる. このとき, 静的予測は精度 5 割, 飽和カウンタは精度 8 割となる. (3) 授業に関するリクエストやその他質問等があれば書いてください.