2018年1月29日 星期一

二補數(2's complement)自我理解學習筆記

《前情提要》
BYTE = 8 BIT
CHAR = 1 BYTE
INT = 4 BYTE
DOUBLE = 8 BYTE
LONG = 4 BYTE
SHORT = 2 BYTE
WORD = 2 BYTE
DWORD = 4 BYTE = 32BIT

以常用WORD = 2 BYTE來說,
2 BYTE = 65,535



轉二補數,方法一:

全部攤開來 = 1111 1111 1111 1111
取1補數 = 0000 0000 0000 0000
再加1 = 0000 0000 0000 0001

所以此值為 -1



轉二補數,方法二:

自己理解,最大時 65,535 為 -1,
試算 FFFF(65.535) - FFFF(65.535) - 0001 = -1
試算 E6D0(59.088) - FFFF(65.535) - 0001 = -6,448

沒有留言:

張貼留言