国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 編程 > Java > 正文

java中原碼、反碼與補碼的問題分析

2019-11-26 16:09:45
字體:
來源:轉載
供稿:網友
1.原碼、反碼和補碼定義

1.原碼

將最高位作為符號位(以0代表正,1代表負),其余各位代表數值本身的絕對值(以二進制表示)。
為了簡單起見,我們用1個字節來表示一個整數。
     +7的原碼為: 00000111
     -7的原碼為: 10000111

2.反碼

一個數如果為正,則它的反碼與原碼相同;一個數如果為負,則符號位為1,其余各位是對原碼取反。
為了簡單起見,我們用1個字節來表示一個整數:
     +7的反碼為:00000111
     -7的反碼為: 11111000

3.補碼

補碼:一個數如果為正,則它的原碼、反碼、補碼相同;一個數如果為負,則符號位為1,其余各位是對原碼取反,然后整個數加1。為了簡單起見,我們用1個字節來表示一個整數:
+7的補碼為: 00000111
-7的補碼為: 11111001

已知一個負數的補碼,將其轉換為十進制數,步驟:
      1、先對各位取反;
      2、將其轉換為十進制數;
      3、加上負號,再減去1。
      例如:
      11111010,最高位為1,是負數,先對各位取反得00000101,轉換為十進制數得5,加上負號得-5,再減1得-6。

2.常見問題

我把int a=232;進行強轉為byte類型時為什么是負數???

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 永川市| 林甸县| 平顺县| 行唐县| 石狮市| 五华县| 临清市| 岢岚县| 张家界市| 潮安县| 长白| 名山县| 五河县| 武鸣县| 磐安县| 临泉县| 禹城市| 呼和浩特市| 内江市| 溧水县| 山丹县| 香格里拉县| 沁源县| 上栗县| 衡南县| 天水市| 荆门市| 宝鸡市| 石楼县| 正定县| 会泽县| 泸水县| 南平市| 阿克苏市| 绥宁县| 屯留县| 辽源市| 宜兰县| 湘潭市| 仁怀市| 买车|