情報処理技術者試験 過去問(基礎理論-離散数学) -情報処理シンプルまとめ

情報処理技術者試験 過去問(基礎理論-離散数学)のブログのアイキャッチ画像 基礎理論

 情報処理技術者試験(今のところは基本情報技術者試験)の過去問(基礎理論-離散数学)を集めて,シンプルにまとめています。2進数や基数変換,数値表現(2の補数,固定小数点数,浮動小数点数など),集合と論理演算・論理回路(和集合,積集合,補集合,論理和,論理積,否定,排他的論理和,ビット列の操作(ビットの反転など),真理値表,ベン図など),算術演算と誤差(シフト演算,桁落ち,情報落ちなど)について,理解度を確認することができます。解けなかった問題や,完全に理解できていない問題については,【参考】にあるリンク先ページを読んで,もう一度,解いてみてください。難しい問題もあると思いますが,繰り返し解くことにより,だんだんと身に付いてきますので,根気よく頑張りましょう。

  1. 平成26年度 基本情報技術者試験 春期 午前 問1
  2. 平成24年度 基本情報技術者試験 春期 午前 問1
  3. 平成26年度 基本情報技術者試験 秋期 午前 問1
  4. 平成22年度 基本情報技術者試験 春期 午前 問1
  5. 令和5年度 基本情報技術者試験 公開問題 科目A 問1
  6. 平成30年度 基本情報技術者試験 秋期 午前 問1
  7. 平成22年度 基本情報技術者試験 秋期 午前 問1
  8. 平成26年度 基本情報技術者試験 秋期 午前 問2
  9. 平成21年度 基本情報技術者試験 春期 午前 問2
  10. 平成24年度 基本情報技術者試験 秋期 午前 問4
  11. 平成23年度 基本情報技術者試験 秋期 午前 問2
  12. 平成21年度 基本情報技術者試験 秋期 午前 問2
  13. 平成29年度 基本情報技術者試験 春期 午前 問2
  14. (令和4年度) 基本情報技術者試験 サンプル問題 科目A 問3
  15. 平成31年度 基本情報技術者試験 春期 午前 問3
  16. 平成22年度 基本情報技術者試験 春期 午前 問2
  17. 平成25年度 基本情報技術者試験 秋期 午前 問1
  18. 平成29年度 基本情報技術者試験 春期 午前 問1
  19. 平成26年度 基本情報技術者試験 春期 午前 問3
  20. 平成23年度 基本情報技術者試験 特別 午前 問1
  21. 平成21年度 基本情報技術者試験 春期 午前 問3
  22. 平成29年度 基本情報技術者試験 春期 午前 問3
  23. (令和4年度) 基本情報技術者試験 サンプル問題 科目A 問1
  24. 平成30年度 基本情報技術者試験 秋期 午前 問2
  25. 平成27年度 基本情報技術者試験 春期 午前 問1
  26. 平成31年度 基本情報技術者試験 春期 午前 問2
  27. 平成26年度 基本情報技術者試験 春期 午前 問2
  28. 平成28年度 基本情報技術者試験 秋期 午前 問1
  29. 令和元年度 基本情報技術者試験 秋期 午前 問2
  30. 平成28年度 基本情報技術者試験 春期 午前 問1
  31. 平成21年度 基本情報技術者試験 春期 午前 問1
  32. 平成29年度 基本情報技術者試験 秋期 午前 問1
  33. 平成24年度 基本情報技術者試験 春期 午前 問2
  34. 平成28年度 基本情報技術者試験 秋期 午前 問4
  35. 平成26年度 基本情報技術者試験 秋期 午前 問3
  36. 平成25年度 基本情報技術者試験 秋期 午前 問2
  37. 平成24年度 基本情報技術者試験 秋期 午前 問1
  38. 平成31年度 基本情報技術者試験 春期 午前 問1
  39. 平成27年度 基本情報技術者試験 秋期 午前 問1
  40. 平成30年度 基本情報技術者試験 春期 午前 問1
  41. 平成25年度 基本情報技術者試験 春期 午前 問1
  42. 平成23年度 基本情報技術者試験 秋期 午前 問1
  43. 平成23年度 基本情報技術者試験 春期 午前 問2
  44. 平成27年度 基本情報技術者試験 春期 午前 問2
  45. 平成22年度 基本情報技術者試験 秋期 午前 問2
  46. まとめ

平成26年度 基本情報技術者試験 春期 午前 問1

 次の10進小数のうち,2進数で表すと無限小数になるものはどれか。

ア 0.05イ 0.125ウ 0.375エ 0.5

【解答】

【解説】

各選択肢の10進小数の値を,それぞれ2進数に変換すると,

「平成26年度 基本情報技術者試験 春期 午前 問1」の解説画像01

となる。

平成24年度 基本情報技術者試験 春期 午前 問1

 次の10進小数のうち,8進数に変換したときに有限小数になるものはどれか。

ア 0.3イ 0.4ウ 0.5エ 0.8

【解答】

【解説】

各選択肢の10進小数の値を,それぞれ8進数に変換すると,

「平成24年度 基本情報技術者試験 春期 午前 問1」の解説画像01

となる。

平成26年度 基本情報技術者試験 秋期 午前 問1

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

ア 0.01イ 0.02ウ 0.05エ 0.08

【解答】

【解説】

10進数の分数132は,

13282568162 = 8 × 16-2

となり,これを16進数に変換すると,

0.08

となる。

【別解】

10進数の分数132は,

132 = 1 ÷ 32 = 0.03125

であり,これを16進数に変換すると,

「平成26年度 基本情報技術者試験 秋期 午前 問1」の解説画像01

となる。

平成22年度 基本情報技術者試験 春期 午前 問1

 16進小数2A.4Cと等しいものはどれか。

ア 25+23+21+2-2+2-5+2-6イ 25+23+21+2-1+2-4+2-5
ウ 26+24+22+2-2+2-5+2-6エ 26+24+22+2-1+2-4+2-5

【解答】

【解説】

16進数1桁は,2進数4桁に対応するので,16進数の各桁を,それぞれ2進数に変換すればよい。

「平成22年度 基本情報技術者試験 春期 午前 問1」の解説画像01

よって,16進小数2A.4Cは,

25 + 23 + 21 + 2-2 + 2-5 + 2-6

と表すことができる。

令和5年度 基本情報技術者試験 公開問題 科目A 問1

 16進小数0.Cを10進小数に変換したものはどれか。

ア 0.12イ 0.55ウ 0.75エ 0.84

【解答】

【解説】

10進数と16進数の対応を表にすると,次のようになる。

「令和5年度 基本情報技術者試験 公開問題 科目A 問1」の解説画像01

よって,16進小数0.Cを10進小数に変換すると,

12 × 16-1121634 = 0.75

となる。

平成30年度 基本情報技術者試験 秋期 午前 問1

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

ア 3132イ 31125ウ 31512エ 73512

【解答】

【解説】

16進数の小数0.248を10進数に変換すると,

2 × 16-1 + 4 × 16-2 + 8 × 16-3

216425684096

21642561512

64 + 8 + 1512

73512

となる。

平成22年度 基本情報技術者試験 秋期 午前 問1

 16進小数3A.5Cを10進数の分数で表したものはどれか。

ア 93916イ 373564ウ 14939256エ 14941256

【解答】

【解説】

10進数と16進数の対応を表にすると,次のようになる。

「令和5年度 基本情報技術者試験 公開問題 科目A 問1」の解説画像01

よって,16進数の小数3A.5Cを10進数に変換すると,

3 × 161 + 10 × 160 + 5 × 16-1 + 12 × 16-2

= 48 + 10 + 51612256

12288 + 2560 + 80 + 12256

14940256

373564

となる。

平成26年度 基本情報技術者試験 秋期 午前 問2

平成21年度 基本情報技術者試験 春期 午前 問2

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

ア 0260イ 2525ウ 2775エ 4405

【解答】

【解説】

キー値が55550のときのアドレスを求めるには,まず,11進数から10進数に変換する必要がある。

5 × 114 + 5 × 113 + 5 × 112 × 5 × 111 + 0 × 110

= 5 × 11 ( 113 + 112 + 11 + 1 )

= 55 ( 1331 + 121 + 11 + 1 )

= 55 × 1464

= 80520

次に,10進数に変換したキー値(80520)から下4桁を取り出す。

80520の下4桁は,0520

そして,この値に0.5を掛けると,キー値が55550のときのアドレスを求めることができる。

520 × 0.5 = 260

「平成26年度 基本情報技術者試験 秋期 午前 問2」の解説画像01

平成24年度 基本情報技術者試験 秋期 午前 問4

 英字の大文字(A~Z)と数字(0~9)を同一のビット数で一意にコード化するには,少なくとも何ビット必要か。

ア 5イ 6ウ 7エ 8

【解答】

【解説】

英字の大文字(A~Z)26種類と,数字(0~9)10種類を合わせた計36種類を表現できるビット数nを求めればよいので,

2n > 36

を満たす最も小さいnの値を求めればよい。

21 = 2

22 = 4

23 = 8

24 = 16

25 = 32

26 = 64

よって,

n = 6

となる。

平成23年度 基本情報技術者試験 秋期 午前 問2

 10進数-5.625を,8ビット固定小数点形式による2進数で表したものはどれか。ここで,小数点位置は3ビット目と4ビット目の間とし,負数には2の補数表現を用いる。

「平成23年度 基本情報技術者試験 秋期 午前 問2」の問題画像01
ア 01001100イ 10100101ウ 10100110エ 11010011

【解答】

【解説】

10進数-5.625を,8ビット固定小数点形式(小数点位置は3ビット目と4ビット目の間,負数は2の補数表現)にすると,

「平成23年度 基本情報技術者試験 秋期 午前 問2」の解説画像01

となる。

ちなみに,5.265を2進数に変換する方法は,次のとおりである(整数部と小数部を,それぞれ変換する)。

「平成23年度 基本情報技術者試験 秋期 午前 問2」の解説画像02

平成21年度 基本情報技術者試験 秋期 午前 問2

 実数aaf×reと表す浮動小数点表示に関する記述として,適切なものはどれか。

ア fを仮数,eを指数,rを基数という。

イ fを基数,eを仮数,rを指数という。

ウ fを基数,eを指数,rを仮数という。

エ fを指数,eを基数,rを仮数という。

【解答】

【解説】

浮動小数点数は,次のように表現される。

「平成21年度 基本情報技術者試験 秋期 午前 問2」の解説画像01

平成29年度 基本情報技術者試験 春期 午前 問2

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

ア 切上げイ 切捨てウ 桁上げエ 正規化

【解答】

【解説】

浮動小数点表示において,仮数部の最上位桁が0以外になるように桁合わせする操作は,正規化という。

(令和4年度) 基本情報技術者試験 サンプル問題 科目A 問3

平成31年度 基本情報技術者試験 春期 午前 問3

 P,Q,Rはいずれも命題である。命題Pの真理値は真であり,命題(not P)or Q 及び命題(not Q)or R のいずれの真理値も真であることが分かっている。Q,Rの真理値はどれか。ここで,X or Y はXとYの論理和,not X はXの否定を表す。

QR

【解答】

【解説】

命題Pの真理値が真,命題(not P)or Q の真理値が真なので,

(not P)or Q = 真

⇒ 偽 or Q = 真

となり,これを満たす命題Qの真理値は,

Q = 真

となる。

また,同様に,命題(not Q)or R の真理値が真なので,

(not Q)or R = 真

⇒ 偽 or R = 真

となり,これを満たす命題Rの真理値は,

R = 真

となる。

平成22年度 基本情報技術者試験 春期 午前 問2

 X及びYはそれぞれ0又は1の値をとる変数である。XYXYの論理演算としたとき,次の真理値表が得られた。XYの真理値表はどれか。

XYX AND (XY)X OR (XY)
0001
0101
1001
1111
ア 「平成22年度 基本情報技術者試験 春期 午前 問2」の問題_選択肢ア_画像01イ 「平成22年度 基本情報技術者試験 春期 午前 問2」の問題_選択肢イ_画像01
ウ 「平成22年度 基本情報技術者試験 春期 午前 問2」の問題_選択肢ウ_画像01エ 「平成22年度 基本情報技術者試験 春期 午前 問2」の問題_選択肢エ_画像01

【解答】

【解説】

X AND (X □ Y)が問の真理値表のような結果になる場合,X□Yの真理値は,

「平成22年度 基本情報技術者試験 春期 午前 問2」の解説画像01

となる。

次に,X OR (X □ Y)が問の真理値表のような結果になる場合,X□Yの真理値は,

「平成22年度 基本情報技術者試験 春期 午前 問2」の解説画像02

となる。

よって,X□Yの真理値は,

「平成22年度 基本情報技術者試験 春期 午前 問2」の解説画像03

となる。

平成25年度 基本情報技術者試験 秋期 午前 問1

 集合(ABC)∪(ABC)を網掛け部分(     )で表しているベン図はどれか。ここで,∩は積集合,∪は和集合,XXの補集合を表す。

ア 「平成25年度 基本情報技術者試験 秋期 午前 問1」の問題_選択肢ア_画像01イ 「平成25年度 基本情報技術者試験 秋期 午前 問1」の問題_選択肢イ_画像01
ウ 「平成25年度 基本情報技術者試験 秋期 午前 問1」の問題_選択肢ウ_画像01エ 「平成25年度 基本情報技術者試験 秋期 午前 問1」の問題_選択肢エ_画像01

【解答】

【解説】

ベン図で考えると,

「平成25年度 基本情報技術者試験 秋期 午前 問1」の解説画像01

となる。

平成29年度 基本情報技術者試験 春期 午前 問1

 集合ABCを使った等式のうち,集合ABCの内容によらず常に成立する等式はどれか。ここで,∪は和集合,∩は積集合を示す。

ア (AB) ∩ (AC) = B ∩ (AC)

イ (AB) ∩ C = (AC) ∩(BC)

ウ (AC) ∪ (BA) = (AB) ∪ (BC)

エ (AC) ∪ (BC) = (AB) ∩ C

【解答】

【解説】

ベン図で考えると,

「平成29年度 基本情報技術者試験 春期 午前 問1」の解説画像01

となる。

平成26年度 基本情報技術者試験 春期 午前 問3

 論理式 ABCABCABCABC と恒等的に等しいものはどれか。ここで,・は論理積,+は論理和,AAの否定を表す。

ア ABCイ ABCABC
ウ ABBCエ C

【解答】

【解説】

ベン図で考えると,

「平成26年度 基本情報技術者試験 春期 午前 問3」の解説画像01

となる。

平成23年度 基本情報技術者試験 特別 午前 問1

平成21年度 基本情報技術者試験 春期 午前 問3

 論理式(AB)・(AC)と等しいものはどれか。ここで,・は論理積,+は論理和,XXの否定を表す。

ア ABACイ ABAC
ウ (AB)・(AC)エ (AB)・(AC)

【解答】

【解説】

まず,問題の論理式をベン図で表すと,

「平成23年度 基本情報技術者試験 春期 午前 問1」の解説画像01

となり,各選択肢の論理式をベン図で表すと,

「平成23年度 基本情報技術者試験 春期 午前 問1」の解説画像02

となる。

平成29年度 基本情報技術者試験 春期 午前 問3

 XYの否定論理積X NAND Yは,NOT(X AND Y)として定義される。X OR YをNANDだけを使って表した論理式はどれか。

ア ((X NAND Y) NAND X) NAND Y

イ (X NAND X) NAND (Y NAND Y)

ウ (X NAND Y) NAND (X NAND Y)

エ X NAND (Y NAND (X NAND Y))

【解答】

【解説】

ベン図で考えると,

「平成29年度 基本情報技術者試験 春期 午前 問3」の解説画像01

となる。

(令和4年度) 基本情報技術者試験 サンプル問題 科目A 問1

 負数を2の補数で表すとき,8ビットの2進正数nに対し-nを求める式はどれか。ここで,+は加算を表し,ORはビットごとの論理和,XORはビットごとの排他的論理和を表す。

ア (n OR 10000000) + 00000001イ (n OR 11111110) + 11111111
ウ (n XOR 10000000) + 11111111エ (n XOR 11111111) + 00000001

【解答】

【解説】

たとえば,-3を例に考えてみる。

「令和4年度 基本情報技術者試験 サンプル問題 科目A 問1」の解説画像01

よって,8ビットの2進正数nに対する-nを求めるには,

① nの各桁のビットを反転する(XOR:排他的論理和)

② ①の値に1(00000001)を加える

という演算を行えばよい。

平成30年度 基本情報技術者試験 秋期 午前 問2

平成27年度 基本情報技術者試験 春期 午前 問1

 次に示す手順は,列中の少なくとも一つは1であるビット列が与えられたとき,最も右にある1を残し,他のビットを全て0にするアルゴリズムである。例えば,00101000が与えられたとき,00001000が求まる。aに入る論理演算はどれか。

手順1 与えられたビット列Aを符号なしの2進数と見なし,Aから1を引き,結果をBとする。

手順2 ABの排他的論理和(XOR)を求め,結果をCとする。

手順3 AC  a   を求め,結果をAとする。

ア 排他的論理和(XOR)イ 否定論理積(NAND)
ウ 論理積(AND)エ 論理和(OR)

【解答】

【解説】

手順1と手順2より,Cは,

となる。

手順3では,最も右にある1を残し,他のビットを全て0にする論理演算であればよいので,

「平成30年度 基本情報技術者試験 秋期 午前 問2」の解説画像02

となる。

平成31年度 基本情報技術者試験 春期 午前 問2

平成26年度 基本情報技術者試験 春期 午前 問2

 最上位をパリティビットとする8ビット符号において,パリティビット以外の下位7ビットを得るためのビット演算はどれか。

ア 16進数0FとのANDをとる。

イ 16進数0FとのORをとる。

ウ 16進数7FとのANDをとる。

エ 16進数FFとのXOR(排他的論理和)をとる。

【解答】

【解説】

適当な8ビットのビット列(ここでは,1100 0101)で考えればよい。

「平成31年度 基本情報技術者試験 春期 午前 問2」の解説画像01

ちなみに,16進数0F,7F,FFのビット列は,

0F ⇒ 0000 1111

7F ⇒ 0111 1111

FF ⇒ 1111 1111

となる。

平成28年度 基本情報技術者試験 秋期 午前 問1

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

ア 16進表記0Fのビット列との排他的論理和をとる。

イ 16進表記0Fのビット列との否定論理積をとる。

ウ 16進表記0Fのビット列との論理積をとる。

エ 16進表記0Fのビット列との論理和をとる。

【解答】

【解説】

適当な8ビットのビット列(ここでは,1100 0101)で考えればよい。

「平成28年度 基本情報技術者試験 秋期 午前 問1」の解説画像01

ちなみに,16進表記0Fのビット列は,

0F ⇒ 0000 1111

となる。

令和元年度 基本情報技術者試験 秋期 午前 問2

 8ビットの値の全ビットを反転する操作はどれか。

ア 16進表記00のビット列と排他的論理和をとる。

イ 16進表記00のビット列と論理和をとる。

ウ 16進表記FFのビット列と排他的論理和をとる。

エ 16進表記FFのビット列と論理和をとる。

【解答】

【解説】

適当な8ビットのビット列(ここでは,1100 0101)で考えればよい。

「令和元年度 基本情報技術者試験 秋期 午前 問2」の解説画像01

ちなみに,16進表記00,FFのビット列は,

00 ⇒ 0000 0000

FF ⇒ 1111 1111

となる。

平成28年度 基本情報技術者試験 春期 午前 問1

平成21年度 基本情報技術者試験 春期 午前 問1

 数値を2進数で格納するレジスタがある。このレジスタに正の整数xを設定した後,“レジスタの値を2ビット左にシフトして,xを加える”操作を行うと,レジスタの値はxの何倍になるか。ここで,あふれ(オーバーフロー)は,発生しないものとする。

ア 3イ 4ウ 5エ 6

【解答】

【解説】

正の整数xを2ビット左にシフトすると,

x × 22 = 4x(xの4倍)

となり,この値にxを加えると,

4x + x = 5x(xの5倍)

となる。

平成29年度 基本情報技術者試験 秋期 午前 問1

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

ア xを2ビット左にシフトした値にxを加算し,更に1ビット左にシフトする。

イ xを2ビット左にシフトした値にxを加算し,更に2ビット左にシフトする。

ウ xを3ビット左にシフトした値と,xを2ビット左にシフトした値を加算する。

エ xを3ビット左にシフトした値にxを加算し,更に1ビット左にシフトする。

【解答】

【解説】

2進数のビット列は,1ビット左にシフトすると2倍(=21倍),2ビット左にシフトすると4倍(=22倍),…,nビット左にシフトすると2n倍になる。

ア x × 22 = 4x

⇒ 4x + x = 5x

⇒ 5x × 21 = 10x

⇒ 10倍

イ x × 22 = 4x

⇒ 4x + x = 5x

⇒ 5x × 22 = 20x

⇒ 20倍

ウ x × 23 = 8x,x × 22 = 4x

⇒ 8x + 4x = 12x

⇒ 12倍

エ x × 23 = 8x

⇒ 8x + x = 9x

⇒ 9x × 21 = 18x

⇒ 18倍

平成24年度 基本情報技術者試験 春期 午前 問2

 非負の2進数b1b2…bnを3倍にしたものはどれか。

ア b1b2…bn0+b1b2…bn

イ b1b2…bn00-1

ウ b1b2…bn000

エ b1b2…bn1

【解答】

【解説】

2進数のビット列は,1ビット左にシフトすると2倍(=21倍),2ビット左にシフトすると4倍(=22倍),…,nビット左にシフトすると2n倍になる。

ア b1b2…bnを1ビット左にシフトした値(2倍)にb1b2…bnを加えた値なので,

b1b2…bnの3倍

の値となる。

イ b1b2…bnを2ビット左にシフトした値(4倍)から1を引いた値となる。

ウ b1b2…bnを3ビット左にシフトした値(8倍)値となる。

エ b1b2…bnを1ビット左にシフトした値に1を加えた値となる。

平成28年度 基本情報技術者試験 秋期 午前 問4

平成26年度 基本情報技術者試験 秋期 午前 問3

 32ビットで表現できるビットパターンの個数は,24ビットで表現できる個数の何倍か。

ア 8イ 16ウ 128エ 256

【解答】

【解説】

32ビットと24ビットの差は,

32 - 24 = 8(ビット)

である。1ビットの場合は,0,1の2(21)種類を,2ビットの場合は,00,01,10,11の4(22)種類を,3ビットの場合は,000,001,010,011,100,101,110,111の8(23)種類を…,というように,1桁増えるごとに表現できるビットパターンは2倍になる。よって,8ビットでは,

28 = 256(倍)

となる。

平成25年度 基本情報技術者試験 秋期 午前 問2

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

ア 2AF3イ 6AF3ウ AF34エ EAF3

【解答】

【解説】

16進数ABCDを2進数に変換すると,

「平成25年度 基本情報技術者試験 秋期 午前 問2」の解説画像01

となり,この値を2ビット右に論理シフトすると,

「平成25年度 基本情報技術者試験 秋期 午前 問2」の解説画像02

となる。この値を16進数に変換すると,

「平成25年度 基本情報技術者試験 秋期 午前 問2」の解説画像03

となる。

平成24年度 基本情報技術者試験 秋期 午前 問1

 8ビットの2進数11010000を右に2ビット算術シフトしたものを,00010100から減じた値はどれか。ここで,負の数は2の補数表現によるものとする。

ア 00001000イ 00011111ウ 00100000エ 11100000

【解答】

【解説】

8ビットの2進数11010000を右に2ビット算術シフトすると,

「平成24年度 基本情報技術者試験 秋期 午前 問1」の解説画像01

のように,11110100となり,この値を00010100から減じると,

「平成24年度 基本情報技術者試験 秋期 午前 問1」の解説画像02

となる。

平成31年度 基本情報技術者試験 春期 午前 問1

平成27年度 基本情報技術者試験 秋期 午前 問1

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

ア 0.001011イ 0.001101ウ 0.00111エ 0.0111

【解答】

【解説】

10進数の演算式7÷32は,

7 ÷ 25

と変形することができる。

よって,10進数の7を2進数に変換し,その値を,5ビット右にシフトすれば,10進数の演算式7÷32の結果を2進数で表すことができる。

「平成31年度 基本情報技術者試験 春期 午前 問1」の解説画像01

平成30年度 基本情報技術者試験 春期 午前 問1

 ある整数値を,負数を2の補数で表現する2進表記法で表すと最下位2ビットは“11”であった。10進表記法の下で,その整数値を4で割ったときの余りに関する記述として,適切なものはどれか。ここで,除算の商は,絶対値の小数点以下を切り捨てるものとする。

ア その整数値が正ならば3

イ その整数値が負ならば-3

ウ その整数値が負ならば3

エ その整数値の正負にかかわらず0

【解答】

【解説】

ある整数値が正の場合,2進表記法で最下位2ビットが”11″である数値を4で割ると,

「平成30年度 基本情報技術者試験 春期 午前 問1」の解説画像01

のように,余りは必ず3となる。

ある整数値が負の場合,2進表記法で最下位2ビットが”11″である数値を4で割ると,

「平成30年度 基本情報技術者試験 春期 午前 問1」の解説画像02

のようになるが,除算の商は,絶対値の小数点以下を切り捨てるものとするとあるので,この場合,余りは必ず-1となる。

平成25年度 基本情報技術者試験 春期 午前 問1

平成23年度 基本情報技術者試験 秋期 午前 問1

 16ビットの2進数nを16進数の各桁に分けて,下位の桁から順にスタックに格納するために,次の手順を4回繰り返す。a,bに入る適切な語句の組み合わせはどれか。ここで,XXXX16は16進数XXXXを表す。

〔手順〕

(1)   a  xに代入する。

(2) xをスタックにプッシュする。

(3) n  b   論理シフトする。

a

b

n AND 000F16左に4ビット
n AND 000F16右に4ビット
n AND FFF016左に4ビット
n AND FFF016右に4ビット

【解答】

【解説】

たとえば,n=1101 0111 1010 1001として考えてみる。

〔手順〕(1)は,nの下位4ビットを取り出してxに代入する操作(2進数4桁が16進数1桁に当たるため)なので,

「平成25年度 基本情報技術者試験 春期 午前 問1」の解説画像01

のように,nと16進数000Fとの論理和を求めればよい。

次に,(2)で,求めたxをスタックにプッシュする。

(3)は,(1)で取り出したnの下4桁を取り除いて,(1)で次の4桁(16進数の下から2桁目)を取り出せるようにするため,

「平成25年度 基本情報技術者試験 春期 午前 問1」の解説画像02

のように,nを右に4ビットシフトする。

あとは,これを繰り返すことにより,16進数の各桁を下位の桁から順に取り出すことができる(1001,1010,0111,1101の順にスタックに格納される)。

※スタック…後入れ先出しのデータ構造

平成23年度 基本情報技術者試験 春期 午前 問2

 三つの実数X~Zとそれぞれの近似値が次の場合,相対誤差の小さい順に並べたものはどれか。

「平成23年度 基本情報技術者試験 春期 午前 問2」の問題_画像
ア X,Y,Zイ Y,Z,Xウ Z,X,Yエ Z,Y,X

【解答】

【解説】

X~Z,それぞれの相対誤差は,

X:| 1-1.02 |1.02 ≠ 0.019…

Y:| 2-1.97 |1.97 ≠ 0.015…

Z:| 5-5.05 |5.05 ≠ 0.009…

となる。

平成27年度 基本情報技術者試験 春期 午前 問2

平成22年度 基本情報技術者試験 秋期 午前 問2

 桁落ちの説明として,適切なものはどれか。

ア 値がほぼ等しい浮動小数点数同士の減算において,有効桁数が大幅に減ってしまうことである。

イ 演算結果が,扱える数値の最大値を超えることによって生じるエラーのことである。

ウ 浮動小数点数の演算結果について,最小の桁よりも小さい部分の四捨五入,切上げ又は切捨てを行うことによって生じる誤差のことである。

エ 浮動小数点数の加算において,一方の数値の下位の桁が結果に反映されないことである。

【解答】

【解説】

イ オーバーフローの説明

ウ 丸め誤差の説明

エ 情報落ちの説明

まとめ

 今回は,情報処理技術者試験の過去問(基礎理論-離散数学)を集めて,シンプルにまとめてみました。みなさん,どのくらい解けましたか?はじめは難しく感じると思いますが,繰り返し解くことにより,少しずつ理解できるようになると思います(8割以上(できれば9割以上)解けるようになるまで頑張りましょう)。また,解けるようになっても時間が経つと忘れることもありますので,たとえば,1週間後とか,1か月後とかに,また,やってみてください。