2016年12月4日日曜日

[平成27年度秋] 午後 問2 解説

[問題文・解答]


平成27年度10月に実施された基本情報技術者試験の午後試験の問題・解答はIPA公式ページからダウンロード出来ます。(以下リンク)

[問題概要]


この問題は、選択問題で問2〜問7のうち4問を選択する必要があります。
出題分野はハードウェアで、問題の題材は浮動小数点定数です。
浮動小数点定数の単精度表現について問われます。二進数の扱いについてよく理解していないと解答が厳しい問題です。


[設問1]

0.625を設問のα×2^βの形式で表すと、次式のように
0.625 = 0.5 + 0.125 = 2-1 + 2-3
= (0.101)2 = (1.01)2×2-1

よって、符号部は正なので0、仮数部は0100..00となります。
指数部は、β=-1なので
-1+127 = 126 = (01111110)2 = (7E)16
となるため、「イ」が正解です。

[答] イ

[設問2]


設問の単精度表現より
α=1.1
β + 127 = (01111110)2 =126  → β=-1
(1.1)2×2-1 = (0.11)_2 = 0.5 + 0.25 = 0.75
となるため、「オ」が正解です。

[答] オ

[設問3]


a) Bの単精度表現より、符号部は負であり
α = 1.1
β = (10000011)2 - (01111111)2 = (0000100)2 = 4
であるため、指数値の桁を1つ大きくすると
- (1.1)× 24 = - (0.11)× 25
と表せるため「オ」が正解です。

b) a)の値を用いて
 ( (1.1)2 + (- (0.11)2 ) ) × 25
= (0.11)2 × 25 = (1.1)2 × 24
よってbには4が当てはまるため「イ」が正解です。

[答] a) オ b) イ

[設問4]


A×2 = (1.1)× 2× 2 = (1.1)2 × 26 = (0.011)2 × 28

A×8 + A×2 = ( (1.1)2 + (0.011)2 ) × 28 = (1.111)× 28
となる。これはα=1.111となるため、符号部は0、仮数部は11100..00
また、指数部は
β = 8 + 127 = 135 = (10000111)2
より10000111となるため、「ウ」が正解です。

[答] c) ウ

上記の解説は問題と解答を元に自分なりの考え方を記述しており、間違っている部分もあるかと思いますので、ご了承願います。また、誤りについては正しい考え方をご指摘・ご教授頂けると助かります。


0 件のコメント:

コメントを投稿