回覆列表
  • 1 # 使用者3283477854719

    -76一個有符號定點數的最高位為符號位,0是正數,1是負數。正數的補碼和其原碼相同. 補碼 = 原碼。所以,該數顯然是負數。所以,該數表示十進位制的真值是:256D-10110100B,10110100B轉化為10進位制數是128+32+16+4=180.所以256D-10110100B = 76 D. 加個符號即可。 即位機器碼10110100"它是補碼時"表示十進位制的真值是 -76. 詳細理論:C語言、補碼.1.任何數值是以補碼存放在記憶體中的.2.正數的補碼和其原碼相同. 補碼 = 原碼。3.負數的補碼的兩種求法:(假設8bit,即8位) (1).是將該數的絕對值的二進位制形式,按位取反,再加1. 例. 求-10的補碼. 第一步是取-10的絕對值10; 第二步取10的二進位制形式為00001010; 第三步對00001010取反得11110101; 第四步再加1得11110110. 所以-10在記憶體中就以11110110形式存放。 (2).256-欲求的負數的絕對值 = 此負數的補碼。注意:256 - 的是這個負數的絕對值,而不是這個數。也就是說 256 -|負數|=補碼. 求其原碼,則 256 - 補碼 = |負數| ,則原碼需要把首位變為1即可. 例. 求-10的補碼. 第一步是 256 - |-10|=246. 第二步把246變為二進位制,11110110. 所以-10在記憶體中就以11110110形式存放。 兩種方法比較下來,顯然,第二種更為簡便!4.反碼:把每位取反,即0變1,1變0即可。5.一個有符號定點數的最高位為符號位,0是正數,1是負數。筆者認為,對於原碼、補碼、反碼的追究無需深入,只需要知道資料在計算機中以補碼形式儲存即可,至於怎麼儲存是計算機的事情。當然,大學裡面的結業考試或計算機等級考試可能會有個別計算這個的題目。

  • 中秋節和大豐收的關聯?
  • 子母床有哪些優點呢?