【最短合格】基本情報技術者試験 午前 過去問&解説(1-3)

この記事を書いた人
  • 年齢:30代前半
  • 職歴:組み込みエンジニア(3年)➡機械エンジニア(3年)➡SE(現在)
  • 主な保有資格
    • 基本情報技術者試験(FE)
    • 応用情報技術者試験(AP)
    • 一陸特/二海特/AI2種,1種/DD2種,1種/AI,DD総合種
目次

テクノロジ系-基礎理論(スライムの森)

赤ちゃんサメ

「スライム親分」・・・だと。
スライム狩りし過ぎて、無茶苦茶怒ってるんだけど!!!
こいつを倒して森を抜けるぞ!!!

奇数パリティ(スライム親分 HP25)

【問題】8ビットのレジスタがある。このレジスタの各ビットの値を d0,d1,…,d7とし、パリティビットの値をpとする。奇数パリティの場合、常に成立する関係式はどれか。ここで、⊕は排他的論理和演算を表す。

(ア)0⊕d0⊕d1⊕ … ⊕d7=p

(イ)d0⊕d1⊕ … ⊕d7=p

(ウ)d0⊕d1⊕ … ⊕d7⊕p=0

(エ)d0⊕d1⊕ … ⊕d7⊕p=1

IT-SHARK

【攻略ヒント】
奇数パリティ=1の数が奇数個になるように1とすることに着目!


【解説】

奇数パリティは、データを構成するビット全体の中でビット「1」の数が奇数個になるようにパリティビットを付加する方式なので、パリティビットを含めた各ビットをすべてXOR演算した結果は必ず「1」となります。


【答え】(エ)


基数変換(スライム親分 HP20)

【問題】16進数の小数0.248を10進数の分数で表したものはどれか。(ア)31/32(イ)31/125(ウ)31/512(エ)73/512

IT-SHARK

【攻略ヒント】
基数変換は落ち着いて解けば確実に点が取れる問題だから頑張って!


【解説】16進数の小数を10進数で表すと小数第1位が1/16、小数第2位が(1/162=)1/256というように桁が小さくなるごとに1/16ずつ小さくなっていきます。

  2/16 + 4/256 + 8/4096

= 2/16 + 4/256 + 1/512

= (64 + 8 + 1)/512

= 73/512


【答え】(エ)


関数(スライム親分 HP15)

【問題】Random(n)は、0以上n未満の整数を一様な確率で返す関数である。整数型の変数A、B及びCに対して次の一連の手続を実行したとき、Cの値が0になる確率はどれか。

A = Random(10) 

B = Random(10) 

C = A-B 

(ア)1/100 

(イ)1/20 

(ウ)1/10 

(エ)1/5

IT-SHARK

【攻略ヒント】
Random(10)の返す値は整数0~9の10通り


【解説】

Random(10)の返す値は整数0~9の10通りです。

これにより、確率の分母となるAとBの組合せ総数は次のように計算できます。

10通り×10通り=100通り

次に確立の分子を求めます。

Cの値が0、すなわち「A-B=0」となるのは、AとBが同じ値のときのみです。

これは、A=B=0,A=B=1,…,A=B=9 というように全部で10通りあります。

したがって、Cの値が0になる確率は、

10通り / 100通り=1/10 となります。


【答え】(エ)


ビットシフト(スライム親分 HP10)

【問題】数値を2進数で表すレジスタがある。このレジスタに格納されている正の整数xを10倍する操作はどれか。ここで,桁あふれは,起こらないものとする。

(ア)xを2ビット左にシフトした値にxを加算し,更に1ビット左にシフトする。

(イ)xを2ビット左にシフトした値にxを加算し,更に2ビット左にシフトする。

(ウ)xを3ビット左にシフトした値と,xを2ビット左にシフトした値を加算する。

(エ)xを3ビット左にシフトした値にxを加算し,更に1ビット左にシフトする。

IT-SHARK

【攻略ヒント】
1ビット左にシフト = 2倍 2ビット左にシフト = 22倍 3ビット左にシフト = 23


【解説】

(ア)正解〇 

① xを2ビット左にシフト

 x × 2^2 = 4x

② xを加算

 4x + x = 5x

③ 1ビット左にシフト

 5x × 2 = 10x

(イ)不正解×

① xを2ビット左にシフト

 x × 2^2 = 4x

② xを加算
 4x + x = 5x

③ 2ビット左にシフト

 5x × 2^2 = 20x

(ウ)不正解×

① xを3ビット左にシフト

 x × 2^3 = 8x

② xを2ビット左にシフト

 4x + x = 5x 

③ ①と②を加算

 8x + 5x = 13x

(エ)不正解×

① xを3ビット左にシフト

x × 2^3 = 8x

② xを加算

8x + x = 9x

③ 1ビット左にシフト

9x × 2 = 18x


【答え】(ア)


論理演算(スライム親分 HP5)


【問題】次に示す手順は,列中の少なくとも一つは1であるビット列が与えられたとき,最も右にある1を残し,他のビットを全て0にするアルゴリズムである。例えば,00101000が与えられたとき,00001000が求まる。aに入る論理演算はどれか。

(手順1)与えられたビット列Aを符号なしの2進数と見なし,Aから1を引き,結果をBとする。

(手順2)AとBの排他的論理和(XOR)を求め,結果をCとする。

(手順3)AとCのaを求め,結果をAとする。

(ア)排他的論理和(XOR)

(イ)否定論理積(NAND)

(ウ)論理積(AND)

(エ)論理和(OR)

IT-SHARK

【攻略ヒント】
落ち着いて問題の手順通りに解けば正解できるよ!
この問題が解ければボスクリアだ!


【解説】

00101000・・・(A)

(手順1)

 A - 1 = B

  00101000 - 1
= 00100111・・・(B)

(手順2)

 A XOR B = C

(手順3)

00101000
00100111(XOR
00001111・・・(C)

(ア)不正解×

00101000
00001111(XOR
00100111

(イ)不正解×

00101000
00001111(NAND
11110111

(ウ)正解〇

00101000
00001111(AND
00001000

(エ)不正解×

00101000
00001111(OR
00101111


【答え】(ウ)


ゲームクリア

この記事が気に入ったら
いいね または フォローしてね!

よかったらシェアしてね!
  • URLをコピーしました!

コメント

コメントする

目次