導航:首頁 > 源碼編譯 > 正數的補碼咋化成源碼

正數的補碼咋化成源碼

發布時間:2024-01-19 19:48:58

A. 怎麼求補碼的原碼

已知一個數的補碼,求原碼的操作其實就是對該補碼再求補碼:

1、如果補碼的符號位為「0」,表示是一個正數,其原碼就是補碼。

2、如果補碼的符號位為「1」,表示是一個負數,那麼求給定的這個補碼的補碼就是要求的原碼。

例如:已知一個補碼為11111001,則原碼是10000111(-7)。因為符號位為「1」,表示是一個負數,所以該位不變,仍為「1」。

其餘七位1111001取反後為0000110;再加1,所以是10000111。

(1)正數的補碼咋化成源碼擴展閱讀:

數的表示:

在數的表示上通過人為的定義來消除編碼映射的不唯一性,對轉換後的10000000強制認定為-128。當然對原碼和反碼也可以做這種強制認定,那為什麼原碼和反碼沒有流行起來?原碼和反碼沒有流行起來,是因為在數的運算上對符號位的處理無法用當時已有的機器物理設計來實現。

由於原碼和反碼在編碼時採用了硬性的人工設計,這種設計在數理上無法自動的通過模來實現對符號位的自動處理,符號位必須人工處理,必須對機器加入新的物理部件來專門處理符號位,這加大了機器設計難度,加大的機器成本,不到萬不得已,不走這條路。

參考資料:

網路--補碼

B. 正數的補碼等於原碼是如何算出來的

這是規定。

補碼是為負數想出來的辦法,目的是減法可以用加補碼的方法實現,補碼可用反碼加1得來,於是又有了負數的反碼。

計算機里有硬體「加法器」,有了補碼,減法也可以用加法器做了,計算機里運算速度硬體遠快於軟體,這就是反碼,補碼和原碼多樣化的原因。

(2)正數的補碼咋化成源碼擴展閱讀:

原碼求補碼

正數

正整數的補碼是其二進製表示,與原碼相同 。

例:+9的補碼是00001001。(備註:這個+9的補碼是用8位2進制來表示的,補碼表示方式很多,還有16位二進制補碼表示形式,以及32位二進制補碼表示形式,64位進制補碼表示形式等。)

負數

求負整數的補碼,將其原碼除符號位外的所有位取反(0變1,1變0,符號位為1不變)後加1。

C. 原碼與補碼的轉換

1、首先要知道,換算規則:原碼轉換為反碼:符號位不變,數值位分別「按位取反」 。

閱讀全文

與正數的補碼咋化成源碼相關的資料

熱點內容
美國程序員生活 瀏覽:219
51單片機摘要 瀏覽:402
英語經典pdf下載 瀏覽:314
大學文件夾怎麼刪除 瀏覽:665
linux科研軟體 瀏覽:550
ue4打包編譯著色器 瀏覽:772
雲伺服器可以在手機上登錄嗎 瀏覽:673
網游腳本為什麼要連接伺服器 瀏覽:4
程序員發展路線圖 瀏覽:318
手機語音加密會議 瀏覽:587
冰與火pdf 瀏覽:416
為什麼叫我買阿里雲伺服器 瀏覽:470
加密貨幣征稅一覽表 瀏覽:959
llc編譯器 瀏覽:923
數控可編程電阻器 瀏覽:759
培訓app源碼 瀏覽:433
phpcurl啟用 瀏覽:535
ubuntu圖形編程 瀏覽:441
jar包啟動命令 瀏覽:680
java數組一維轉二維 瀏覽:500