国产精品天干天干,亚洲毛片在线,日韩gay小鲜肉啪啪18禁,女同Gay自慰喷水

歡迎光臨散文網(wǎng) 會員登陸 & 注冊

十六進(jìn)制如何代表負(fù)數(shù)(補(bǔ)碼舉例,計(jì)算,分析)

2021-06-23 08:40 作者:GXTon_阿通  | 我要投稿

計(jì)算機(jī)中表示負(fù)數(shù)是用補(bǔ)碼.

其實(shí)計(jì)算機(jī)內(nèi)部的數(shù)據(jù),都是補(bǔ)碼形式存儲的.(遵循補(bǔ)碼形式的二進(jìn)制存儲)

比如下面一段文字,是我從一個電機(jī)的協(xié)議中摘出來的.(這里都是十六進(jìn)制表示方法:::)

1.下傳幀: 0xd8 0x30 0x10 0x00 0xff? //?代表控制電機(jī)轉(zhuǎn)速為0x1000=4096轉(zhuǎn)每分鐘.

2.下傳幀: 0xd8 0x30 0xf0 0x00 0xff? //? 代表控制電機(jī)轉(zhuǎn)速位0xf000=- 4096轉(zhuǎn)每分鐘.

從上面兩條指令中,0xd8 0x30可以認(rèn)為是包頭,不用管.

0xff是包尾,也不用管.

中間標(biāo)紅的是數(shù)據(jù)位.

可見,這個電機(jī)控制的數(shù)據(jù)只有兩個字節(jié).

關(guān)于第一條下傳幀,它的數(shù)據(jù)位是,0x10 0x00,合起來就是0x1000,然后我們打開window自帶的計(jì)算器:在HEX欄,也就是16進(jìn)制欄,輸入1000,

然后可以從對應(yīng)的DEC欄得到4096,DEC也就是10進(jìn)制的意思.

上面是正數(shù)的驗(yàn)證,得到0x1000就是4096.

這樣的方法是否適用于負(fù)數(shù)呢??看下圖,顯然是不行的.

因?yàn)檩敵龅氖M(jìn)制(DEC)是61440.

那么應(yīng)該如何去驗(yàn)證呢?

電機(jī)使用手冊上說0xf000= - 4096 ,手冊上說的例子,一般是不會錯的.

進(jìn)行負(fù)數(shù)的驗(yàn)證:

下面就會用到一定的計(jì)算機(jī)基礎(chǔ)了,這里的0xf000補(bǔ)碼的形式.

人是不能直觀看清補(bǔ)碼的,需要轉(zhuǎn)換成原碼.

補(bǔ)碼如何轉(zhuǎn)換成原碼:

負(fù)數(shù)原碼和補(bǔ)碼的相互轉(zhuǎn)換:符號位不變,數(shù)值位按位取反,末位再加1。

我們用windows系統(tǒng)自帶的計(jì)算器,就可以進(jìn)行上面法則的運(yùn)算.

第一步:把計(jì)算器,調(diào)整到二進(jìn)制界面.

第二步:符號位不變,其他的按位取反.

(用鼠標(biāo)去右擊某一個二進(jìn)制位,就可以進(jìn)行取反,0變1,1變0)

第三步:末尾再加一.

通過上面的一步后,看到的結(jié)果是:36864.

難道0xf000=36864嗎?顯然不是.

之所以出現(xiàn)36864,是因?yàn)閣indows系統(tǒng)自帶的計(jì)算器不夠智能,

它不知道最高位的1代表負(fù)號,而是按照正整數(shù)進(jìn)行的計(jì)算.

所以,你需要自己去處理一下.

1001 0000 0000 0000 ,去掉最高位的符號位. (用鼠標(biāo)右擊最高位的1,使1變成0)

然后,就可以看到得到的是4096,

然后因?yàn)橛蟹?就是-4096.

即0xf000= -4096.

總結(jié):

計(jì)算機(jī)中的負(fù)數(shù),都是補(bǔ)碼形式的.

十六進(jìn)制如何代表負(fù)數(shù)(補(bǔ)碼舉例,計(jì)算,分析)的評論 (共 條)

分享到微博請遵守國家法律
清水县| 阜城县| 淮南市| 上栗县| 临海市| 蕉岭县| 中卫市| 桑植县| 静宁县| 崇义县| 丹巴县| 罗甸县| 新丰县| 瓦房店市| 当雄县| 长宁区| 息烽县| 吴堡县| 望奎县| 开化县| 冀州市| 文安县| 云南省| 九寨沟县| 噶尔县| 潜江市| 临漳县| 临夏市| 绥德县| 玛纳斯县| 临洮县| 和政县| 沅陵县| 汾西县| 府谷县| 梅河口市| 房山区| 中方县| 正安县| 北票市| 大化|