8086的內中斷典型如int 21h的分析

2021-10-01 13:41:21 字數 589 閱讀 6706

(ip)

=(n *4)

(cs)

=(n *4+

2)

assume cs:code

code segment

start:

mov ax,

8mov bx,

0div bx

mov ah,

4chint

21hcode ends

end start

從中斷資訊取得中斷型別碼

標誌暫存器的值入棧——中斷過程要改變標誌暫存器的值,需要保護

設定標誌暫存器tf和if為0

cs內容入棧

ip內容入棧

從中斷向量表讀取中斷處理程式的入口位址,設定ip和cs

取得中斷型別碼n

pushf

tf =

0 if =

0push cs

push ip

(ip)

=(n *4)

,(cs)

=(n *4+

2)

彙編 (十) 內中斷

1.1 內中斷的產生 當cpu內部有下面內容發生的時候,將產生相應的中斷資訊,8086cpu使用中斷型別碼的資料來標識中斷資訊的 中斷型別碼為乙個位元組型資料,可以表示256種中斷資訊 1.2 中斷向量表 cpu用 8位的中斷型別碼 通過 中斷向量表 找到相應的 中斷處理程式的入口位址。cpu如何找...

CPU內中斷 int引發中斷

int指令的格式為int n,其中n為中斷型別碼,它的功能就是引發中斷過程,執行過程如下所示 assume cs code code segment start mov ax,0b800h mov es,ax mov byte ptr es 12 160 40 2 int 0 code ends e...

組合語言 內中斷

內中斷 在執行完當前正在執行的指令之後,檢測到從cpu內部發過來的或內部產生的一種特殊資訊,並且可以立即對所接收到的資訊進行處理 中斷資訊可以 於cpu外部和內部 內中斷的產生 1除法錯誤 0 2單步執行 1 3執行into指令 4 into 溢位中斷 4執行int指令,該指令格式 int n 指令...