Web Analytics Made Easy - StatCounter

工業大学生ももやまのうさぎ塾

うさぎでもわかるをモットーに大学レベルの数学・情報科目をわかりやすく解説!

コンピュータアーキテクチャ分野 基本確認60題ほぼ〇×クイズ

こんにちは、ももやまです。
久しぶりにコンピュータアーキテクチャのお勉強をしたので、行基本変形サークルの皆さん [ @kit_matrix ] と一緒に簡単な〇×クイズ+αの問題と解説を作成してみました。

コンピュータアーキテクチャのお勉強がどれくらいできているのかを確認するための材料となれば幸いです。

 

特に指示のない場合は、正しい文に〇(Yes)を、誤った文には×(No)と答えて下さい。

指示がある場合(★がついています)は問題文の指示に従ってください。

 

私のおすすめ

まずは、こちらのフォームから、60問が出題順ランダムで解いてみましょう!

実際に解いてからわからなかった問題を解説で確認することをおすすめします。

No.01~No.10

No.01 命令セットアーキテクチャは狭義のアーキテクチャと呼ばれる。

No.02 CPUアーキテクチャのうち、性能を向上させることが目的のものはマイクロアーキテクチャと呼ばれ、パイプライン処理などがこれに該当する。

No.03 ★CPU、メモリ、入出力の個別のハードウェアのみならず,OSなどのソフトウェアやネットワーク等のシステム全体を含んだアーキテクチャの概念をなんといいますか。

No.04 一般に命令はオペコードとオペランドで構成される。

No.05 レジスタアドレシングにおいて、レジスタ値を再利用したい場合、2項演算のオペランド形式は3つのものよりも2つのものの方が適している。

No.06 ★10進数で示された数をIEEE標準形式の単精度の2進数の浮動小数点で表すことを考える.指数部に127増し表現を採用しているとき、仮数部は何ビットか?

No.07 CISCとはCompleted Instruction Set Computerの略で、文字通り現在も広く採用されている完成された計算機アーキテクチャである。

No.08 RISCとはReduced Instruction Set Computerの略で、簡単な命令セットが用意された計算機アーキテクチャである。

No.09 DEC社によるVAX-11は見事なまでのCISCの例である。

No.10 CISCプロセッサは高級言語で書くプログラマの負担を軽減することが目的で開発された。

 ★解説★

No.01 〇 設問の通りです。

No.02 〇 設問の通りです。

No.03 システムアーキテキチャ

No.04 〇 設問の通りです。

No.05 ×
レジスタ値を再利用する場合は3つのオペランド形式が適しています。
(というか2つのオペランドの場合、値が破壊される)

No.06 23ビット

全体のビット数は32ビット(単精度なので)である。

符号部は正と負を表すだけなので1ビット、指数部は0~255をあらわせばよいため8ビットあればよい。

なので、32 - 1 - 8 = 23となり、23ビットとわかる。

No.07 ×

CISCのCはComplex(複雑な)という意味です。
RISCのRとセットで覚えましょう。

No.08 〇

RISCのRはReduced(削減された)という意味です。

 

ここで、CISCとRISCの違いをおさらいしておきましょう。

 

 

CISC・RISCの違い

CISCプロセッサ [Complex Instruction Set Computer](例:Intel:X86)

・命令が可変長

・回路を複雑にすることにより、複雑な処理でも少ない命令量の記述で実現することが可能。

・回路が複雑な分、多数のアドレシングモード、多数の命令を用意することができ、1つ1つの命令がより高機能なものとなる。

マイクロプログラム方式で命令を実行する。

RISCプロセッサ [Reduce Instruction Set Computer](例:MIPS)

・命令が固定長(なのでパイプライン処理が有効)

・命令を単純化するかわりに、回路の単純化・パイプライン・並列処理を導入することにより命令を高速で処理することができる

ワイヤードロジック方式で命令を実行する。

 

 

No.09 〇

VAX-11はめちゃくちゃ複雑なCISCです。

No.10 ×

CISCプロセッサはアセンブリ言語を書くプログラマの負担を軽減されるために開発されたものです(アセンブリは高級言語じゃないよ!)。

 

No.11~No.20

No.11 CISCプロセッサでは、多数のアドレシングモード、多数の命令を用意し、1つ1つの命令をより高機能なものにした。

No.12 RISCプロセッサはとにかく実行速度の高速化を実現させることが目的である。

No.13 ★CISC, RISCのうち、パイプライン処理が可能なプロセッサはどちらか。

No.14 wired logic方式では、回路を簡単な論理回路で構成するため、高速に動作し、RISCの制御回路をwired logicで実装することが可能である。

No.15 micro program方式では、1つの機械語命令を複数のマイクロ命令で表し実行するため、命令セットアーキテクチャの設計に関して、柔軟性が高い。

No.16 micro program方式では高速なメモリが必要であり、パイプライン処理には向いていない。

No.17 VAX-11のアドレシングモードである「自動デクリメント」、「自動インクリメント」はどのように有効か。適当な例を挙げよ。

No18 MIPSの命令形式は全部で5つ、アドレシングモードは全部で3つ存在する。

No.19 一般的なRISCの命令セットにおいて、メインメモリへアクセスできる命令の種類は限られている。このような命令セットアーキテクチャを特になんというか。(ヒント:ロード命令とストア命令)

No.20 MIPSの命令にはレジスタ間の転送命令は用意されていない。そこで、レジスタ$s0の値をレジスタ$t0に転送する命令を疑似的に実現せよ。

★解説★

No.11 〇 設問の通りです。

No.12 〇 設問の通りです。

No.13 RISC 実はこちらの本番レベル模試でも同じ問題が出題されています。

No.14 〇 設問の通りです。

No.15 〇 設問の通りです。

No.16 〇 設問の通りです。micro program方式はCISCで利用される。パイプライン処理に向いているのRISC(つまりワイヤードロジック方式)。

wired logic方式とmicro program方式も復習しましょう。

 

マイクロプログラム・ワイヤードロジックの違い

 マイクロプログラム [Micro Program] 方式

・主にCISCで利用

・命令を複数の細かな命令に変換しながら処理していく

・複雑な命令を定義しても単純な命令の組み合わせで処理が可能なので柔軟性が高い

ワイヤードロジック [Wired Logic] 方式 

・主にRISCで使用

・命令を簡単な論理回路を使うことで実行するため、高速に動作する

 

No.17 スタックの実現を可能にする。

No.18 ×

MIPSの命令形式:I,R,Jの3つ
アドレシングモード:レジスタ、ベース、PC相対、疑似直接、即値の5つ。

No.19 ロードストアアーキテクチャ(そのまま)

No.20

add $t0, $s0, $zero  # この2つの 
addi $t0, $s0, 0     # どちらか

 

No.21~No.30

No.21 一般に、RISCの命令は固定長である。これは、パイプライン処理に対しては有利に働く。

No.22 MIPSでは、構造ハザードと呼ばれる命令フェッチとメモリアクセスがともにメインメモリにアクセスしてしまうことでハードウェア資源の競合が起こることにより発生してしまうハザードであるが、これにより生じるロスタイムはさほど大きなものではないので特に問題はない。

No.23 ★スーパースカラ方式とVLIW方式のうち、並列性の検出を命令実行時に行うのはどちらか?

No.24 ★スーパースカラ方式とVLIW方式のうち,ハードウェアが並列性を検出するのはどちらか?

No.25 スーパースカラとVILWはともに、命令レベルでの、命令セットアーキテクチャレベルでの並列処理アーキテクチャである。

No.26 CPUはメインメモリにアドレスを渡すが、メインメモリがCPUにアドレスを返すことはない。

No.27 ノイマン型の計算機の特徴として、メインメモリに命令とデータの両方を格納することが挙げられる。

No.28 ランダムアクセス性とはいつでも任意のアドレスに定時間でアクセスできる性質のことである。

No.29 揮発性とは、通電している間のみしかデータが保持されないという性質であり、DRAMにより実装されるメインメモリは揮発性の例である。

No.30 可搬性のある外付けハードディスクなどのものは、前提として不揮発性である必要がある。

★解説★

No.21 〇 設問の通りです。

No.22 ×

さほど大きなものではないので問題ではない、が誤り。
問題が大きい(ロスタイムが大きい)ので、命令とデータを格納するメモリを分けています。

No.23 スーパースカラ方式

No.24 スーパースカラ方式

No.25 × 命令セットアーキテクチャレベル → マイクロアーキテクチャレベル

No.26 〇 設問の通りです。

No.27 〇 設問の通りです。

No.28 〇 設問の通りです。

No.29 〇 揮発性=電力供給が途絶えたらデータ吹っ飛ぶものと考えてください。
DRAMは、コンデンサに蓄えられた電荷で情報を記録するのですが、電力供給が途絶えてしまうと、コンデンサの電荷が次第になくなり、データが吹っ飛んでしまいます(なので揮発性)。

No.30 〇 不揮発性でないと運ぶ際も電源供給が必須となってめんどくさいですよね。なので、電力供給がなくてもデータが吹っ飛ばない不揮発性のものが使用されます。

 

No.31~No.40

No.31 参照の局所性には時間的局所性と空間的局所性の2つがある。

No.32 ★参照の2つの局所性について説明せよ。

No.33 RAMとはRandom Access Memoryの略であり、コンデンサの静電容量で1ビットの情報を記憶するSRAMとフリップフロップの形をした回路で1ビットの情報を記憶するDRAMが存在する。

No.34 ROMとはReal Only Memoryの略であり、データとしてではなく、実際に形として存在しているメモリのことを指す。

No.35 仮想記憶はCPUとメインメモリを組み合わせることにより実現される。

No.36 ★仮想記憶の仮想アドレス空間と物理アドレス空間において、実行前からアドレスが決定されているのはどちらか?

No.37 ★CPUが命令実行に計算する実効アドレスは仮想アドレスと物理アドレスのどちらか?

No.38 仮想アドレス空間と物理アドレス空間をページと呼ばれる固定長の記憶領域に分割し、ページ単位で仮想アドレスと物理アドレスをマッピングする技法のことをページングという。

No.39 アドレス変換は、メインメモリ上のページテーブルにより行われる。

No.40 アドレス変換では、仮想ページ番号をインデックスとしてページテーブルを参照し、物理ページ番号を得て、これとページ内変位を結合することにより物理アドレスを得る。

★解説★

No.31 〇 設問の通りです。

No.32

時間的局所性:1度参照されたものは近い将来再び参照される可能性が高い性質
空間的局所性:参照されたものの近くのアドレスのものは近い将来アクセスされる可能性が高い性質

No.33 × SRAMとDRAMの説明が逆になっています。

DRAM:コンデンサの静電容量で記録
SRAM:フリップフロップの形をした回路で記録

No.34 × ROMのRはReadを指します。実際に形として存在しているメモリではなく、読み出し専用のメモリのことです(名前の通りですね)。

No.35 × 仮想記憶はメインメモリと補助記憶装置の2つを組み合わせることで実現されます。

No.36 仮想アドレス空間

No.37 仮想アドレス(物理アドレスは仮想アドレスを計算して算出される)

No.38 〇 設問の通りです。

No.39 〇 設問の通りです。

No.40 〇 設問の通りです。

 

No.41~No.50

No.41 アドレス変換は MMU と呼ばれるソフトウェアによって自動的に行われる。ただし、メインメモリ上にページテーブルを置くとプログラムの実行速度が低下するため、一般的には MMU に加え、アドレス変換の高速化を行う TLB と呼ばれるソフトウェアを同時に用いる。

No.42 ★参照するページがメインメモリに存在しないことをなんというか。

No.43 No.32を知らせるのは割り込み命令である。

No.44 なぜ、TLBはアドレス変換を高速化させることが可能であるのか?TLBの構造の観点から説明せよ。

No.45 No.42が発生すると、HDDからのページ読み込みを待つため、プロセスが待ち状態となってしまい、これがプログラムの実行効率の低下につながる。

No.46 ★ページフォルトはどのようにして検知されるか?

No.47 ページを取り出す方式にデマンドページングとプリページングがあるが、両者の異なる点はどのページをいつ主記憶に読み込むかということである。また、ページ転送に無駄がないのはプリページングである。

No.48 ページングにおいて、ページ置き換えアルゴリズムの最適解とはどのようなアルゴリズムか?

No.49 ページ置き換えアルゴリズムであるLRU(Least Recently Used)とは、「過去最も長い間参照されていないページを置き換える」というアルゴリズムであり、これはページ参照の空間的局所性に基づく。

No.50 キャッシュメモリには、いま必要なメインメモリ内の命令とデータの一部をコピーして格納する。

★解説★

No.41 ×

MMUはソフトウェアではなくハードウェア。
TLBはソフトウェアではなく、MMU内に存在する機構である。

No.42 ページフォルト

No.43 〇 設問の通りです。

No.44 TLBは仮想ページ番号とページ枠の番号の対を高速にアクセスできるレジスタに格納しているから。

No.45 〇 設問の通りです。

No.46 MMUによるページフォルト割り込みにより検知できる。

No.47 ×

プリページングは、予測に基づいて動作をするため無駄が生じる可能性がある。ページ転送に無駄が生じないのはデマンドページングである。

No.48 将来最も長い間参照されたことがないページを置き換えるアルゴリズム(OPTアルゴリズム)である。

(でも未来の予想をする必要があるため実現が難しい。そのためLRUアルゴリズムが使われる。)

No.49 ×

空間的局所性ではなく、時間的局所性

No.50 〇 設問の通りです。

 

ページングについてもしわからないことなどがあれば、こちらの記事を参考にどうぞ!

www.momoyama-usagi.com

No.51~No.62

No.51 CPUからキャッシュメモリにアクセスするとき、命令やデータのコピーがキャッシュメモリ内に存在しないことをミスヒットと呼び、それにより発生するブロックの置き換えのために要する時間をミスヒット時間と呼ぶ。

No.52 ★キャッシュメモリを命令キャッシュとデータキャッシュに分離し、それぞれに別々の制御機構やアドレスパス、データパスなどを装備したメモリアーキテクチャのことをなんというか?

No.53 キャッシュメモリのマッピング方式のうち、直接マッピングの利点は検索時間がかからず、魔ピング機構のハードウェア化が容易であるという点である。

No.54 ★キャッシュメモリのマッピング方式である、直接マッピング、セット連想マッピング、完全連想マッピングのうち、最もマッピングの自由度の高いものは何か?

No.55 セット連想マッピングでは、セットの選択に完全連想マッピングを、セット内のブロックの選択に直接マッピングを用いている。

No.56 キャッシュメモリへの書き込み方式の1つとしてライトバック方式がある。この方式ではキャッシュメモリとメインメモリのデータは常に同一であるという利点があるが、書き込みのアクセスが実質的にメインメモリアクセスと等しくなり、キャッシュとしての効果が失われるという欠点もある。

No.57 キャッシュメモリへの書き込み方式の1つとしてライトスルー方式がある。この方式では、ライトバック方式の利点が欠点に、欠点が利点になる。

No.58 ★メインメモリ内のデータとキャッシュメモリ内のデータの一貫性のことをなんというか?

No.59 マウスやキーボードは入出力装置の例である。

No.60 ★HDD内で、入出力要求がされてから出力が完了するまでに要する時間のことをなんというか?

また、その内訳について説明せよ。

No.61 ★CPUが直接入出力に介在し、CPU経由でメインメモリと入出力装置間でのデータの転送を行うと時間がかかってしまう。そこで、この入出力の効率を高めるために入出力装置とメインメモリ間の転送を直接制御する転送方式をなんというか?

No.62 汎用大型機では、入出力制御は入出力チャネルによって行われる。

★解説★

No.51 × ミスヒット→ミスペナルティ時間

No.52 ハーバードアーキテクチャ

No.53 〇 設問の通りです。

No.54 完全連想マッピング

No.55 × セットの選択に直接マッピングを、セット内のブロックの選択に完全連想マッピングを用いている。(つまり逆)

No.56 × ライドバック方式のメリットとデメリットが逆に書かれている

No.57 〇 設問の通りです。

ライトスルー方式、ライトバック方式については下のまとめをご覧ください。

 

ライトスルー方式・ライトバック方式

ライトスルー方式

長所

・キャッシュメモリと主記憶に同じデータを書き込むので、2つのデータが常に同一になって安全

短所

・2つのデータを記録する必要があるため処理速度がダウンする

ライトバック方式 

長所

・キャッシュメモリだけに書き込むので処理速度が早い
(主記憶に書き込むのはキャッシュメモリから追い出すとき)

短所

 ・2つのデータの整合性が保てなくなることがある
(制御が必要)

No.58 コヒーレンシ

No.59 〇 ほかにどんな入出力装置を思い浮かびましたか?

No.60 アクセス時間

アクセス時間は、シーク時間+回転待ち時間+データ転送時間の3つで構成される。

ちなみにアクセス時間の大半はシーク時間+回転待ち時間となり、データ転送時間はほとんどない。なので、データの大きさはアクセス時間にほとんど影響はない。

No.61 DMA転送

No.62 〇 設問の通りです。

 

以上62問でした。

 

さいごに

今回はコンピュータアーキテクチャの復習問題として、1問1答式の〇×問題+αを行基本変形サークルと共同で作成しました。

コンピュータアーキテクチャを学んだ人の良い復習材料となれば幸いです。