數的表示運算與邏輯門

一、數的表示與運算

在這裏插入圖片描述

  1. 有符號數和無符號數統稱爲機器數

1.爲什麼現在用浮點數而不用定點數?

答:

  1. 編程時需要確定小數點位置
  2. 難以表示兩個大小相差較大的數
  3. 存儲空間利用率低(eg:0.00000005 - 1000000000,花費很大的空間去存儲0)

定點數:小數位固定不變的數
浮點數:小數位數可以隨意改變的數
在這裏插入圖片描述

  • 階碼和尾數都可以正負
  • 引入規格化浮點數是爲了讓每一個小數有唯一的表示方法。(0.35*10^2 == 35 == 3.5 *10,一個數有無數中表示方法)
  • 規格化浮點數:3.5*10

2.無符號數

在這裏插入圖片描述

3.有符號數

在這裏插入圖片描述

  • 有符號數,無符號數只有程序員知道,計算機硬件無法識別
    -
  • 需要判斷符號是相同還是相反;若是兩個數相減,得先判斷哪個絕對值大,然後最終符號位跟上,(這個操作需要花時間)
    在這裏插入圖片描述
    在這裏插入圖片描述
    在這裏插入圖片描述
    在這裏插入圖片描述
  • -4和8互爲補數
    在這裏插入圖片描述
  • 乘法相當於是移位和加法的結合,除法是移位和減法的運算
  • 加減乘除都變成了加法+移位->硬件更加的便宜
    在這裏插入圖片描述
    在這裏插入圖片描述
    在這裏插入圖片描述
  • FDH爲-3(1000_0011)的補碼(1111_1101)

4.數字0的原碼,補碼,反碼問題

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

  • 溢出了,解決了0問題

5.特殊數字(eg:10000000)

在這裏插入圖片描述

  • 原碼=符號位+絕對值
  • 反碼:符號位是不變的,求它真實表示的值,需要對它再次取反,即1111_1111=-2^7-1
  • 補碼這是規定,沒有原理

6.數的表示範圍在這裏插入圖片描述

  • 有符號數的最小值爲1000_0000 = -128
    在這裏插入圖片描述
    在這裏插入圖片描述
    在這裏插入圖片描述

7.溢出判斷

在這裏插入圖片描述

  • 異或:相同爲0不同爲1

  • 乘法運算沒有溢出問題(2個8位相乘結果爲16位;2個16位相乘,結果爲32位)
    在這裏插入圖片描述

  • 這是兩個有符號數的前提下

  • 若是2個無符號數,那麼沒有溢出(最高位沒有向外溢出)
    在這裏插入圖片描述
    在這裏插入圖片描述

二、邏輯門

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

  • 與非門支持多值輸入,即所有爲1->結果爲0

  • 或非門,有一個1->結果爲0
    在這裏插入圖片描述
    在這裏插入圖片描述
    在這裏插入圖片描述
    在這裏插入圖片描述

  • 運用上面的與非110;或非001秒殺
    在這裏插入圖片描述
    在這裏插入圖片描述
    在這裏插入圖片描述
    在這裏插入圖片描述
    在這裏插入圖片描述

  • 同或異或門都是兩輸入單輸出的
    在這裏插入圖片描述

  • 例1用與非或者或非都可以,但是與非門更好一些(要求全一才輸出0;而或非門有一個0就輸出0)

  • 例2用或門好(全0輸出0)

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