Java海闊天空

          編程是我的生活,但生活不僅僅是編程。

          二進(jìn)制最簡(jiǎn)單的運(yùn)算過(guò)程解析


          3 & 4

          &:同為1結(jié)果為1,否則為0
          0000 0000 0000 0000 0000 0000 0000 0011
          0000 0000 0000 0000 0000 0000 0000 0100
          ---------------------------------------
          0000 0000 0000 0000 0000 0000 0000 0000 -> 0

          4 | 8
          |: 一方為1結(jié)果便為1,否則為0
          0000 0000 0000 0000 0000 0000 0000 0100
          0000 0000 0000 0000 0000 0000 0000 1000
          ---------------------------------------
          0000 0000 0000 0000 0000 0000 0000 1100 -> 12


          ~9
          ~:取反,0變成1,1變成0 ->要得到最后結(jié)果必須再計(jì)算補(bǔ)碼(反碼+1)
          0000 0000 0000 0000 0000 0000 0000 1001
          ---------------------------------------
          1111 1111 1111 1111 1111 1111 1111 0110 ->得到反碼,下面回算補(bǔ)碼(即減1取反)
          ---------------------------------------
          1111 1111 1111 1111 1111 1111 1111 0101 ->-1
          ---------------------------------------
          0000 0000 0000 0000 0000 0000 0000 1010 ->取反結(jié)果為10,取反碼的時(shí)候以1開(kāi)頭,即為負(fù)數(shù),所以結(jié)果為-10

          下面是-10在java中的表示:
          0000 0000 0000 0000 0000 0000 0000 1010
          1111 1111 1111 1111 1111 1111 1111 0101 +1
          1111 1111 1111 1111 1111 1111 1111 0110

          8 ^ 23
          ^:異或, 不同為1,相同為0
          0000 0000 0000 0000 0000 0000 0000 1000
          0000 0000 0000 0000 0000 0000 0001 0111
          ---------------------------------------
          0000 0000 0000 0000 0000 0000 0001 1111 -> 31

          4 << 3
          <<:左位移,4的二進(jìn)制向左移動(dòng)3位,右邊補(bǔ)0
          0000 0000 0000 0000 0000 0000 0000 0100
          ---------------------------------------
          0000 0000 0000 0000 0000 0000 0010 0000 -> 32

          5 >> 9
          >>:右位移, 5的二進(jìn)制向右移動(dòng)9位,左邊補(bǔ)0
          0000 0000 0000 0000 0000 0000 0000 0101
          ---------------------------------------
          0000 0000 0000 0000 0000 0000 0000 0000 -> 0

           

          posted on 2010-01-29 17:35 李贊紅 閱讀(2107) 評(píng)論(3)  編輯  收藏

          評(píng)論

          # re: 二進(jìn)制最簡(jiǎn)單的運(yùn)算過(guò)程解析 2010-01-30 09:19 Ge,Kunjin

          沒(méi)怎么接觸過(guò)二進(jìn)制的計(jì)算,關(guān)于您的這個(gè)講解我沒(méi)有看明白?

          ~9
          ~:取反,0變成1,1變成0 ->要得到最后結(jié)果必須再計(jì)算補(bǔ)碼(反碼+1)
          0000 0000 0000 0000 0000 0000 0000 1001 -->9的二進(jìn)制
          ---------------------------------------
          1111 1111 1111 1111 1111 1111 1111 0110 ->得到反碼,下面回算補(bǔ)碼(即減1取反)
          ---------------------------------------
          1111 1111 1111 1111 1111 1111 1111 0101 ->-1
          ---------------------------------------
          0000 0000 0000 0000 0000 0000 0000 1010 ->取反結(jié)果為10,取反碼的時(shí)候以1開(kāi)頭,即為負(fù)數(shù),所以結(jié)果為-10

          你上面提到的“要得到最后結(jié)果必須再計(jì)算補(bǔ)碼(反碼+1)
          ”與“->得到反碼,下面回算補(bǔ)碼(即減1取反)
          ”矛盾嗎?請(qǐng)指教!
            回復(fù)  更多評(píng)論   

          # re: 二進(jìn)制最簡(jiǎn)單的運(yùn)算過(guò)程解析 2010-01-30 10:23 李贊紅

          @Ge,Kunjin
          建議你去看看與二進(jìn)制相關(guān)的資料.  回復(fù)  更多評(píng)論   

          # re: 二進(jìn)制最簡(jiǎn)單的運(yùn)算過(guò)程解析 2010-01-30 11:42 咖啡妝

          混亂!!!不知道你要說(shuō)啥?  回復(fù)  更多評(píng)論   


          只有注冊(cè)用戶登錄后才能發(fā)表評(píng)論。


          網(wǎng)站導(dǎo)航:
           

          導(dǎo)航

          <2010年1月>
          272829303112
          3456789
          10111213141516
          17181920212223
          24252627282930
          31123456

          統(tǒng)計(jì)

          常用鏈接

          留言簿(12)

          隨筆檔案(28)

          相冊(cè)

          技術(shù)友情博客

          搜索

          最新評(píng)論

          閱讀排行榜

          評(píng)論排行榜

          主站蜘蛛池模板: 新民市| 甘谷县| 金堂县| 塔城市| 墨竹工卡县| 科技| 平湖市| 抚松县| 那坡县| 东乡| 印江| 抚顺市| 农安县| 阿城市| 上饶市| 尉氏县| 封开县| 金华市| 开原市| 太湖县| 高碑店市| 克什克腾旗| 宁津县| 岳阳县| 临汾市| 广汉市| 绍兴市| 镇雄县| 崇义县| 新营市| 石狮市| 中卫市| 靖宇县| 阳东县| 琼结县| 高平市| 梁山县| 宜昌市| 巧家县| 府谷县| 景泰县|