技術士の過去問
平成30年度(2018年)
基礎科目「情報・論理に関するもの」 問9
このページは閲覧用ページです。
履歴を残すには、 「新しく出題する(ここをクリック)」 をご利用ください。
問題
技術士 第一次試験 平成30年度(2018年) 基礎科目「情報・論理に関するもの」 問9 (訂正依頼・報告はこちら)
補数表現に関する次の記述の、( )に入る補数の組合せとして、最も適切なものはどれか。
一般に、k桁のn進数Xについて、Xのnの補数はnk−X、Xのn−1の補数は(nk−1)−Xをそれぞれn進数で表現したものとして定義する。よって、3桁の10進数で表現した956の(n=)10の補数は、103から956を引いた103−956=1000−956=44である。さらに956の(n−1=10−1=)9の補数は、103−1から956を引いた(103−1)−956=1000−1−956=43である。同様に、5桁の2進数(01011)2の(n=)2の補数は、[ ア ]、(n−1=2−1=)1の補数は[ イ ]である。
一般に、k桁のn進数Xについて、Xのnの補数はnk−X、Xのn−1の補数は(nk−1)−Xをそれぞれn進数で表現したものとして定義する。よって、3桁の10進数で表現した956の(n=)10の補数は、103から956を引いた103−956=1000−956=44である。さらに956の(n−1=10−1=)9の補数は、103−1から956を引いた(103−1)−956=1000−1−956=43である。同様に、5桁の2進数(01011)2の(n=)2の補数は、[ ア ]、(n−1=2−1=)1の補数は[ イ ]である。
- [ ア ](11011)2 [ イ ](10100)2
- [ ア ](10101)2 [ イ ](11011)2
- [ ア ](10101)2 [ イ ](10100)2
- [ ア ](10100)2 [ イ ](10101)2
- [ ア ](11011)2 [ イ ](11011)2
正解!素晴らしいです
残念...
この過去問の解説 (3件)
01
なお、2進数の引き算は少し複雑なので、注意が必要です。
[ア]
k桁のn進数Xについて、Xのnの補数はn^k−Xとあります。
5桁の2進数(01011)₂の(n=)2の補数は、
2⁵ - (01011)₂ となります。
2⁵は2進数で表すと(100000)₂となりますので、
(100000)₂ - (01011)₂ = (10101)₂
[イ]
k桁のn進数Xについて、Xのn−1の補数は(n^k−1)−Xとあります。
5桁の2進数(01011)₂の(n−1=2−1=)1の補数は、
(2⁵ -1)- (01011)₂ となります。
(2⁵ -1)は2進数で表すと、(11111)₂となりますので、
(11111)₂ - (01011)₂ = (10100)₂
[ア] (10101)₂ [イ] (10100)₂ なので3が正解です。
<補足>
結果を見ると分かるように、1の補数は元の数字の1と0を入れ替えたものになります。
(01011)₂ の1の補数: (10100)₂
さらに、2の補数は、1の補数に1を足したものになります。
このように解くと、複雑な計算を解かずに簡単に解くことも可能です。
参考になった数32
この解説の修正を提案する
02
補数表現に関する問題です。
[ア]
問題文より、k桁のn進数Xについて、Xのnの補数はnk−Xとされています。
これより、5桁の2進数(01011)₂の(n=)2の補数は、
25 - (01011)2 となります。
25 は、2進数で表すと(10000)2となりますので、
(10000)₂ - (01011)₂ = (10101)₂
となります。
[イ]
問題文より、k桁のn進数Xについて、Xのn−1の補数は(nk−1)−Xとされています。
これより、5桁の2進数(01011)2の(n−1=2−1=)1の補数は、
(25 - 1) - (01011)2 となります。
(25 - 1)は2進数で表すと、(11111)2となりますので、
(11111)2 - (01011)2 = (10100)2
となります。
以上のことから、
[ア] (10101)₂ [イ] (10100)₂ となるため、3が正解となります。
参考になった数7
この解説の修正を提案する
03
補数表現に関する問題です。
[ア]
k桁のn進数Xについて、Xのnの補数はn^k−Xとあります。
5桁の2進数(01011)₂の(n=)2の補数は、
2⁵ - (01011)₂ となります。
(01011)₂ を2進数に変換すると11となります。
よって、2⁵ - 11 = 21
21を2進数に変換すると(10101)₂となります。
[イ]
k桁のn進数Xについて、Xのn−1の補数は(n^k−1)−Xとあります。
5桁の2進数(01011)₂の(n−1=2−1=)1の補数は、
(2⁵ -1)- (01011)₂ となります。
よって、(2⁵-1) - 11 = 20
20を2進数に変換すると(10100)₂となります。
[ア] (10101)₂ [イ] (10100)₂ なので正解は3です。
参考になった数5
この解説の修正を提案する
前の問題(問8)へ
平成30年度(2018年)問題一覧
次の問題(問10)へ