It is finally working now for the negative values.

I did not have this TempC = ABS(TempC) before TempC =(TempC>>1)*10 + (TempC.0 * 5)

But, now I get correct values.

Thanks a lot Darrel.
Regards.