freepeople性欧美熟妇, 色戒完整版无删减158分钟hd, 无码精品国产vα在线观看DVD, 丰满少妇伦精品无码专区在线观看,艾栗栗与纹身男宾馆3p50分钟,国产AV片在线观看,黑人与美女高潮,18岁女RAPPERDISSSUBS,国产手机在机看影片

正文內(nèi)容

335程序控制指令-全文預(yù)覽

2025-10-26 10:32 上一頁面

下一頁面
  

【正文】 用程序 43 中斷 INT n與過程 CALL 段間間接 調(diào)用: 中斷 是隨機(jī)事件或異常事件引起,調(diào)用 則是事先已在程序中安排好 ; 響應(yīng) 中斷 請求不僅要保護(hù)斷點(diǎn)地址,還要 保護(hù) FLAGS內(nèi)容; 調(diào)用 指令在指令中直接給出子程序入口地址, 中斷 指令只給出 中斷向量碼n,入口地址則在向量碼 n指向的內(nèi)存單元中。 ( 3) 調(diào)用基本 I/O系統(tǒng)( BIOS)提供的硬件低層服務(wù)。 –外部中斷 (硬件中斷 ): CPU以 外 的設(shè)備、部件產(chǎn)生的中斷。 相當(dāng)于 POP CS:IP 另有一種帶立即數(shù)的返回指令 “ RET n ” ,其中 n為偶數(shù),表示從棧頂彈出地址后另外丟棄的字節(jié)數(shù)。IP壓棧 IP’← (mem32) 例: CALL DWORD PTR[DI] 調(diào)用地址在 [DI], [DI]+1, [DI]+2, [DI]+3四個(gè)存儲單元中。far_proc為遠(yuǎn)過程的地址 ; 遠(yuǎn) 調(diào)用 指令的操作為: ? CS內(nèi)容壓棧 ? IP內(nèi)容壓棧 ? CS’← 段地址 ? IP’← 偏移地址 例: CALL 2020H:1000H CALL TIMER 。 例: CALL BX 。子程序偏移地址由指令給出 (1)調(diào)用指令 CALL 33 位移量由匯編程序在匯編時(shí)進(jìn)行計(jì)算 ,如下例 : CS:0102 CALL 0120H 。 格式: CALL near_proc 。 調(diào)用指令 CALL與轉(zhuǎn)移指令 JMP的比較 RET CALL CALL 子程序入口地址 = JMP 子程序入口地址 + PUSH CALL的下一條指令地址 CALL指令功能 : 31 主程序調(diào)用子程序的執(zhí)行過程: 將調(diào)用指令的下一條指令的地址(斷點(diǎn))壓入堆棧( CALL指令 ); 相當(dāng)于乎 PUSH 下一條指令的地址 (IP或 CS:IP) 獲取子過程的入口地址(子過程第 1條指令的偏移地址) ( CALL指令 ) ; 相當(dāng)于乎 JMP入口地址 (CS:IP’或 CS’:IP’) 執(zhí)行子過程,含相應(yīng)參數(shù)的保存及恢復(fù)( 其它指令 ); 將斷點(diǎn)偏移地址由堆棧彈出,返回原程序( RET指令 )。 ? 子程序執(zhí)行結(jié)束后一般均要返回調(diào)用程序。 MOV DI, 8000H MOV CX, 1000 MOV AL, ’S’ MOV ADDR, 0FFFFH GOON: SCASB LOOPNZ GOON 。 (3)LOOPNZ (LOOPNE) 類比 串前綴 REPNZ/NE 格式: LOOPNZ label 操作: (CX)1→CX ; 若 (CX)≠0∧ZF=0 ,則轉(zhuǎn)至 label處執(zhí)行 ; 否則退出循環(huán) ,執(zhí)行 LOOP后面的指令。 ? 轉(zhuǎn)移的目標(biāo)應(yīng)在 距離 本指令 128~ +127的范圍之內(nèi) (短 跳轉(zhuǎn) )。 沒有 , 循環(huán) MOV DL, 48H 。 若 (AL)>’ 9’, 再加 7轉(zhuǎn)為‘ A’‘F’ DISP: MOV DL, AL 。 取出低 4位 ADD AL, 30H 。 MOV BX, 1234H MOV CH, 4 。 ? 主要的條件轉(zhuǎn)移指令參見 p142表 37。 例中的 DWORD PTR表示轉(zhuǎn)移地址是一個(gè)雙字 。遠(yuǎn) 距離 其中的 far_label為遠(yuǎn)類型的標(biāo)號。 13 ③段間直接轉(zhuǎn)移 在指令中直接給出要轉(zhuǎn)移到的目的段地址和偏移地址。 例 1: JMP SI 。指令中給出的目標(biāo)地址實(shí)際上是一個(gè) 相對于 IP的位移量 : JMP disp 。 ② 段內(nèi) 間接 轉(zhuǎn)移: JMP reg / mem reg/mem中的 16位偏移地址 送 IP, CS保持不變。 ?分類 : 分為 無條件 轉(zhuǎn)移 和 條件 轉(zhuǎn)移 兩種。 ?對標(biāo)志位 flags的影響 : 所有轉(zhuǎn)移指令 不會(huì) 影響標(biāo)志位 flags。 ① 段內(nèi) 直接 轉(zhuǎn)移: JMP disp 指令中給出的 8/16位的位移量 加到 IP, CS保持不變。 8 轉(zhuǎn)移的目標(biāo)地址由指令直接給出。 近 距離 注意 : disp的助記符寫為新 IP’, 而 disp的機(jī)器碼為位移量 d(新 IP’=原 IP+位移量 d) 例: JMP 0120H ;直接轉(zhuǎn)向 0120H(缺省為 NEAR) JMP SHORT LP ; 轉(zhuǎn)向 LP JMP NEAR PTR BBB; 轉(zhuǎn)向 BBB 由于是 段內(nèi) 轉(zhuǎn)移 ,故轉(zhuǎn)移后 CS內(nèi)容保持不變 ① 段內(nèi)直接轉(zhuǎn)移 9 無條件段內(nèi)轉(zhuǎn)移 直接轉(zhuǎn)移: JMP Lable 轉(zhuǎn)移目標(biāo)地址: 段基地址 CS不變; 偏移地址 IP=當(dāng)前 IP+位移量 (16位 ) JMP Lable Label ┇ ┇ ┇ 代碼段 位移量 近地址標(biāo)號 CS : IP= 10 ②段內(nèi)間接轉(zhuǎn)移 轉(zhuǎn)移的目標(biāo)地址由 寄存器 或 存儲單元 的內(nèi)容給出。 11 無條件段內(nèi)轉(zhuǎn)移 間接轉(zhuǎn)移: JMP BX JMP WORD PTR[BX] JMP BX ┇ ┇ ┇ 代碼段 數(shù)據(jù)段 BX=1200 ┇ XXH XXH IP 指令碼 CS : IP 12 例 2: JMP [BX+DI] 設(shè)指令執(zhí)行前 : (DS)=3000H,(BX)=130
點(diǎn)擊復(fù)制文檔內(nèi)容
教學(xué)課件相關(guān)推薦
文庫吧 www.dybbs8.com
備案圖鄂ICP備17016276號-1