AOBA's Information Processing Education
1998/10/31
注意1:このページは、回線を切断した後でゆっくりご覧になってください(テキストを印刷する場合は、その取り扱いに注意してください)。
注意2:背景が白地の画面を長時間見つめていると頭が痛くなってしまいますので、ここは背景をグレーにしています。
「平成6年秋期 第2種 午前」 問1 コンピュータの動作原理に関して、次の説明文中の@,Aに入る装置名の組合わせとして適切なものはどれか。
プログラムは、その実行に先だってあらかじめ( @ )に格納されており、プログラムを構成する命令が順番に( A )によって取出される。
@ A ア 演算装置 制御装置 イ 主記憶装置 演算装置 ウ 主記憶装置 制御装置 エ 補助記憶装置 演算装置 オ 補助記憶装置 主記憶装置 問2 演算命令の実行に関する次の記述中の( )に入れるべき適切な字句はどれか。
主記憶装置へのアクセスを伴う演算命令の実行を細分すると、命令読出し,命令解読,( ),オペランド読出し,演算の順になる。ア 同期 イ 入出力装置起動 ウ 分岐アドレス計算
エ 有効アドレス計算 オ 割込み発生問3 フォンノイマン型コンピュータの特徴を表す用語はどれか。
ア パイプライン処理 イ プログラム記憶方式
ウ プロセス制御方式 エ マルチメディア処理
オ リアルタイム処理問4 コンピュータの利用者が、ディスプレイ端末を使ってコンピュータと情報のやりとりを行い、人間の判断を加えながらプログラムの作成や実行を進める処理形態を表す用語として、最も適切なものはどれか。
ア オフライン処理 イ 自動ジョブ処理 ウ 対話型処理
エ バッチ処理 オ 分散処理問5 論理演算”x ★ y”の処理結果は、次に示す真理値表のとおりである。この演算と等価な式はどれか。
真理値表
x y x ★ y 真 真 偽 真 偽 偽 偽 真 真 偽 偽 偽 ア x AND (NOT y) イ x OR (NOT y)
ウ (NOT x) AND y エ (NOT x) AND (NOT y)
オ (NOT x) OR (NOT y)問6 排他的論理和(Exclusive-OR)を表す演算子を○とするとき、”0011 ○ 0101”の演算結果はどれか。
ア 0001 イ 0110 ウ 0111 エ 1000 オ1110
問7 2進数A,Bがある。
A=01010101 B=01100110
とするとき、A+Bの演算結果はどれか。ア 01101010 イ 01111010 ウ 10011010
エ 10111011 オ 11010101問8 負数を2の補数で表現する固定小数点数において、nビットで表現できる整数の範囲はどれか。
ア −2n〜2n-1 イ −2n-1〜2n-1
ウ −2n-1〜2n-1−1 エ −2n-1−1〜2n-1
オ −2n-1−1〜2n-1−1問9 符号付きの整数を16ビットの2進数で表現するとき、表すことのできる最大の数値を16進数で示したものはどれか。ここで、符号ビットは左端にあり、負数は2の補数で表す。
ア 7FFF イ 8000 ウ 8FFF エ F000 オ FFFF
問10 2進数10111100を右へ4ビットシフトした結果を、再び左へ4ビットシフトした結果得られる2進数はどれか。ここで、右へシフトしたときは左から0が入り、左へシフトしたときは右から0が入る。
ア 00001100 イ 10100000 ウ 10110000
エ 10111000 オ 10111100
解説 問1について
演算装置:処理装置(CPU)の一部。実際に演算を実行する装置。
制御装置:処理装置(CPU)の一部。コンピュータの制御を行う装置。
主記憶装置:記憶装置の一部。処理装置と直接やりとりを行う(メモリのこと)。
補助記憶装置:記憶装置の一部。名称の通り、主記憶装置の容量不足を補助する装置(フロッピーディスクなど)。プログラムの実行直前には、当該プログラムは主記憶装置に格納されています。このプログラムの命令の取出しを行う装置は制御装置であり、取出した命令の演算(例えば、加算命令における加算)が演算装置で行われます。
補助記憶装置にもプログラムは格納されていますが、設問中に「実行に先だって」という一文がありますので、@は主記憶装置と考えるのが妥当です。問2について
次の@〜Fは1命令における処理装置の動作を表し、この過程全体を指して、命令サイクルといいます。@ 命令アドレスレジスタ(プログラムカウンタ)の内容を主記憶装置に送る。
A @で指定されたアドレスにあたる命令を命令レジスタに取出す。
B 次の命令に備えて、命令アドレスレジスタの値を更新する。
上記@〜Bの過程を命令取出し段階(命令取出しサイクル,フェッチサイクル)といいます。C 命令を命令デコーダで解読し、演算回路を選択する。
D 演算で利用するデータの主記憶装置上のアドレスを決定する(有効アドレス計算)とともに、レジスタ番号を決定する。
E 主記憶装置上のデータとレジスタの内容を演算回路に取り込む。
F 演算を実行する。
上記C〜Fの過程を命令実行段階(命令実行サイクル,エグゼキュートサイクル)といいます。つまり、命令取出し(@〜B),命令解読(C),有効アドレス計算(D),オペランド読出し(E),演算(F)の順です。
問3について
コンピュータはプログラムを、コンピュータの内部に格納しておく必要があります。このように、プログラムを予めコンピュータ内に格納しておく方式のことを、プログラム内蔵方式(プログラム記憶方式,ノイマン方式)といいます。
現在実用化されているコンピュータは、すべてプログラム内蔵方式を採っていますが、このコンピュータのことをノイマン型コンピュータと呼ぶこともあります(注 フォンノイマンは人名です)。問4について
設問の文章は対話型処理の記述です。オフライン処理:通信回線によって接続されない処理。対する用語はオンライン処理。
自動ジョブ処理:JCLによって、登録されたジョブを自動的に実行する処理なのでしょうか??。
バッチ処理:データを一定期間貯めておいて、ある時点でまとめて実行する処理。一括処理とも呼ぶ。対する用語はリアルタイム処理。
分散処理:複数台のコンピュータをネットワークで接続し、あるまとまった処理を、複数台のコンピュータで分担して行う処理。対する用語は集中処理。問5について
真 AND 真 = 真, 真 AND 偽 = 偽,
偽 AND 真 = 偽, 偽 AND 偽 =偽,
真 OR 真 = 真, 真 OR 偽 = 真,
偽 OR 真 = 真, 偽 OR 偽 =偽,
(NOT 真)=偽, (NOT 偽)=真この程度の問題ならば、上記の前提に注意して、解答群から一つずつ当てはめていくのが簡単でしょう。
答えは、(NOT x)AND yです。問6について
排他的論理和(○)は、以下の真理値表にしたがう演算です。真理値表
x y x ○ y 真(1) 真(1) 偽(0) 真(1) 偽(0) 真(1) 偽(0) 真(1) 真(1) 偽(0) 偽(0) 偽(0) 問題では暗黙のうちに、ビットごとの排他的論理和を要求していますので、答えは以下のようになります。
![]()
問7について
0+0=0,0+1=1,1+0=1,1+1=10(左記はすべて2進数)
通常の10進数の足し算と同じように求めるだけです。
![]()
問8について
面倒なことを考えずに、負数を2の補数で表現する固定小数点数では、nビットで表現できる整数の範囲は、−2n-1〜2n-1−1と覚えちゃってください。
例えば8ビットの場合、01111111(10進数の127)が表現できる最も大きな数であり、10000000(10進数の−128)が表現できる最も小さな数です。補足1) 負数を2の補数で表現する固定小数点数とは、符号を1ビット(一般に最も左端のビット,符号ビット),残りのビットでその数の絶対値を表現する形式です。このとき、符号ビットが1ならば負数,0ならば正数です(0は符号ビットを含めて全ビット0)。
補足2) 2進数のある数nの2の補数を求めるには、元の数の全ビットを反転して、そこでできた値に1を加算します。例として00000011(10進数の3)の2の補数を求めてみます。
00000011を全ビット反転すると、11111100
11111100に1を加算すると、11111101(これは10進数の−3)
問9について
最も大きな数ですので、符号ビットは0(正数),残りのビットは絶対値が大きくなくように、全ビット1とします(ただし、負数の場合は0のビットの方が絶対値が大きい)。よって、0111111111111111を16進数で表現した7FFFが求める答えです。問10について
10111100を右へ4ビットシフトすると、00001011
00001011を左へ4ビットシフトすると、10110000
解答
問1 ウ 問2 エ 問3 イ 問4 ウ 問5 ウ
問6 イ 問7 エ 問8 ウ 問9 ア 問10 ウ