彙編學習筆記1

2021-05-23 10:05:16 字數 1749 閱讀 1389

一、計算機組成

計算機由運算器、控制器、儲存器、輸入裝置、輸出裝置組成。

1. 運算器:

a. 由算術邏輯單元alu(arithmetic logic unit)、累加器、狀態暫存器、通用暫存器組等構成

b. 運算器的操作和操作種類由控制器決定

c. 運算器處理的資料來自儲存器;處理後的結果資料通常送回儲存器,或暫時寄存在運算器中

d. 和控制器共同組成cpu

2. 控制器:

a. 負責從儲存器中取出指令,並對指令進行解碼;根據指令的要求,按時間的先後順序,負責向其它各部件發出控制訊號,保證各部件協調一致地工作,一步一步地完成各種操作。

b. 由指令暫存器ir(instructionregister)、程式計數器pc(programcounter)、操作控制器0c(operationcontroller)和解碼器等部件組成。

3. 儲存器:分為外存和記憶體

4. 輸入裝置:鍵盤、滑鼠等

5. 輸出裝置:顯示器、耳機等

二、 暫存器

8086有14個16位暫存器,類別是通用暫存器、指令指標、標誌暫存器、段暫存器。

1. 通用暫存器:分為資料暫存器(4個)和指標暫存器及變址暫存器(4個)兩組

a. 資料暫存器又分為:

ah&al=ax(accumulator register):累加暫存器,常用於運算;在乘除等指令中指定用來存放運算元,另外,所有的i/o指令都使用這一暫存器與外界裝置傳送資料

bh&bl=bx(base register):基址暫存器,常用於位址索引

ch&cl=cx(counter register):計數暫存器,常用於計數;常用於儲存計算值,如在移位指令,迴圈(loop)和串處理指令中用作隱含的計數器

dh&dl=dx(data register):資料暫存器,常用於資料傳遞

b. 指標暫存器和變址暫存器包括:

sp(stack pointer):堆疊指標,與ss配合使用,可指向目前的堆疊位置

bp(base pointer):基址指標暫存器,可用作ss的乙個相對基址位置

si(source index):源變址暫存器可用來存放相對於ds段之源變址指標

di(destination index): 目的變址暫存器,可用來存放相對於 es 段之目的變址指標

2. 指令指標:指令指標ip(instruction pointer)是乙個16位專用暫存器,它指向當前需要取出的指令位元組,當biu從記憶體中取出乙個指令位元組後,ip就自動加1,指向下乙個指令位元組。注意,ip指向的是指令位址的段內位址偏移量,又稱偏移位址(offset address)或有效位址(ea,effective address)。

3. 標誌暫存器:8086有乙個18位的標誌暫存器fr,在fr中有意義的有9位,其中6位是狀態位,3位是控制位。

of df

if tf

sf zf:零標誌zf用來反映運算結果是否為0。如果運算結果為0,則其值為1,否則其值為0。

af pf

cf 4. 段暫存器:為了運用所有的記憶體空間,8086設定了四個段暫存器,專門用來儲存段位址。當乙個程式要執行時,就要決定程式**、資料和堆疊各要用到記憶體的哪些位置,通過設定段暫存器 cs,ds,ss 來指向這些起始位置。

cs(code segment):**段暫存器

ds(data segment):資料段暫存器

ss(stack segment):堆疊段暫存器

es(extra segment):附加段暫存器

彙編學習筆記1

物理記憶體介紹 段的概念 記憶體沒有分段,段劃分是由於8086cpu用 實體地址 段位址 偏移位址 的方式給出記憶體單元的實體地址,使我們可以用分段的方式管理記憶體 cpu在訪問物理記憶體是先分配位址,在根據位址訪問記憶體 實體地址 段位址 偏移位址 段位址放在段暫存器中 cs,ds 中,偏移位址放...

彙編學習筆記1

機器語言是機器指令的集合 機器指令展開來講就是一台機器可以正確執行的命令 指令 01010000 push ax 放入堆疊 組合語言的主體是彙編指令 彙編指令和機器指令的差別在於指令的表示方法上。彙編指令是機器指令便於記憶的書寫格式。彙編指令是機器指令的助記符。機器指令 10001001110110...

8086彙編學習筆記1 基礎

1.什麼是組合語言 彙編指令是各種cpu提供的機器指令的助記符集合。cpu只認識0和1組成的機器指令,但是使用機器指令去編寫的程式難於書寫和閱讀,所以採用彙編,彙編只是機器指令的另一種表示方法。編寫好匯程式設計序,還需要彙編編譯器將彙編翻譯成機器指令,這樣cpu才能識別與執行。機器指令 100010...