作者purpose (purpose)
看板Programming
标题Re: [问题] 16进制转换~
时间Sat Oct 30 22:12:17 2010
※ 引述《QQXD (QQXD)》之铭言:
: 最近在看有关於进制换算的题目~遇到问题想请问~
: 为什麽0X9000(16进制)会等於这2个答案~
: 我先转成2进制是 1001 0000 0000 0000
: 0x9000= -0.875 (signed fix point 1.15格式,16bit Q15)
十进位 0.875 = 二进位 0.111
Q15:无整数位元,15个位元皆表达小数,故 0.111 之定点数为:
x111 0000 0000 0000
其中 x = 0 表 +0.111。
以二的补数法转出十进位 -0.875。先反相再加1:
1000 1111 1111 1111 + 1 = 1001 0000 0000 0000 = 0x9000
: 0x9000= -1.75 (signed fix point 2.14格式,16bit Q14)
: 谢~
十进位 1.75 = 二进位 1.11
Q14:14位元小数,1位元为整数位元,故
整数位元 =
1
小数位元 =
11 0000 0000 0000
+1.75 = x
111 0000 0000 0000 ,其中 x = 0 表正数。
以二的补数求 -1.75
反相 1000 1111 1111 1111 再加1 = 1001 0000 0000 0000 = 0x9000
--
※ 发信站: 批踢踢实业坊(ptt.cc)
◆ From: 124.8.131.31
2F:→ purpose:原PO一次找三个版发问,真强者 124.8.131.31 10/30 22:23
3F:→ QQXD:感谢~因为不知道在哪问比较好~ 谢谢~ 114.42.176.128 10/31 11:18