彙編語言-第一章 基礎知識

1.1 機器語言

電子計算機的機器指令是一列二進制數字。計算機將其轉變爲一列高低電平,以使計算機的電子器件受到驅動,進行計算。
每一種微處理器,因爲硬件設計和內部結構的不一樣,就須要用不一樣的電平脈衝來控制,使它工做。因此每一種微處理器都有本身的機器指令集,也就是機器語言。編程

1.2 彙編語言的產生

彙編語言的主體是彙編指令。性能

  • 彙編指令是機器指令便於記憶的書寫形式。
  • 寄存器,簡單講就是CPU中能夠存儲數據的器件。一個CPU中有多個寄存器。
  • 編譯器:可以將彙編指令轉換成機器指令的翻譯程序。

1.3彙編指令的組成

彙編語言發展至今,由如下三類指令組成:翻譯

  • 彙編指令:機器碼的助記符,有對應的機器碼
  • 僞指令:沒有對應的機器碼,由編譯器執行,計算機並不執行
  • 其餘符號:如+,-,*,/等。由編譯器識別,沒有對應的機器碼 彙編語言的核心是彙編指令,塔決定了彙編語言的特性。

1.4 存儲器

CPU是計算機的核心部件,它控制整個計算機的運做並進行計算。要想讓一個CPU工做,就必須向它提供指令和數據。指令和數據在內存中存放。設計

1.5 指令和數據

指令和數據是應用上的概念。在內存或者磁盤上,指令和數據沒有任何區別,都是二進制信息。
CPU在工做的時候,把有的信息看做指令,有的信息看做數據,爲一樣的信息賦予了不一樣的意義。接口

1.6 存儲單元

存儲器被劃分紅若干個存儲單元,每一個存儲單元從0開始順序編號。
微型機存儲器的存儲單元能夠存儲一個字節,即8個二進制位。例如一個存儲器有128個存儲單元,它能夠存儲128個字節。內存

1.7 CPU對存儲器的讀寫

CPU要從內存中讀數據,首先要制指定存儲單元的地址。也就是說它要先肯定讀取哪個存儲單元中的數據。
另外,在一臺微機中,不僅有存儲器這一種器件。CPU在讀寫數據時還要指明,它要對哪個器件進行操做,進行哪一種操做,是從中讀出數據,仍是向裏面寫入數據。編譯器

CPU要想進行數據的讀寫,必須和外部器件(標準的說法是芯片)進行3類信息的交互:it

  • 存儲單元的地址(地址信息)
  • 器件的選擇,讀或寫的命令(控制信息)
  • 讀或寫的數據(數據信息)

在計算機中專門有鏈接CPU和其餘芯片的導線,一般稱爲總線。
總線從物理上來說,就是一根根導線的集合。編譯

根據傳送信息的不一樣,總線從邏輯上又分爲3類:擴展

  • 地址總線
  • 控制總線
  • 數據總線

CPU從3號單元中讀取數據的過程以下:

CPU從內存中讀書數據的過程.jpg

  • CPU經過地址線將地址信息3發出
  • CPU經過控制線發出內存讀命令,選中存儲芯片,並通知他,將要從中讀取數據
  • 存儲器將3號單元中的數據08經過數據線送入CPU

寫操做與讀操做的步驟相似:

  • CPU經過地址線將地址信息3發出
  • CPU經過控制線發出內存讀命令,選中存儲器芯片,並通知它,要想其中寫入東西。
  • CPU經過數據線將數據26送入內存的3號單元中。

1.8 地址總線

CPU是經過地址總線來指定存儲單元的。 地址總線上能傳送多少個不一樣的信息,CPU就能夠對多少個存儲單元進行尋址。 一個CPU有N根地址線,則能夠說這個CPU的地址總線的寬度爲N。這樣的CPU最多能夠尋找2的N次方個內存單元。

1.9 數據總線

CPU與內存或其它器件之間的數據傳送是經過數據總線來進行的。 數據總線的寬度決定了CPU和外界的數據傳送速度。例如,8根數據總線一次能夠傳送一個8位二進制數據(即一個字節)。16根數據總線一次可傳送2個字節。

1.10 控制總線

CPU對外部器件的控制是經過控制總線來進行的。 控制總線是個總稱,是一些不一樣控制線的集合。 有多少根控制總線,就意味着CPU提供了對外部器件的多少種控制。因此,控制總線的寬度決定了CPU對外部器件的控制能力。

1.1節~1.10節 小結

  • 彙編指令時機器指令的助記符
  • 每一種CPU都有本身的彙編指令集
  • CPU能夠直接使用的信息在存儲器中存放
  • 在存儲器中指令和數據沒有任何區別,都是二進制信息
  • 存儲單元從0開始順序編號
  • 一個存儲單元能夠存儲8個bit,即8位二進制數 每個CPU芯片都有許多管腳,這些管腳和總線相連。也能夠說,這些管腳引出總線。一個CPU能夠引出三種總線的寬度標誌了這個CPU的不一樣方面的性能:
  • 地址總線的寬度決定了CPU的尋址能力
  • 數據總線的寬度決定了CPU與其它器件進行數據傳送時的一次數據傳送量
  • 控制總線的寬度決定了CPU對系統中其餘器件的控制能力

1.11 內存地址空間

一個CPU的地址線寬度爲10,那麼能夠尋址1024個內存單元,這1024個可尋到的內存單元就構成這個CPU的內存地址空間。

1.12 主板

在每一臺PC中,都有一個主板,主板上有核心器件和一些主要器件,這些器件經過總線(地址總線,數據總線,控制總線)相連。 這些器件有:CPU。存儲器,外圍芯片組,擴展槽等。 擴展槽上通常插有RAM內存條和各種接口卡。

1.13 接口卡

計算機系統中,全部可用程序控制其工做的設備,必須受到CPU的控制。 CPU對外部設備不能直接控制,如顯示器,音響,打印機等。直接控制這些設備進行工做的是插在擴展槽上的接口卡。 擴展插槽經過總線和CPU相連,因此接口卡也經過總線同CPU相連。CPU能夠直接控制這些接口卡,從而實現CPU對外設的間接控制。 CPU'經過總線向接口卡發送命令,接口卡根據CPU的命令控制外設進行工做。

1.14 各種存儲芯片

  • 隨機存儲器(RAM) 用於存放供CPU使用的絕大部分程序和數據,主隨機存儲器通常由兩個位置上的RAM組成,裝在主板上的RAM和插在擴展插槽山的RAM。
  • 轉悠BIOS(Basic Input/Output System)的ROM BIOS是由主板和各種接口卡(如:網卡、顯卡等)廠商提供的軟件系統,能夠經過它利用該硬件設備進行最基本的輸入、輸出。
  • 接口卡上的RAM 某些接口卡須要對大批量輸入、輸出數據進行暫時存儲,在其上裝有RAM。最典型的是顯卡上的RAM,通常成爲顯存。顯示卡歲時將顯存中的數據向顯示器上輸出。換句話說,咱們將須要顯示的內容寫入顯存,就會出如今顯示器上。

內存地址空間

最終運行程序的是CPU,咱們用匯編編程的時候,必需要從CPU角度考慮問題。對CPU來說,系統中的全部存儲器中的存儲單元都處於一個統一的邏輯存儲器中,它的容量受CPU尋址能力的限制。這個邏輯存儲器即便咱們所說的內存地址空間。

相關文章
相關標籤/搜索