【計組】6.計算機的運算方法

♡♡♡ 說明
本筆記爲筆者學習中國大學MOOC計算機組成原理課程時結合課程PPT和自己總結所做,爲個人筆記,如果對你有所幫助的話,我很榮幸。
課件PPT及筆記(word版、pdf版)及深入理解計算機系統pdf可在我的微信公衆號 “分享猿” 回覆關鍵詞 N02獲取。

計算機組成原理系列課程筆記入口:計算機組成原理[哈工大]

一、無符號數和有符號數

1.1 無符號數

  1. 寄存器的位數反映無符號數的表示範圍
    8 位    0 ~ 255
    16 位   0 ~ 65535

1.2 有符號數

  1. 機器數與真值
    process=image/watermark,type_ZmFuZ3poZW5naGVpdGk,shadow_10,text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L3FxXzQyNTA1NzA1,size_1,color_FFFFFF,t_70)

  2. 原碼錶示法
    (1)定義
    在這裏插入圖片描述
    在這裏插入圖片描述
    在這裏插入圖片描述
    在這裏插入圖片描述
    (2)舉例
    在這裏插入圖片描述
    在這裏插入圖片描述
    在這裏插入圖片描述
    在這裏插入圖片描述
    原碼的特點:簡單、直觀
    但是用原碼作加法時,會出現如下問題:
    在這裏插入圖片描述
    能否只作加法?
    找到一個與負數等價的正數來代替這個負數就可使減→加

  3. 補碼錶示法
    (1)補的概念
    在這裏插入圖片描述
    結論
    √ 一個負數加上“模”即得該負數的補數
    √ 一個正數和一個負數互爲補數時它們絕對值之和即爲模數
    在這裏插入圖片描述
    (2)正數的補數即爲其本身
    在這裏插入圖片描述
    (3)補碼定義
    整數
    在這裏插入圖片描述
    x爲真值,n爲整數的位數
    在這裏插入圖片描述
    小數
    在這裏插入圖片描述
    (4)求補碼的快捷方式
    當真值爲負時,補碼可用原碼除符號位外每位取反,末位加1求得
    (5)舉例
    在這裏插入圖片描述
    在這裏插入圖片描述
    在這裏插入圖片描述
    練習 求下列真值的補碼
    在這裏插入圖片描述

  4. 反碼錶示法
    (1)定義
    在這裏插入圖片描述
    在這裏插入圖片描述
    (2)舉例
    在這裏插入圖片描述
    在這裏插入圖片描述
    在這裏插入圖片描述
    三種機器數的小結
    √ 最高位爲符號位,書寫上用“,”(整數)或“.”(小數)將數值部 分和符號位隔開
    √ 對於正數,原碼 = 補碼 = 反碼
    √ 對於負數,符號位爲1,其數值部分
      原碼除符號位外每位取反末位加1→補碼
      原碼除符號位外每位取反→反碼

    例6.11設機器數字長爲8位(其中1位爲符號位),對於整數,當其分別代 表無符號數、原碼、補碼和反碼時,對應的真值範圍各爲多少?
    在這裏插入圖片描述
    例6.12 已知 [y]補 求[-y]補
    在這裏插入圖片描述

  5. 移碼錶示法
    補碼錶示很難直接判斷其真值大小
    (1)移碼定義
    在這裏插入圖片描述
    在這裏插入圖片描述
    (2)移碼和補碼的比較
    在這裏插入圖片描述
    在這裏插入圖片描述
    補碼與移碼只差一個符號位

    (3)真值、補碼和移碼的對照表
    在這裏插入圖片描述
    (4)移碼的特點
    當x = 0時 [+0]移 = 25 + 0 = 1,00000
              [-0]移 = 25 – 0 = 1,00000
    ∴ [+0]移 = [-0]移
    當 n = 5 時 最小的真值爲25 = 100000
     [ 100000]移 = 25 – 100000 = 000000
    可見,最小真值的移碼爲全0

    用移碼錶示浮點數的階碼
    能方便地判斷浮點數的階碼大小

二、數的定點表示和浮點表示

2.1 定點表示

  1. 小數點按約定方式標出
    在這裏插入圖片描述

2.2 浮點表示

  • 爲什麼在計算機中要引入浮點數表示?
    • 編程困難,程序員要調節小數點的位置;
    • 數的表示範圍小,爲了能表示兩個大小相差很大的數據,需要很長的機器字長;
      例如:太陽的質量是0.2*1034克,一個電子的質量大約爲0.9*10-27克,兩者的差距爲1061以上,若用定點數據表示:2x>1061, 解得x>203位。
    • 數據存儲單元的利用率往往很低。
  • 浮點表示的格式是什麼?
  • 尾數和階碼的基值必須是2嗎?基值的影響?
  • 表數範圍與精度和哪些因素有關?
  • 爲什麼要引入規格化表示?
  • 目前浮點數表示格式的標準是什麼?

N=S×rjN = S× r^j 浮點數的一般形式
S :尾數 ;j: 階碼; r: 尾數的基值
計算機中 r 取 2、4、8、16 等
計算機中 S 小數、可正可負; j 整數、可正可負
在這裏插入圖片描述
①浮點數的表示形式
在這裏插入圖片描述
SfS_f 代表浮點數的符號
nn 其位數反映浮點數的精度
mm 其位數反映浮點數的表示範圍
jfj_fmm 共同表示小數點的實際位置

②浮點數的表示範圍
上溢 階碼>最大階碼 機器停止運算
下溢 階碼<最小階碼 按機器零處理,機器繼續運行
在這裏插入圖片描述
③浮點數的規格化形式

  • r=2 尾數最高位爲1
  • r=4 尾數最高2位不全爲0 基數不同,浮點數的規格化形式不同
  • r=8 尾數最高3位不全爲0

④浮點數的規格化

  • r=2 左規 尾數左移 1 位,階碼減 1
        右規 尾數右移 1 位,階碼加 1
  • r=4 左規 尾數左移 2 位,階碼減 1
        右規 尾數右移 2 位,階碼加 1
  • r=8 左規 尾數左移 3 位,階碼減 1
        右規 尾數右移 3 位,階碼加 1
  • r=16 …
  • r=2^n …
    基數 r 越大,可表示的浮點數的範圍越大
    基數 r 越大,浮點數的精度降低
    例如:設 m = 4, n = 10, r = 2
    尾數規格化後的浮點數表示範圍如下
    在這裏插入圖片描述

2.3 舉例

在這裏插入圖片描述
在這裏插入圖片描述

  • 機器零
    • 當浮點數尾數爲0時,不論其階碼爲何值按機器零處理
    • 當浮點數階碼等於或小於它所表示的最小數時,不論尾數爲何值,按機器 零處理
    • 如 m = 4、n = 10
      當階碼和尾數都用補碼錶示時,機器零爲
                   ×, × × × × ;0. 0 0 … 0
      (階碼 = 16) 1, 0 0 0 0 ;×. ×× … ×
      當階碼用移碼,尾數用補碼錶示時,機器零爲
          0, 0 0 0 0; 0. 0 0 0 … 0
      有利於機器中“判 0”電路的實現

2.4 IEEE 754標準

在這裏插入圖片描述
在這裏插入圖片描述
在這裏插入圖片描述

三、定點運算

3.1 移位運算

  1. 移位的意義
    15.m = 1500. cm   小數點右移 2 位
    機器用語  15 相對於小數點 左移2位( 小數點不動 )
      左移 絕對值擴大
      右移 絕對值縮小
    在計算機中, 移位與加減配合,能夠實現乘除運算
  2. 算術移位規則
    符號位不變
     x = - 0.x1x2xk1000000.x_1 x_2 … x_k100…000
    [x]補= 1.x1ˉx2ˉxkˉ100...0001.\bar{x_1}\bar{x_2}…\bar{x_k}100...000
    在這裏插入圖片描述
    在這裏插入圖片描述
    在這裏插入圖片描述
  3. 算術移位的硬件實現
    4.
  4. 算術移位和邏輯移位的區別
    5.

3.2 加減法運算

但是用原碼作加法時,會出現如下問題:
在這裏插入圖片描述

  1. 補碼加減法運算
    在這裏插入圖片描述
  2. 舉例
    在這裏插入圖片描述在這裏插入圖片描述
    在這裏插入圖片描述
    在這裏插入圖片描述
  3. 溢出判斷
    在這裏插入圖片描述
  4. 補碼加減法的硬件配置
    5.

3.3 乘法運算

在這裏插入圖片描述
在這裏插入圖片描述
在這裏插入圖片描述
在這裏插入圖片描述
在這裏插入圖片描述
在這裏插入圖片描述
在這裏插入圖片描述
在這裏插入圖片描述

3.4 除法運算

在這裏插入圖片描述
在這裏插入圖片描述
在這裏插入圖片描述
在這裏插入圖片描述
在這裏插入圖片描述
在這裏插入圖片描述

四、浮點四則運算

4.1 浮點加減運算

在這裏插入圖片描述
在這裏插入圖片描述
在這裏插入圖片描述
在這裏插入圖片描述
在這裏插入圖片描述

五、算術邏輯單元

5.1 ALU電路

在這裏插入圖片描述

5.2 快速進位鏈

在這裏插入圖片描述
在這裏插入圖片描述
在這裏插入圖片描述
在這裏插入圖片描述
在這裏插入圖片描述
在這裏插入圖片描述
在這裏插入圖片描述

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