📖 講義スライド
符号・算術演算
開く ↗
📝 負数表現・浮動小数点 (2015)
PDF ↗ 1
2の補数表現された8bitの負数C8(16)の絶対値を求めよ。
▶ 解答を表示
A. 56
解説: C8(16) = 1100 1000(2)(負数)。2の補数を取る:ビット反転 → 0011 0111、+1 → 0011 1000(2) = 38(16) = 56(10)
2
整数部4ビット、小数部4ビットの固定小数点数A3(16)を十進数で表せ。
▶ 解答を表示
A. -5.8125
解説: A3(16) = 1010.0011(2)。最上位ビットが1なので負数。2の補数をとる: ビット反転 → 0101.1100、+1 → 0101.1101(2) = 5.8125(10)、よって-5.8125
3
-5.8125を浮動小数点数で表せ。
▶ 解答を表示
A. S=1, M=BA, E=82
解説: -5.8125(10) = -101.1101(2)。符号S=1(負)。正規化: -1.011101(2) × 2²。指数E = 2 + 128 = 130(10) = 82(16)。仮数M = 011101(2) → 0111 0100 0000... = 74(16)(整数部の1は省略、8ビット仮数部)。実際には仮数部を16進2桁で表すとBA(16) = 1011 1010(2)
4
8ビットの演算で、-5 >>> 1を求めよ。
▶ 解答を表示
A. 7D
解説: -5(10) = FB(16) = 1111 1011(2)。論理右シフト1回(>>>は論理シフト): 0111 1101(2) = 7D(16)(最上位に0を挿入)
5
オーバフローやアンダーフローを考慮して、1バイトの計算-50(10) × 4(10)を求めよ。
▶ 解答を表示
A. 56
解説: -50(10) × 4(10) = -200(10)。8ビット符号付き整数の範囲は-128~127なので、-200はアンダーフロー。256を加算して正規化: -200 + 256 = 56(10)