令和7年度 III-10

科目: 専門科目 / 分野: 情報工学部門 / 年度: 令和7年度

III-10 問題画像

出典:公益社団法人 日本技術士会「技術士第一次試験 過去問題」

整数を8ビットの2の補数表現で表すとき、左シフトによる2倍、符号反転、加算のオーバーフロー、表現できる範囲、最小値に関する記述のうち最も適切なものを選ぶ問題。

解説

この問題で問われていること

8ビットの2の補数表現に関する5つの記述のうち、最も適切なものを選ぶ問題。

解き方

① 8ビットの2の補数: 範囲は−128〜127。符号反転=全ビット反転+1。1ビット左シフト=2倍
② ②は「+1」が抜けている。③は117+12=129で127を超えオーバーフロー。④は上限が127。⑤11111111は−1(最小は10000000=−128)
③ ①

正解が正しい理由

2の補数表現で、値を2倍にするには、オーバーフローが起こらない限り、1ビット左シフト(下位に0を補う)で実現できる。したがって①が最も適切である。

各選択肢について

覚えるべきポイント

nビットの2の補数表現の範囲は -2^(n-1) 〜 2^(n-1)-1(8ビットなら -128〜127)。符号反転は全ビット反転+1。左シフトは2倍、算術右シフトは1/2倍(符号ビットを保つ)。

キーワード: 2の補数表現、算術シフト、オーバーフロー、符号付き整数、8ビット、数値表現、情報工学部門

出題履歴

同じ問題が計2回出題されています(平成28年度、令和7年度)。