平成18年度 技術士第一次試験問題【専門科目】
【16】情報工学部門
W−2
整数を8ビットの、2の補数表現で表しているとする。
次のうち正しいものを選べ。

 @ 最も小さい値は111111112である。
 A 21と−21の2の補数表現は、全ビットの0と1を交換したものである。
 B 表現できる範囲は、−128から128までである。
 C 011101012 + 000011002 はオーバーフローしないで計算できる。
 D 2倍をするのに、オーバーフローが起こらない限り、1ビット左シフトで
   実現できる。



【正解】 D

@最も小さい値は -128であり、2の補数表現では、
 10000000 である。
A2の補数表現は、全ビットの0と1を交換して、1を加える。
 全ビットの0と1を交換しただけのものは1の補数である。
 21は 000101012 であり、−21は 111010112 である。
B表現できる範囲は
 10000000 〜 01111111 で10進数では、−128〜127である。
C011101012 + 000011002 = 100000012 となり、オーバーフローする。
 10進数では
 117+12=129 であり、−128〜127の範囲を超える。
D正しい。1ビット右シフトすると、2分の1になる。


EXCELのマクロのご相談なら ファーストマクロ 



W−1 目次 W−3
ファーストマクロ TOPページ