【確認問題集:情報処理編】〜IT未経験者の第四関門〜

【確認問題集:情報処理編】〜IT未経験者の第四関門〜
ハテオ君

情報処理についてある程度理解できたからアウトプットしたいな!

そんな方は今回へ向けてアウトプット素材をご準備しました。

本日の対象者

  • IT未経験からIT業界へ挑戦しようとしている方
  • 情報処理の基礎知識を持っている自信のある方
  • アウトプットとして問題集を活用したい方
  • IT資格を取得しようとしている方

今回の確認問題は以下ステップの順番で問題を作成しています。

今回の確認問題

  • 確認問題①:基数変換
  • 確認問題②:補数と少数点と誤差
  • 確認問題③:シフト演算
  • 確認問題④:計測と制御
  • 確認問題④:論理演算と論理回路

また各問題の箇所に回答解説と詳細記事を貼っていますので是非活用してください。

それでは早速挑戦していきましょう!

黄島 成

確認問題①:基数変換

確認問題

情報処理の確認問題①

「次へ」で問題スタート!

①解説

【問題①】

2進数の1.1011と1.1101を加算した結果を10進数で表したものはどれか。

:3.1
不正解×
:3.375
不正解×
 :3.5
正解○
:3.8
不正解×

【解説】

まずは1.1011と1.1101を足し算します。

11 111←桁上がり 
1.1011
+ 1.1101
=11.1000

次に11.1000を10進数へ変換します。

11. 1 0 0 0
220. 2-12-22-32-4←2進数の重み

最後に1になっている箇所の重みを全て足します

(1×21)+(1×20)+(1×2-1)=3.5

つまり答えは「3.5」となる。

②解説

【問題②】

10進数の分数1/32を16進数の小数で表したものはどれか。

:0.01
不正解×
:0.02
不正解×
:0.05
不正解×
:0.08
正解○

【解説】

16進小数の各桁は、小数点の右に進むにつれて、

0.1(16)→1/16(10),
0.01(16)→1/256(10),
0.001(16)→1/4096(10),
0.00…00(16)→1/16n(10)

というように、16-nを表しています。
1/32の分母を16進小数の小数点第2位の1/256と通分すると8/256になるので、小数点第2位を8にした0.08が正解となります。

つまり答えは「」となる。

③解説

【問題③】

0000~4999 のアドレスをもつハッシュ表があり、レコードのキー値からアドレスに変換するアルゴリズムとして基数変換法を用いる。キー値が55550のときのアドレスはどれか。ここで基数変換法とは、キー値を11進数とみなし、10進数に変換した後、下4桁に対して0.5を乗じた結果(小数点以下は切捨て)をレコードのアドレスとする。

:0260
正解○
:2525
不正解×
:2775
不正解×
:4405
不正解×

【解説】

まずキー値の55550を10進数に変換します

(5×114)+(5×113)+(5×112)+(5×111
→73205+6655+605+55=80520

10進数に変換すると80520となる。この下4桁に0.5を乗じた結果が答えとなるため、

0520×0.5
=0260

つまり答えは「0260」となる。

基数変換についておさらいがしたい方「【基数変換】各進数の基数と重み〜基数変換の計算方法と変換方法を解説!」をご覧ください。

確認問題②:補数と少数点と誤差

確認問題

情報処理の確認問題②

「次へ」で問題スタート!

①解説

【問題①】

2の補数で表された負数10101110の絶対値はどれか。

:01010000
:01010001
:01010010
:01010011

【解説】

補数とは、ある数を決められた数にするための、補う数という意味。

例:10進数3桁の「123」 という数値の場合

  • 9の補数=876
  • 10進数の「123」に9の補数を補うと999となる。
  • 10の補数は=877
  • 10進数の「123」に10の補数を補うと1000となる。

2の補数表現には、2回同じ処理を繰り返すと、元のビット列に戻るという特徴があるのでこれを利用して正解を求めます。

  • まず全ビットを反転させる。10101110→0101 0001
  • そして1を加えます。0101 0001 +1→0101 0010

つまり答えは「」となる。

②解説

【問題②】

負数を2の補数で表すとき、すべてのビットが1であるnビットの2進数"1111…11"が表す数値又はその数式はどれか。

:-(2n-1-1)
不正解×
:-1
正解○
:0
不正解×
:2n-1
不正解×

【解説】

2の補数表現された負数の絶対値を求めるには、2進数の整数を2の補数表現に変換するために行う「全ビットを反転してから1を足す」手順をもう一度実行します。

例えば、全ビットが1である負数「1111」で考えてみると、

  • 全ビットを反転。1111→0000
  • 1を足す。0000→0001

上記のように、絶対値が1の負数、すなわち2の補数表現での1111は10進数では「-1」であることがわかります。

同様に、

  • 全ビットを反転 1111 1111→0000 0000
  • 1を足す 0000 0000→0000 0001

さらに、

  • 111 1111 1111→000 0000 0000
  • 1を足す 000 0000 0000→000 0000 0001

などのようにどれだけ桁が増えても2の補数で表現さた"1111…11"は-1を表していることになります。

つまり答えは「」となる。

③解説

【問題③】

0以外の数値を浮動小数点表示で表現する場合、仮数部の最上位桁が0以外になるように、桁合わせする操作はどれか。ここで、仮数部の表現方法は、絶対値表現とする。

:切上げ
不正解×
:切捨て
不正解×
:桁上げ
不正解×
:正規化
正解○

【解説】

浮動小数点表示における正規化は、仮数部と指数部を調整することで、仮数部の最上位桁が0以外になるように桁合わせする操作です。

正規化の目的は、有効桁数を最大化し、丸め誤差をできるだけ少なくすることです。

つまり答えは「」となる。

補数と小数点と誤差についておさらいがしたい方「【補数と小数点と誤差】補数と小数点の基礎〜コンピュータ内部の誤差!」をご覧ください。

確認問題③:シフト演算

確認問題

情報処理の確認問題③

「次へ」で問題スタート!

①解説

【問題①】

32ビットのレジスタに16進数ABCDが入っているとき、2ビットだけ右に論理シフトしたときの値はどれか。

:2AF3 正解〇
:6AF3 不正解×
:AF34 不正解×
:EAF3 不正解×

【解説】

16進数ABCDを2進数に変換すると次のようなビット列になります。

1010 1011 1100 1101

論理シフトでは空いたビットを0で埋めるので2ビット分だけ右に論理シフトすると、結果は以下通り。

0010 1010 1111 0011

最後にこれを4ビットずつまとめて16進数に戻すと答えは「2AF3」になります。

つまり答えは「」となる。

②解説

【問題②】

10進数の演算式7÷32の結果を2進数で表したものはどれか。

:0.001011  不正解×
:0.001101  不正解×
:0.00111  正解〇
:0.0111  不正解×

【解説】

7÷32は7/32と表記できるので、これを3つに分解します。

4/32+2/32+1/32

さらに約分を施し、

1/8+1/16+1/32

次のように分母を2の累乗で表すと、

1/23+1/24+1/25

上記のように変換できます。これを2進小数で表すと「0.00111」となります。

つまり答えは「」となる。

③解説

【問題③】

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

:xを2ビット左にシフトした値にxを加算し、更に1ビット左にシフトする。
正解〇
xを2ビット左にシフト→xの4倍
xを加算→xの5倍
上記の値を1ビット左にシフト→5倍の2倍=xの10倍

:xを2ビット左にシフトした値にxを加算し、更に2ビット左にシフトする。
不正解×
xを2ビット左にシフト→xの4倍
xを加算→xの5倍
上記の値を2ビット左にシフト→5倍の4倍=xの20倍

:xを3ビット左にシフトした値と、xを2ビット左にシフトした値を加算する。
不正解×
xを3ビット左にシフト→xの8倍
xを2ビット左にシフト→xの4倍
上記の値を加算→8倍+4倍=xの12倍

:xを3ビット左にシフトした値にxを加算し、更に1ビット左にシフトする。
不正解×
xを3ビット左にシフト→xの8倍
xを加算→xの9倍
上記の値を1ビット左にシフト→9倍の2倍=xの18倍

【解説】

2進数のビット列は、左にnビットシフトすると元の値と比べて「2n」、右にnビットシフトすると「1/2n倍(2-n倍)」になるという性質があります。

つまり、2ビット左にシフトすると元データの4倍、3ビット左にシフトすると元データの8倍の値になります。

問題では元データxを10倍にするという事ですので上記の基本を踏まえた上で上記の問題を見てみましょう。

シフト演算についておさらいがしたい方「【シフト演算】シフト演算の基礎知識〜論理シフトと算術シフトまで解説!」をご覧ください。

確認問題④:計測と制御

確認問題

情報処理の確認問題④

「次へ」で問題スタート!

①解説

【問題①】

音声などのアナログデータをディジタル化するために用いられるPCMにおいて、音の信号を一定の周期でアナログ値のまま切り出す処理はどれか。

:暗号化 不正解×
:標本化 正解〇
:符号化  不正解×
:量子化  不正解×

【解説】

アナログデータをデジタルデータに変換することを「A/D 変換」と呼ぶ、代表的な変換方式としてPCM方式が現在の主流です。

変換の流れ

  • ①:標本化
  • 時間的に連続したアナログ信号の波形を、一定の時間間隔で測定
  • ②:量子化
  • 測定した信号をあらかじめ決められた一定の間隔(28、216、232など)に区切り数値化
  • ③:符号化
  • 量子化された値を2進数のデジタル符号に変換

音の信号を一定の周期で切り出す処理は、最初に行う「標本化」です。

つまり正解は「」となる。

②解説

【問題②】

設計するときに、状態遷移図を用いることが最も適切なシステムはどれか。

:月末及び決算時の棚卸資産を集計処理する在庫棚卸システム
不正解×
:システム資源の稼動状態を計測し、レポートとして出力するシステム資源稼動状態計測システム
不正解×
:水道の検針データから料金を計算する水道料金計算システム
不正解×
:設置したセンサの情報から、温室内の環境を最適に保つ温室制御システム
正解〇

【解説】

状態遷移図は、有限個の状態と遷移と動作の組み合わせからなる数学的モデルである有限オートマトンを視覚的に表現するために用いられる図です。

システムに生じた事象をもとに、現在の状態からどの状態に変化するかを一意に定義することが可能なシステムを記述するのに適しています。

温室制御システムなどでよく利用されています。

その理由

センサで取得した温度が設定より低ければ温室内の温度を上げ、センサで取得した温度が設定より高ければ温室内の温度を下げるというように、センサからの入力情報に応じて温度制御を変化させる必要があるため、状態遷移図を使うのがベストです。

つまり答えは「」となる。

③解説

【問題③】

300 円の商品を販売する自動販売機の状態遷移図はどれか。ここで、入力と出力の関係を"入力/出力"で表し、入力の"a"は"100円硬貨"を、"b"は"100 円硬貨以外"を示し、S0~S2 は状態を表す。入力が"b"の場合はすぐにその硬貨を返却する。また、終了状態に遷移する際、出力の"1"は商品の販売を、"0"は何もしないことを示す。

 正解〇

 初期状態から100円硬貨が2枚投入された時点で商品が販売されてしまうため不正解×

 初期状態から100円硬貨が2枚投入された時点で商品が販売されてしまうため不正解×

 初期状態から100円硬貨を幾ら投入しても次の状態に遷移しないため不正解×

【解説】

問題文より入力/出力の組合せがどのような意味をもつかを考えてみます。

  • a/1:100円硬貨が投入され、商品を販売する
  • a/0:100円硬貨が投入され、何もしない
  • b/1:100円硬貨以外が投入され、商品を販売する
  • b/0:100円硬貨以外が投入され、何もしない

300円の商品を販売する際には100円硬貨が3枚投入された時点で商品を販売するので、投入金額0円の初期状態S0から"a/0"が2回続いた後に"a/1"が発生することになります。

また100円硬貨以外が投入された場合は投入金額が変化しないため、現在の状態に留まります。

この手順を適切に表しているのが「」の状態遷移図です。

計測と制御についておさらいがしたい方「【計測と制御】アナログとデジタルの変換技術と方式〜制御技術と機械学習!」をご覧ください。

確認問題④:論理演算と論理回路

確認問題

情報処理の確認問題⑤

「次へ」で問題スタート!

①解説

【問題①】

二つの入力と一つの出力をもつ論理回路で、二つの入力A、Bがともに1のときだけ、出力xが0になるものはどれか。

:AND回路 
不正解×:AND回路は、二つの入力が共に1のときだけ1を出力する回路です。
:NAND回路
正解〇
:OR回路
不正解×:OR回路は、二つの入力のうち少なくとも一方が1のときに1を出力し、二つとも0のときだけ0を出力する回路です
:XOR回路
不正解×:

【解説】

NAND回路の"NAND"はNOTANDを表し、AND回路の出力を反転させた回路です。

そのためNAND回路は、二つの入力が共に1のときだけ0を出力し、その他の場合は1を出力します。

つまり答えは「」となる。

②解説

【問題②】

8ビットのビット列の下位4ビットが変化しない操作はどれか。

:16進表記0Fのビット列との排他的論理和をとる。
正解〇
:16進表記0Fのビット列との否定論理積をとる。
不正解×
:16進表記0Fのビット列との論理積をとる。
不正解×
:16進表記0Fのビット列との論理和をとる。
不正解×

【解説】

各論理演算は次のような操作を意味しています。

  • リスト
  • 論理積(AND)
  • 2つのビットが両方とも1のときにだけ1を出力し、それ以外は0を出力
  • 論理和(OR)
  • 2つのビットのどちらかが1であれば1を出力し、両方とも0のときは0を出力
  • 排他的論理和(XOR)
  • 2つのビットが異なるときは1を出力し、同じときは0を出力
  • 否定論理積(NAND=Not AND)
  • AND演算の結果を反転した演算で、2つのビットが両方とも1のときにだけ0を出力し、それ以外は1を出力

16進表記0Fは2進表記で「00001111」です。

この「00001111」と8ビットのビット列に対して、それぞれの論理演算を行うことで正解を導きます。

ここでは演算対象となる8ビットのビット列に、上位4ビットと下位4ビットそれぞれで1と0の変化が把握しやすい「10101010」を用いています。

つまり答えは「」となる。

③解説

【問題③】

図の論理回路と等価な回路はどれか

 OR回路なので不正解×

 AND回路なので不正解×

 正解〇


 NOR回路なので不正解×

【解説】

設問の回路図について、それぞれAとBが0又は1の値をとった時に、各回路の演算結果であるYの値がどうなるかを考えます。

設問の回路記号はNAND回路を表しています。

結果の真理値表は、2つ入力が同じであれば"0"、異なれば"1"を出力するXOR回路の真理値表と一致します。そのため正解は「」のXOR回路となります。

論理演算と倫理回路についておさらいがしたい方「【論理演算と論理回路】各種回路の種類とビット演算〜半加算器と全加算器」をご覧ください。

まとめ

【確認問題集:情報処理編】〜IT未経験者の第四関門〜まとめ

問題は正解が多かったですか?それとも不正解が多かったですか?

正解の方が多かった方はソフトウェアの知識は問題ないでしょう。

逆に不正解の方が多かった方はまだ知識不足なので基礎知識をもう一度おさらいして問題集で挑戦してみましょう。

最後まで読んでいただきありがとうございました!

今回の内容が、役に立ったな!と思ったらシェア&ブクマ登録よろしくお願いします。

また、質問や問い合わせに関しては、コメント欄かお問い合わせフォームを活用ください。

それではまたお会いしましょう。

黄島 成

-情報処理
-,