彙編(1)初識彙編

2021-10-25 15:53:22 字數 1998 閱讀 8077

7. 記憶體位址空間

8. 主機板

9. 介面卡

10. 各類儲存器晶元

組合語言是直接在硬體之上工作的程式語言,首先要了解硬體系統的結構,才能有效的應用組合語言對其程式設計

計算機能讀懂的只有機器指令,什麼是機器指令?

例1:指令:01010000 (push ax)

例2:s = 768 + 12288 - 1280

機器碼:

101100000000000000000011

000001010000000000110000

001011010000000000000101

組合語言的主體是彙編指令彙編指令是機器指令便於記憶的書寫格式(彙編指令是機器指令的助記符)

例1:機器指令: 1000100111011000

這個指令是將暫存器 bx的內容送到暫存器ax中

彙編指令實現:

彙編指令:mov ax,bx

計算機是如何將彙編指令作為機器指令來執行的呢?

組合語言由以下3類組成:

彙編指令(機器碼的助記符)

偽指令 (由編譯器執行)

其它符號(由編譯器識別)

組合語言的核心是彙編指令,它決定了組合語言的特性

cpu 是計算機的核心部件.它控制整個計算機的運作並進行運算,要想讓乙個cpu 工作,就必須向它提供指令和資料

指令和資料在儲存器中存放,也就是平時所說的記憶體

在儲存器中,指令和資料沒有任何區別,都是二進位制資訊,指令和資料是應用上的概念

二進位制資訊:

1000100111011000

當成資料就是 ─> 89d8h

當成指令就是 ─> mov ax,bx

儲存器被劃分為若干個儲存單元,每個儲存單元從0開始順序編號

乙個儲存器有128個儲存單元, 編號從0~127, 如下圖示:

儲存單元的計量單位:

1kb=1024b

1mb=1024kb

1gb=1024mb

1tb=1024gb

cpu要想進行資料的讀寫,必須和外部器件(標準的說法是晶元)進行三類資訊的互動:

cpu通過導線將位址、資料和控制資訊傳到儲存晶元中,計算機中專門有連線cpu和其他晶元的導線,通常稱為匯流排

匯流排:邏輯上

匯流排在邏輯上劃分的圖示:

6.1 位址匯流排

當計算機收到一條101000000000001100000000的機器指令,這條指令的含義是從3號單元讀取資料送入暫存器ax,cpu對乙個儲存單元進行操作時,就必須得知道這個記憶體的位址,cpu通過位址匯流排來確定將要操作的儲存單元

6.2 資料匯流排

6.3 控制匯流排

乙個cpu的位址線寬度為10,那麼可以定址1024個記憶體單元,這1024個可尋到的記憶體單元就構成這個cpu的記憶體位址空間

在每一台pc機中,都有乙個主機板,主機板上有核心器件和一些主要器件,這些器件通過匯流排(位址匯流排、資料匯流排、控制匯流排)相連

計算機系統中,所有可用程式控制其工作的裝置,必須受到cpu的控制。

cpu對外部裝置不能直接控制,如顯示器、音箱、印表機等。直接控制這些裝置進行工作的是插在擴充套件插槽上的介面卡

從讀寫屬性上看分為兩類:

從功能和連線上分類:

裝有bios的rom

Linux彙編初識

2011 06 11 20 29 02 分類 x86與arm 標籤 movl 彙編器linux att 舉報 字型大小訂閱 hello.s intel彙編的注釋用的 而att用的 display a string hello,world.section rodata msg ascii hello,...

初識彙編 Debug命令

1,彙編debug操作符 debug命令操作符 r命令 檢視 改變cpu暫存器的內容 d命令 以16進製制形式顯示一塊記憶體區域的內容 e命令 改寫記憶體中的內容 a命令 以彙編指令的格式在記憶體中寫入一條機器指令 u命令 將記憶體中的機器指令翻譯為彙編指令 t命令 執行一條機器指令 g命令 執行到...

組合語言 匯程式設計序初識

mov ax,bx 將bx暫存器中的資料複製移動到ax中 add ax,bx 執行ax bx運算,將運算結果賦值給ax,即ax ax bx sub ax,bx 執行ax bx運算,將運算結果賦值給ax,即ax ax bx inc ax 執行 ax 1 運算,將運算結果賦值給ax,即ax ax 1 j...