From 8f44964e9951dcac83ffa3d504e7ecf671299311 Mon Sep 17 00:00:00 2001 From: Shucheng <741932183@qq.com> Date: Fri, 28 Oct 2016 14:11:56 +0800 Subject: [PATCH] fix a bug with 2.92 --- exercise/ex2-92.c | 12 +++++++++++- 1 file changed, 11 insertions(+), 1 deletion(-) diff --git a/exercise/ex2-92.c b/exercise/ex2-92.c index 5103271..049b305 100644 --- a/exercise/ex2-92.c +++ b/exercise/ex2-92.c @@ -23,5 +23,15 @@ float_bits float_negate(float_bits f) if (exp == 0xFF && frac != 0) /* NaN */ return f; - return (~sign << 31) | (exp << 23) | frac; + + unsigned reverseSign = ~sign + return reverseSign<<31 | (exp << 23) | frac; +} + + + +int main(){ + float_bits a = 0x81E00000; + float_bits result = float_negate(a); + printf("%x",result); }