定點與浮點表示


日常生活中所使用的數有整數和實數之分,整數的小數點固定在數的最右邊,可以省略不寫,而實數的小數點則不固定。在計算機中只能識別和表示“0”和“1”",而無法識別小數點,因此,要使得計算機能夠處理日常使用的數值數據,必須要解決小數點的表示問題。

通常計算機中通過約定小數點的位置來實現。

小數點位置約定在固定位置的數稱為定點數,小數點位置約定為可浮動的數稱為浮點數

1.定點表示

 

 2.浮點表示

 

 定點數的編碼表示

定/浮點表示解決了小數點的表示問題。但是,對於一個數值數據來說,還有一個正/負號的表示問題。

計算機中只能識別和表示0和1。因此,正/負號也要用0和1來表示。

這種將數的符號用0、1表示的處理方式稱為符號數字化。一般規定0表示正號,1表示負號。

數字化了的符號能否和數值部分一起參加運算呢?

為了解決這個問題,就產生了把符號位和數值部分一起進行編碼的各種方法。因為任意一個浮點數都可以用一個定點小數和一個定點整數來表示,所以,只需要考慮定點數的編碼表示。

主要有4種定點數編碼表示方法:原碼、補碼、反碼和移碼。

通常將數值數據在計算機,內部編碼表示的數稱為機器數,而機器數真正的值(即現實世界中帶有正負號的數)稱為機器數的真值

 

 1.源碼的表示

 

 

原碼表示的優點是與真值的對應關系直觀、方便,因此與真值的轉換簡單,並且用原碼
實現乘除運算比較簡便。其缺點是0的表示不唯一,給使用帶來不便。更重要的是,原碼加
減運算規則復雜,在進行原碼加減運算過程中,要判定是否是兩個異號數相加或兩個同號數
相減,若是,則必須判定兩個數的絕對值大小,根據判斷結果決定結果符號,並用絕對值大的
數減去絕對值小的數。現代計算機中不用原碼來表示整數,只用定點原碼小數來表示浮點
數的尾數部分。

2.補碼表示法

 

 1)模運算

 

 

 

 

 2)補碼的定義

 

 3)特殊數據的補碼表示

 

 

 

 

 4)補碼與真值之間的轉換方法

 

 

 

 

 

 5)變形補碼

 

 

 

 

 

 3.反碼的表示

 

 4.移碼表示

 

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM