1. 基本情報技術者講座トップページ
  2. 基本情報技術者試験過去問題
  3. 基本情報技術者平成19年春期問1から問10
  4. 問3解説
IT関連の練習問題(ITキャパチャージ)
リクルートが運営するキーマンズネットに無料会員登録することで、基本情報技術者で出題されるIT関連の問題を解くことができます。また、基本情報技術者試験の勉強で用語を調べるときにIT単語帳は簡単に調べられほとんどの用語をカバーしているのでたいへん便利です。基本情報技術者試験合格のためにぜひ、無料会員登録をしておきたいサイトです。

基本情報技術者試験平成19年春期問3解説

解答:イ

解答群の16進数を10進数に変換し、その数値を4倍して16ビットの表現範囲を越えるものを探せばよい。

16ビットの2進数の表現範囲は、−216−1から216-1−1である。したがって、32767から−32768が表現できる範囲である。

ア 1FFF

2進数に変換する

(1FFF)16=(0000 1111 1111 1111)2

最上位のビットが0であるから正の数値である。したがって、このまま10進数に変換する。

(1FFF)16=(8191)10

8191×4=32764

2進数16ビットの表現可能範囲である。

イ DFFF

2進数に変換する

(DFFF)16=(1101 1111 1111 1111)2

最上位のビットが1であるから負の数値である。したがって、この2進数の2の補数を求める。2の補数は、2進数の全ビットの1と0を反転させた1の補数に1を加えたものである。

1101 1111 1111 1111
0010 0000 0000 0000(1の補数)
0010 0000 0000 0001(2の補数)

10進数に変換すると8193であるから、この(DFFF)16は−8193である。

−8193×4=−32772

2進数16ビットの表現可能範囲を超えるのであふれが生じる。

ウ (E000)16

2進数に変換する。

(E000)16=(1110 0000 0000 0000)2

最上位のビットが1であるから負の数値である。したがって、この2進数の2の補数を求める。2の補数は、2進数の全ビットの1と0を反転させた1の補数に1を加えたものである。

1110 0000 0000 0000
0001 1111 1111 1111(1の補数)
0010 0000 0000 0000(2の補数)

10進数に変換すると8192であるから、この(E000)16は−8192である。

−8192×4=−32768

2進数16ビットの表現可能範囲である。

エ (FFFF)16

2進数に変換する。

(FFFF)16=(1111 1111 1111 1111)2

最上位のビットが1であるから負の数値である。したがって、この2進数の2の補数を求める。2の補数は、2進数の全ビットの1と0を反転させた1の補数に1を加えたものである。

1111 1111 1111 1111
0000 0000 0000 0000(1の補数)
0000 0000 0000 0001(2の補数)

10進数に変換すると1であるから、この(FFFF)16は−1である。

−1×4=−4

2進数16ビットの表現可能範囲である。