解答例 イ
解説
n=2のとき,2進数aの最大値は11なので,b=1001となり,bは高々4ビットになる。
11
×11
1001
n=3のとき,2進数aの最大値は111なので,b=110001となり,bは高々6ビットになる。
111
× 111
111
111
111
111001
n=4のとき,2進数aの最大値は1111なので,b=11100001となり,bは高々8ビットになる。
1111
× 1111
1111
1111
1111
1111
11110001
以上より,aがnビットの正の2進数のとき,bが2nビットの2進数になると予想できる。
nビットの正の2進数aの最大値は,2n−1と表せるので,
b=a2
=(2n−1)2
=22n−2・2n+1
=2・22n−1−2n+1+1
=22n−1+(22n−1−2n+1)+1
=22n−1+2n+1 (2n−2−1)+1
=22n−1+2n+1 (2−1)(2n−3+2n−4+2n−5+…+21+1)+1
=22n−1+2n+1 (2n−3+2n−4+2n−5+…+21+1)+1
=22n−1+22n−2+22n−3+…+2n+2+2n+1+1
したがってbは高々2nビットになる。
解答例 イ
解説
二つあるサイコロのうちのサイコロAを取り出して1の目が出る確率は![]()
2つあるサイコロのうちのサイコロBを取り出して1の目が出る確率は![]()
サイコロ1つを取り出して1の目が出る確率は![]()
したがって振ってみたら1の目が出たという条件の下で,取り出したサイコロがAである条件付き確率は

解答例 ウ
解説
回帰直線は,分布するデータと直線との誤差が最小になるように求めた直線。回帰直線の傾きやy切片の値は,データの分布状況に依存して決まり,相関の強弱とは無関係に決まる。分布の状況により,原点を通る回帰直線が求まる場合もあれば,相関の強さが異なっても同一の回帰直線が求まる場合もあります。
ア × データの分布の状況により,原点を通る場合もある
イ × データの分布状況に依存して決まり,相関の強弱とは無関係に決まる。
ウ ○
エ × 相関係数が負の場合であっても,傾きが右下がりの回帰直線が求まる
解答例 ア
解説
標準偏差は,平均値からのばらつきの大きさを示す指標。この場合,平均値が60,標準偏差が10なので,平均値60を中心として60±10の範囲に分布が集中し,この範囲に全体約2/3のデータが含まれる。したがってアが適切。
ア ○
イ × 平均が60,標準偏差5の正規分布
ウ × 左右対称でないので,正規分布でない
エ × 左右対称でないので,正規分布でない
解答例 エ
解説
真→偽の場合のみ偽となり,真→真,偽→真,偽→偽の場合は真となるので,P,Qがいずれも真という前提で,ア〜エの左辺と右辺の真理値を求めると,以下のようになる。
ア ×
Rが真のとき
真→(R→偽)=真→(真→偽)
=真→偽
=偽
Rが偽のとき
真→(R→偽)=真→(偽→偽)
=真→真
=真
イ ×

Rが真のとき
真→(真→R)=真→(真→真)
=真→真
=真
Rが偽のとき
真→(真→R)=真→(真→偽)
=真→偽
=偽
ウ ×

Rが真のとき
真→(R→偽)=真→(真→偽)
=真→偽
=偽
Rが偽のとき
真→(R→偽)=真→(偽→偽)
=真→真
=真
エ ○

Rが真のとき
偽→(真→R)=偽→(真→真)
=偽→真
=真
Rが偽のとき
偽→(真→R)=偽→(真→偽)
=偽→偽
=真
解答例 エ
解説
ア × 生成多項式による巡回冗長検査方式で,通信データなどのバーストエラーチェック(連続したビットのエラー)に用いられる方式で,データ誤りの自動訂正は不可。
イ × パリティビットと呼ばれる冗長ビットを付加し,ビット誤りの検出を行う方式。誤りの自動訂正は不可。
ウ × イと同様,誤りの自動訂正は不可。
エ ○ 誤り検出訂正符号方式(ECC:Error Checking and Correction Code)とも呼ばれ,複数の冗長ビットを付加し誤りの検出または訂正を行う方式。1ビットの誤りを訂正でき,また2ビットの誤りを検出できる。
解答例 ウ
解説
ビット列の最後の3ビット110を読み込む直前の状態がa,b,c,dの各場合について,状態遷移のようすは以下のようになる。
@最後の3ビット110を読み込む直前の状態がaの場合
1 1 0
a → b → d → c
A最後の3ビット110を読み込む直前の状態がbの場合
1 1 0
b → d → d → c
B最後の3ビット110を読み込む直前の状態がcの場合
1 1 0
c → b → d → c
C最後の3ビット110を読み込む直前の状態がdの場合
1 1 0
d → d → d → c
いずれも状態cで終わるので,受理状態をcとすれば受理できる。
解答例 ウ
解説
評価する式は,逆ポーランド表記法で記述されている。つまり式の項の後に演算子が後置された式を,左から順に入力してスタックに積んでいる。したがって式の項を2つスタックに積んだ後,演算子が出現することになる。図のスタックでは,式の項がC,Dのとスタックに積まれた後,演算子が出現したのであるから,逆ポーランド記法で記述された式は,C D 演算子であることになる。これを中置表記法で記述するとC 演算子 Dになる。
解答例 イ
解説
添字iを親要素とすると,子要素の添字は2iと2i+1になる。添字1のルートが最小の値1をとるヒープなので,すべてのノードにおいて親要素の値<子の要素の値となっている必要がある。
ア × 添字3の値5を親要素とする左の子の値4が親要素より小さい
1
/ \
3 5
/ \ / \
12 6 4 9
/ \ / \
15 14 8 11
イ ○
1
/ \
5 3
/ \ / \
12 6 4 9
/ \ / \
15 14 8 11
ウ × 添字5の値8を親要素とする左の子の値6が親要素より小さい
1
/ \
5 3
/ \ / \
12 8 4 9
/ \ / \
15 14 6 11
エ × 添字2の値6を親要素とする右の子の値5が親要素より小さい
1
/ \
6 3
/ \ / \
12 5 4 9
/ \ / \
15 14 8 11
解答例 エ
解説
まず2個ずつのデータ列でそれぞれ整列した後,整列済みのデータ列をさらに統合して整列を繰返しているので,マージソートに該当する。
ア × クイックソートでは,基準値よりも小さな値のデータ列と基準値よりも大きな値のデータ列に2分割することを]繰返してソートする。
イ × シェルソートでは,ある間隔ずつ離れた要素間で比較を行ってソート済みデータ列を作り,徐々に比較する要素間の間隔を狭めてソート済みデータ列を作ることを繰返し,ソートを行う。
ウ × ヒープソートでは,ヒープを構成しながらソートを行う。
エ ○
解答例 エ
解説
n個の昇順に整列されたデータをm個ごとのブロックに分割しているので,ブロック数はn/mである。各ブロックの最後尾のデータだけを線形探索して該当データの存在するブロックを探し出した後,該当ブロック内をさらに線形探索して目的のデータを探す。先頭ブロックの1番目に目的のデータが存在する場合,比較回数は最小になり,1回である。逆にn/m番目の最後のブロックの最後尾のm番目に目的のデータが存在する場合,比較回数は最大になり,(m+n/m)回である。
したがって平均比較回数は[1+(m+n/m)]÷2≒m/2+n/2mになる。
解答例 ウ
解説
ア × f(0)=0となるので,f(1)=1*f(0)=0となり,0!=0,1!=0になってしまう。
イ × f(0)=0となるので0!=0となる上,f(1)=1*f(2)となり,f(1)以降が求まらない。
ウ ○ f(0)=1となるので,0!=1となる。n!=n*(n−1)*(n−2)*…*2*1=n*(n−1)!なので,f(n)=n*f(n−1)となり,n≧1の場合についても再帰的に求まる。
エ × f(0)=1となるので0!=1となるが,f(1)=1*f(2)=1となるので,f(1)以降が求まらない。
解答例 ウ
解説
例えばa=12,b=6の場合,最大公約数は6である。
方法1の場合,最初の処理で12→m,6→nと設定された後,次のm mod n → rの処理で12 mod 6 → 0となるのでループ1の終了条件r=0を満たし,最大公約数がn=6に設定される。
方法2の場合,最初の処理で12→m,6→nと設定された後,ループ2に入り,m mod n → rの処理で12 mod 6 → 0となるのでr=0に設定される。次の処理で6→m,0→nと設定された後,ループ2の終了条件r=0を満たすので,ループを終了し,最大公約数がm=6に設定される。したがって最大公約数が方法1ではnに設定され,方法2ではmに設定される。
解答例 イ
解説
AまたはXの処理の前には並列処理の同期待ちがあるので,AまたはXの処理を行うには,その前にBとYの処理がともに終わっている必要がある。途中に出現し得る順序ということなので,
ア × 直前にYの処理が行われた続きと考えると,
Y→B→(Bが終わると同期がとれる)→A→B→(同期待ち)までは可能だが,同期待ちに入るので,先にYの処理が行われないと,次のAの処理が実行できない。
イ ○ 直前にYの処理が行われた続きと考えると,
Y→B→(Bが終わると同期がとれる)→X→A→Y
ウ × X→B→(同期待ち)までは実行できるが,同期待ちに入るので,
先にYの処理が行われないと,次のAの処理が実行できない。
エ × Bの処理が行われた続きと考えると,
Y→(Yが終わると同期がとれる)→Xまでは可能だが,この後Aの処理か,Yの処理が続く必要がある。Y→X→A→BまたはY→X→Y→Aなら可能。
解答例 ウ
解説
ア × 待ち行列理論
イ × パレート図,特性要因図など
ウ ○
エ × 回帰分析,移動平均法,線形計画法,シンプレックス法など
解答例 ウ
解説
初期状態からS=0にした場合
Sの側の論理積の出力は0となるのでX=1に反転し,これによりRの側の論理積の入力はR=1,X=1になり,その出力は1となるのでY=0に反転する。
再びS=1に戻した場合
Sの側の論理積回路の入力は S=1,Y=0で,論理積の出力は0となるのでX=1のままで,R側の論理積の入力は変らず,Y=0で変化しない。したがってX=1,Y=0になる。
解答例 ウ
解説
ア × 後続命令で実行可能なものは,逆順でも先に実行すること。
イ × 分岐命令が出現すると,直後の命令を先読みして実行すること。
ウ ○ 投機実行は,破棄するかもしれない予測命令を,分岐先の決定に先立って分岐予測に基づき先読みし実行すること。条件分岐命令は,パイプライン処理による高速化を妨げる要因となる。そのため分岐命令が出現すると,分岐が決定するまでの間に,分岐先命令を予測して先読みし,投機的に実行する。予測が間違っていれば予測した命令による処理結果以降を破棄し,分岐によって決定された正しい分岐命令を実行する。
エ × 命令が参照するレジスタの名前を実行時に動的に付け替えること。
解答例 ウ
解説
ア × MIMD(Multiple Instruction stream Multiple Data)では,複数の命令を複数の実行ユニットに送り,複数のデータに対して複数の異なる命令による処理を同時並列に実行する。
イ × MISD(Multiple Instruction stream Single Data)では,複数の命令を複数の実行ユニットに送り,同一データに対して複数の異なる命令による処理を同時並列に実行する。
ウ ○ SIMD(Single Instruction stream Multiple Data)では,同一命令を複数の実行ユニットに送り,複数のデータに対して同じ一つの命令による処理を同時並列に実行する。
エ × SISD(Single Instruction stream Single Data)では,一つの命令を一つの実行ユニットに送り,一つのデータに対して一つの命令による処理を実行する。
解答例 エ
解説
参照頻度の高い命令を高速なキャッシュメモリにコピーしておくことにより、メモリアクセスを高速化できる。したがってメモリ上の特定の命令に対するアクセス頻度が高い場合(つまりメモリに対する局所参照性が高い場合)キャッシュメモリによりメモリアクセスが高速化され、キャッシュメモリの効果が大きい。逆にメモリ全域をランダムにアクセスする場合は、キャッシュメモリによる効果は低い。
ア × アクセス時間が同じ場合は改善されない。
イ × キャッシュメモリの容量を大きくすると、主記憶の実効アクセス時間は改善されるが、逆比例の関係にはない。
ウ × キャッシュメモリはSRAMで構成されており、レジスタの代替としては使えない。
エ ○
解答例 エ
解説
USB2.0は,USB1.1にハイスピードモードを追加したシリアルインタフェースで,マウスからハードディスク,DVDカメラに至る周辺装置を接続できる。USBハブ経由でツリー接続により最大127台まで周辺装置をPCに接続できる。またプラグアンドプレイ,ホットプラグインに対応する他,周辺装置同士を直接接続できるOn-The-Goもサポートしている。USBのデータ転送には,@周辺装置の設定・制御コマンドの転送を行うためのコントロール転送,Aビデオなどの大量データを連続して周期的に転送するアイソクロナス転送,B画像などのまとまったデータを一度に送るバルク転送,C周辺装置に対して周期的なポーリング転送を行うインタラプト転送がある。
ア × シリアルATAの特徴
イ × IEEE1394の特徴
ウ × RS-232Cの特徴
エ ○