matengfei
攻人之過勿太嚴(yán),要思其堪受;教人以善勿過高,要令其可從。
級別: 論壇先鋒
精華主題: 0
發(fā)帖數(shù)量: 736 個(gè)
工控威望: 1054 點(diǎn)
下載積分: 2482 分
在線時(shí)間: 207(小時(shí))
注冊時(shí)間: 2011-08-07
最后登錄: 2017-06-10
查看matengfei的 主題 / 回貼
樓主  發(fā)表于: 2012-08-27 16:18
把D0里的數(shù)據(jù)255進(jìn)行取反之后怎么會是-256,而不是-65280。把D0以十六位二進(jìn)制展開前八位是1,后八位是0,取反后前八位是1,后八位是0。這樣把后八位的數(shù)值加起來是65280,又最高位是符號位所以為-65280。不知哪里錯了,求高手指教。
cvlsam
富士低壓,POD(觸摸屏),PLC專賣
級別: VIP會員

精華主題: 3 篇
發(fā)帖數(shù)量: 6777 個(gè)
工控威望: 38380 點(diǎn)
下載積分: 4293 分
在線時(shí)間: 9540(小時(shí))
注冊時(shí)間: 2006-09-13
最后登錄: 2024-12-25
查看cvlsam的 主題 / 回貼
1樓  發(fā)表于: 2012-08-27 17:49
255的二進(jìn)制表示方法為:0000 0000 1111 1111
執(zhí)行了CML后,其值為 1111 1111 0000 0000

256的二進(jìn)制表示方法為:0000 0001 0000 0000
負(fù)數(shù),在PC中表示為其正數(shù)的補(bǔ)碼,也就是反碼+1
256的反碼為:1111 1110 1111 1111
那么補(bǔ)碼就是反碼+1,也就是1111 1111 0000 0000。

16位符號數(shù)據(jù)能表示的值域?yàn)?32768~+32767,那又怎么可能表達(dá)為-65280呢?

Good Luck~