作者bochengchen (LFII)
看板Grad-ProbAsk
标题[理工] 101清大计系8
时间Tue Dec 31 12:58:29 2019
想请问各位大大
https://imgur.com/6DDREJM.jpg
这题C要求有号数x-y
我是把y先换成2进位,再取y的2捕数,变成-y
再算x+(-y),转回Hex,得到的答案跟b小题一样 0x85B3
但是看补习班的答案发现答案不一样,也看不懂是怎麽算的,为什麽答案会在十六进位前面再加上负号呢?
--
※ 发信站: 批踢踢实业坊(ptt.cc), 来自: 124.199.106.66 (台湾)
※ 文章网址: https://webptt.com/cn.aspx?n=bbs/Grad-ProbAsk/M.1577768311.A.E79.html
1F:推 shinle14: sign- magnitude B=1011 所以是负数 12/31 15:06
我好像把sign magnitude跟2补数法搞混了!
所以答案应该是0xEE5F吗?
※ 编辑: bochengchen (124.199.106.66 台湾), 12/31/2019 15:16:54
3F:→ shinle14: 这样子~ 12/31 17:31
4F:→ bochengchen: s大为什麽前面的负号不用放进16进位表示法 12/31 22:18
6F:→ shinle14: 因为是定义呀 这样子你应该就知道了~ 01/01 12:07
s大我的问题就是,算出来结果是-0x6E5F,这样在sign-magnitude中,不是应该写成0xEE5f吗?
因为正负号也包含在这个16bit里面!但是用-0x6E5F是把负号独立出来了
※ 编辑: bochengchen (124.199.106.66 台湾), 01/02/2020 10:31:33