計算機組成原理-運算方法和運算器(第二章)

數據與文字的表示方法

一、數據格式

選擇計算機數據表示格式時,應當考慮如下因素:

  • 要表示數的類型(小數、整數、時數或複數)。
  • 可能遇到的取值範圍。
  • 數值的精確度。
  • 數據存儲和處理所需硬件代價。

綜上,計算機常用兩種格式存儲:定點格式浮點格式
定點數:容許的數值處理範圍有限,但是處理硬件簡單。通常將數據表示爲純整數或純小數。
浮點數:容許的數值處理範圍較大,但是處理硬件複雜

  1. 定點數的表示方法
      一個字,最高位是符號位,後面全是量值(尾數)。
  2. 浮點數的表示方法
      浮點數由階碼和尾數表示,他們都帶符號,按IEEE標準:一個字(就是一串二進制數),最高位是符號位,接下來是帶符號的階碼,再接下來是尾數,共同構成一個浮點數。
  3. 十進制數串的表示方法
      主要有字符串形式,一個字節存放一個十進制的數位或符號位;壓縮的十進制數串形式,一個字節存放兩個十進制的數位。兩種方式要表示一個十進制數都要使用多個字節,需要給出該數在主存中的起始地址和位數(串的長度)。
      十進制數串用半個字節(4個比特位)表示一個數位,有很多編碼方案,比如BCD碼,ASCII碼低四位,8421有權碼(就是十進制數轉換成二進制數),還有一些無權碼等等。
二、數的機器碼錶示

  爲了方便運算器處理二進制數的符號問題,計算機有幾種編碼方式,成爲機器數機器碼。(下面所說的表示法都是針對二進制的整數、小數、正數、負數而言的)

  • 原碼錶示法:最高位表示符號位,其餘位置不變。
  • 反碼錶示法:最高位符號位不變,其餘位置取反。
  • 補碼錶示法:原碼的反碼再加1,(補碼有個對於誰的補碼的概念,例如鐘錶是對於12的補碼,計算機中一般是對於2的補碼)。
  • 移碼錶示法:補碼的符號位取反,通常用於浮點數的階碼。
三、其他表示方法
  • 字符與字符串的表示: ASCII碼,7位加1位偶校驗位(最高位置0)共8位,一個字節。
  • 漢字的表示:包括輸入編碼、漢字內碼和漢字字模碼。
  • 校驗碼:分爲檢錯碼和糾錯碼。
       1. 檢錯碼,最簡單且廣泛應用的檢錯碼是一位校驗位的奇偶校驗。奇偶校驗是把一個字X的所有位按位加,只有X有奇數個1的時候,結果才爲1,到目的地之後,再做一次按位加,和校驗位比較,若不同,說明信息有錯。奇偶校驗可提供單錯誤檢測,無法檢測多錯,更無法識別錯誤信息位置。
       2. 糾錯碼,常用糾錯碼有海明碼、循環碼、法爾瑪等,只要使用足夠的校驗位,就可以達到任何要求的錯誤檢測和糾錯水平,校正字長(n)、校驗位數®和驗錯位數(n+r),之間有個關係(r要大於以2爲底n的對數),(書上詳細講了循環校驗碼如何利用模二運算進行糾錯,這裏略過,😓)。

定點加法、減法運算

   這一章後面講了定點數、浮點數的運算方法和運算器,非常接近硬件,先略過,有需要再詳細看。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章