那些年,我們一起學過的彙編 之標誌暫存器

2021-09-21 23:28:14 字數 521 閱讀 8226

intel 8086/8088cpu設定了乙個16位的標誌暫存器,用來反映微處理器的當前狀態和某些控制,標誌暫存器中有9個標誌位,分為兩大類:狀態標誌(cf, pf, af, zf, sf, of)和控制標誌(tf, if, df),狀態標誌由cpu根據運算結果自動設定,用來反映cpu的執行單元eu執行算術運算或邏輯運算後的結果特徵,這些特徵常用來影響或者是控制某些後續指令的執行,控制標誌由系統程式或者使用者程式用指令來設定或者是清除,用來控制cpu的某些操作。

1)、狀態標誌

(1)進製位cf

位(字操作的15位和位元組操作的第7位)產生乙個進製(減法),則cf置1,否則cf清零,另外cf在迴圈移位/移位類指令中用來儲存從最高位或最低位移出的0或1

(2)奇偶位pf

(3)輔助進製位af

(4)零值位zf

(5)符號位sf

(6)溢位位of

2)控制標誌

(1)單步標誌位tf

(2)中斷允許位if

(3)方向位df

那些年,我們一起學過的彙編 之跳轉指令

一 無條件轉移指令 1 段內轉移 a 段內轉移直接定址 段內轉移直接定址 執行的操作ip ip target與jmp指令的下一條指令的16位位移量距離。b 段內轉移間接定址 在jmp ip 通用暫存器reg的記憶體 在jmp ip 字儲存單元addr的記憶體 2 段間轉移 a 段間轉移直接定址 jm...

那些年,我們一起學過的彙編 之子程式設計

一 子程式的呼叫與返回 1 子程式的定義 proc name proc near far proc name endp 其中proc name為子程式名,也極為call的運算元,自程式具有3個屬性 段屬性 偏移量屬性和型別屬性,段屬性表示該子程式所在段的段基值。偏移量屬性表示該子程式在段中的偏移量。...

那些年,我們一起學過的彙編 之定址方式 二

3 基址定址 變址定址 使用bx bp定址時即成為基址定址,使用si di時,即成為變址定址。或者使用基址定址 變址定址的示例如下 mov al,10h bx 等價於mov ax,ds 10h bx mov al,20h si 等價於mov al,ds 20h si mov ah,es 30h bx...