技術士の過去問
平成29年度(2017年)
基礎科目「情報・論理に関するもの」 問8
このページは閲覧用ページです。
履歴を残すには、 「新しく出題する(ここをクリック)」 をご利用ください。
問題
技術士 第一次試験 平成29年度(2017年) 基礎科目「情報・論理に関するもの」 問8 (訂正依頼・報告はこちら)
計算機内部では、数は0と1の組合せで表される。絶対値が2-126以上2128未満の実数を、符号部1文字、指数部8文字、仮数部23文字の合計32文字の0, 1からなる単精度浮動小数表現として、次の手続き1~4によって変換する。
1. 実数を士2a×(1+x)、0≦x<1形に変形する。
2. 符号部1文字は符号が正( + )のとき0、負( - )のとき1とする。
3. 指数部8文字はa+127の値を2進数に直した文字列とする。
4. 仮数部23文字はXの値を2進数に直したとき、小数点以下に表れる23文字分の0, 1からなる文字列とする。
例えば、-6.5=-22×( 1+0.625 )なので、符号部は符号が負(−)より1、
指数部は2+127=129=( 10000001 )2より10000001、
仮数部は0.625=1/2+1/23=( 0.101 )2より10100000000000000000000である。
したがって、実数ー6.5は、
符号部1、指数部10000001、仮数部10100000000000000000000
と表現される。
実数13.0をこの方式で表現したとき、最も適切なものはどれか。
1. 実数を士2a×(1+x)、0≦x<1形に変形する。
2. 符号部1文字は符号が正( + )のとき0、負( - )のとき1とする。
3. 指数部8文字はa+127の値を2進数に直した文字列とする。
4. 仮数部23文字はXの値を2進数に直したとき、小数点以下に表れる23文字分の0, 1からなる文字列とする。
例えば、-6.5=-22×( 1+0.625 )なので、符号部は符号が負(−)より1、
指数部は2+127=129=( 10000001 )2より10000001、
仮数部は0.625=1/2+1/23=( 0.101 )2より10100000000000000000000である。
したがって、実数ー6.5は、
符号部1、指数部10000001、仮数部10100000000000000000000
と表現される。
実数13.0をこの方式で表現したとき、最も適切なものはどれか。
- 符号部:1 指数部:10000001 仮数部:10010000000000000000000
- 符号部:1 指数部:10000010 仮数部:10100000000000000000000
- 符号部:0 指数部:10000001 仮数部:10010000000000000000000
- 符号部:0 指数部:10000010 仮数部:10100000000000000000000
- 符号部:0 指数部:10000001 仮数部:10100000000000000000000
正解!素晴らしいです
残念...
この過去問の解説 (3件)
01
与えられた条件と例を参考に、最も適切な表現を選択します。
例を参考にすると、13は以下のように表すことができます。
13 = 2³ × (1+0.625) なので、符号部は符号が正(+)より0、
指数部は3+127=130=(10000010)₂より10000010、
仮数部は0.625=1/2+1/2³=(0.101)₂より10100000000000000000000である。
したがって、実数13は、
符号部0、指数部10000010、仮数部10100000000000000000000
と表現されることから、
4が正解です。
参考になった数12
この解説の修正を提案する
02
実数13.0について手続き1〜4を行い、符号部、指数部、仮数部を求める問題です。
解説では、2のx乗を2^xと記載します。
13.0 = 8 × 1.625 なので、
13 = 2^3 × (1+0.625) となります。符号部は正なので0です。
指数部は 3 + 127 = 130 = 10000010(2進数)なので、10000010、
対数部は 0.625 = 1/2 + (1/2)^3 = 0.101(2進数)なので、
10100000000000000000000 です。
したがって、符号部:0、指数部:10000010、
仮数部:10100000000000000000000 なので、4が正解です。
参考になった数6
この解説の修正を提案する
03
<正解>4
[解説]
計算機内部での単精度浮動小数表現の問題です。
問題文に与えられた条件により、
実数13.0は以下のとおり表すことができます。
1)-6.5=-22×( 1+0.625 )であることから、
13 = 2 × 6.5
13 = 2 ×22×( 1+0.625 )となり、
13 = 2³ × (1+0.625)
と表すことができます。
2)符号部は
符号が正(+)であることから、 0 となります。
3)指数部は、
3 + 127 = 130 = (10000010)₂であることから
10000010 となります。
4)仮数部は、
0.625=1/2+1/2³=(0.101)₂であることから
10100000000000000000000となります。
以上のことから、
実数13は、
符号部0
指数部10000010
仮数部10100000000000000000000
と表現されることになります。
したがって、4が正解となります。
参考になった数5
この解説の修正を提案する
前の問題(問7)へ
平成29年度(2017年)問題一覧
次の問題(問9)へ