総視聴再生時間43万分以上(2017年5月13日現在)の動画で基本情報技術者試験の過去問&キーワード解説!スキマ時間に動画!〜これじょIT〜

PR広告

平成27年度秋基本情報技術者試験 午後問2 ハードウェア 設問1

TOP :

平成27年度秋基本情報技術者試験 午後問2 ハードウェア

浮動小数点数に関する次の記述を読んで、設問1~4に答えよ。

 α = 0、又は1 ≦ |α| < 2を満たすα、及び-126 ≦ β ≦ 127を満たすβを用いて α × 2β の形で表記される浮動小数点数を、図1に示す32ビット単精度浮動小数点形式の表現(以下、単精度表現という)で近似する。

平成27年度秋応用情報技術者試験午後過去問2 ハードウェア

(1) 符号部(ビット番号31)

αの値が正のとき0、負のとき1が入る。

(2) 指数部(ビット番号30~23)

βの値に127を加えた値が2進数で入る。

(3) 仮数部(ビット番号22~0)

lαlの整数部分 1 を省略し、残りの小数部分が、ビット番号 22 に小数第1位が来るような2進数で入る。このとき、仮数部に格納できない部分については切り捨てる。

(4) αの値が0の場合、符号部、指数部、仮数部ともに0とする。

 なお、値の記述として、単にαと記述した場合は、αは10進数表記であり、(α)n と記述した場合はαがn進数表記であることを示す。例えば、(0.101)2は0.625と同じ値を表す。また、00...0という表記は、0が連続していることを表す。

設問1

0.625 を単精度表現したときに指数部に入る値として正しい答えを、解答群の中から選べ。

解答群

  • ア (00)16
  • イ (7E)16
  • ウ (7F)16
  • エ (FE)16
  • オ (FF)16
解説

まず、0.625を2進数にします。2-xとなるように、0.625を分解します。

(下記は単精度表現のルールと思ってください。やり方そのものを覚える必要があります。ここがわかりにくいところだと思います。)

0.625

= 0.5 + 0.125

= 1 × 2-1 + 0 × 2-2 + 1 × 2-3

= (0.1)2 + (0.001)2

= (0.101)2

= (1.01)2 × 2-1 // 2進数の整数部が"1"となるように正規化しています(2-1をかける)

2-1が指数部となり、-1の部分に127を足します。

-1 + 127 = 126

10進数から16進数にするために、まず2進数にすると

126 = (01111110)2

これをさらに16進数にします

(01111110)2 = (7E)16

となるので正解は「イ (7E)16」となります!

ちなみに仮数部は1.01の.01の部分なので

01000000000000000000000

となります!

設問2

次の単精度表現された数値として正しい答えを、解答群の中から選べ。

平成27年度秋応用情報技術者試験午後過去問2 ハードウェア

  • ア 0.125
  • イ 0.25
  • ウ 0.375
  • エ 0.5
  • オ 0.75
  • カ 1.5
解説

0 01111110 10000000000000000000000

0 符号部が0なのでプラスになります

01111110 指数部

10000000000000000000000 仮数部

指数部の"01111110"を10進数にすると126となります。この値から127を引くと"-1"です。

上記より、1.1 × 2-1となることが分かります。

1.1 × 2-1 = (0.11)2

これを10進数にします

(0.11)2

= 1 × 2-1 + 1 × 2-2

= 0.5 + 0.25

= 0.75

答えは「オ 0.75」です!

設問3

次の記述中の【 】に入れる正しい答えを、解答群の中から選べ。

 二つの浮動小数点数AとBの加算を行う。

平成27年度秋応用情報技術者試験午後過去問2 ハードウェア

AとBの加算を、次の①、②の手順で行う。

① 指数部の値を大きい方に合わせる。

② Aが(1.1)2 × 25であることから、Bを(-(【 a 】)2) × 25とする。 加算を行う。

 ((1.1)2 + (-(【 a 】)2)) × 25 = (1.1)2 × 2【 b 】

a に関する解答群

  • ア 0.001
  • イ 0.01
  • ウ 0.011
  • エ 0.1
  • オ 0.11
  • カ 1.1

b に関する解答群

  • ア 3
  • イ 4
  • ウ 5
  • エ 6
  • オ 130
  • カ 131
  • キ 132
解説

問題文の手順どおりに計算をします。

B を2進数にします。

指数部が"10000011"

仮数部が"10000000000000000000000"

です。指数部を2進数にすると"131"。127を引くと"4"となります。

指数部と仮数部より従って、-1.1 × 24となります。問題文にある通りにするため、24を25にします。すると1.1の部分が0.11となります。従って

-(0.11)2 × 25

a の答えは「オ 0.11」となります。

続けて

加算をします。

Aが(1.1)2 × 25

Bが-(0.11)2 × 25

であり

(1.1)2 - (0.11)2

= (0.11)2

となります。

AとBの加算の結果は

(0.11)2 × 25

となります。25を24にすると(0.11)2は(1.1)2となるので

(1.1)2 × 24

bの答えは「イ 4」となります!

設問4

次の記述中の【 】に入れる正しい答えを、解答群の中から選べ。  

設問3のAについてA×10の値は、次の①~③の手順で求めることができる。

① A×8の値を求める。

A×8 = (1.1)2 × 25 × 8=(1.1)2 × 25 × 23 = (1.1)2 × 28

② A×2の値を同様に求める。

③ ①と②の結果を加算する。

 加算結果を単精度表現すると、【 c 】になる。

c に関する解答群

平成27年度秋応用情報技術者試験午後過去問2 ハードウェア

解説

A×8

= (1.1)2 × 25 × 8

= (1.1)2 × 25 × 23

= (1.1)2 × 28

A×2

= (1.1)2 × 25 × 2

= (1.1)2 × 25 × 21

= (1.1)2 × 26

加算するために26を28にします。すると、(1.1)2は(0.011)2となります。

(0.011)2×28

(1.1)2 × 28 + (0.011)2×28

= (1.111)2×28

28の指数部8に127を加えると135になり、これを2進数にすると10000111となります。

1.111の仮数部は0.111で、符号部がプラスなので単精度表現すると

0 10000111 11100000000000000000000

正解は「ウ」です!

TOP :

タグ: ,,

PR広告

フェイスブックコメント

平成28年度秋 基本情報技術者試験 午後 テキスト・動画解説

平成28年度秋 基本情報技術者試験 午前 テキスト・動画解説

平成28年度春 基本情報技術者試験 午後 テキスト・動画解説

平成28年度春 基本情報技術者試験 午前 テキスト・動画解説

平成27年度秋 基本情報技術者試験 午後 テキスト・動画解説

平成27年度春 基本情報技術者試験 午後 テキスト・動画解説

平成27年度春 基本情報技術者試験 午前 テキスト・動画解説

平成26年度秋 基本情報技術者試験 午前 テキスト・動画解説

平成26年度春 基本情報技術者試験 午前 テキスト・動画解説