技術士の過去問
令和5年度(2023年)
基礎科目「情報・論理に関するもの」 問5
このページは閲覧用ページです。
履歴を残すには、 「新しく出題する(ここをクリック)」 をご利用ください。
問題
技術士 第一次試験 令和5年度(2023年) 基礎科目「情報・論理に関するもの」 問5 (訂正依頼・報告はこちら)
2つの単一ビットα、bに対する排他的論理和演算α⊕b及び論理積演算a・bに対して、2つのnビット列A = a1a2…an,B = b1b2…bnの排他的論理和演算4⊕B及び論理積演算A・Bは下記で定義される。
A⊕B =(a1⊕b1)(a2⊕b2)…(an⊕bn)
A・B =(a1・b1)(a2・b2)…(an・bn)
例えば
1010⊕0110=1100
1010・0110=0010
である。
ここで2つの8ビット列
A=01011101
B=10101101
に対して、下記演算によって得られるビット列Cとして、適切なものはどれか。
C=(((A⊕B)⊕B)⊕A)・A
A⊕B =(a1⊕b1)(a2⊕b2)…(an⊕bn)
A・B =(a1・b1)(a2・b2)…(an・bn)
例えば
1010⊕0110=1100
1010・0110=0010
である。
ここで2つの8ビット列
A=01011101
B=10101101
に対して、下記演算によって得られるビット列Cとして、適切なものはどれか。
C=(((A⊕B)⊕B)⊕A)・A
- 0
- 11111111
- 10101101
- 1011101
- 11110000
正解!素晴らしいです
残念...
この過去問の解説 (3件)
01
演算計算、というより2進法の理解度を問う問題です。
A+B: 11110000 (1+1≡0, mod2)
(A+B)+B:01011101
((A+B)+B)+A)は、00000000
(((A+B)+B)+A)・A 00000000
本選択肢が正解です。
2進法の計算に関する問題でした。
参考になった数21
この解説の修正を提案する
02
論理演算に関する出題です。問題文に解説がありますが、少し触ったことがないと難しいかもしれません。
暗記する必要はないですが、本問題で触って経験しておきましょう。
排他的論理和(XOR)演算⊕は、どちらか一方の値だけが1である場合にのみ1を値としてとる論理式を出力する演算です。
論理積(AND演算)・は、入力された2つの値の両方が1の場合にのみ、その結果も1となる論理演算です。
例の通り、
1010⊕0110は、左の桁から1と0なので1、0と1なので0、1と1なので0、0と0なので1100になります。
1010・0110は、左の桁から1と0で0、0と1で0、1と1で1、0と0で0なので0010になります。
さて問題を解いていきましょう。
A=01011101
B=10101101
なので一つずつ桁ごとに計算をしていきます。
A⊕B=11110000
(A⊕B)⊕B=11110000⊕10101101=01011101
(A⊕B)⊕B)⊕A)=01001101⊕01011101=00010000
(((A⊕B)⊕B)⊕A)・A=00010000・01011101=00000000
になります。
00000000より本選択肢が正解です。
一回でも経験していれば排他的論理和演算、論理積演算といった言葉を忘れていたとしても解説があるのでなんとか解けるのではないかと思います。本問題で学習してください。
参考になった数15
この解説の修正を提案する
03
情報処理の演算計算に関する理解度を問う問題です。
まずA⊕Bは、11110000となります。(A⊕B)⊕Bは、01001101です。次に((A⊕B)⊕B)⊕A)は、00010000です。最後に(((A⊕B)⊕B)⊕A)・Aを計算すると、0となります。
演算式の回答が0ですから、本選択肢が正解です。
順番に計算すれば、すぐに回答が導かれる問題といえます。
参考になった数7
この解説の修正を提案する
前の問題(問4)へ
令和5年度(2023年)問題一覧
次の問題(問6)へ