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

正文內(nèi)容

第3章8086的尋址方式和指令系統(tǒng)(存儲版)

2025-08-19 09:55上一頁面

下一頁面
  

【正文】 。該指令每執(zhí)行一次移位操作,就使操作數(shù)右移一位,左面的最高位將補 0,最低位移至標志位 CF中。 CF最低位最高位例如: MOV AL, 6BH ROL AL, 1 指令執(zhí)行完后 , ( AL) =B5H, CF=1 ( 3) RCL帶進位的循環(huán)左移指令 指令格式: RCL OPRD, CL/1 指令功能:將目的操作數(shù) OPRD中的二進制數(shù)向左移動1位或 CL寄存器中指定的位數(shù)。 在串操作前可用 STD指令使 DF位置 l, 也可以用 CLD指令使 DF位清 0。 4. LODS串裝入指令 指令格式 LODS OPRD1, OPRD2 LODSB ;字節(jié)傳送 LODSW ;字傳送 指令功能: 字節(jié)操作 AL← (( SI)) SI← ( SI) ?1 字操作 AX← (( SI)) SI← ( SI) ?2 該類指令是字串裝入指令。 7. REPE/PEPZ相等 /為零時重復(fù)操作前綴 它們是條件重復(fù)前綴 。 例如:將數(shù)據(jù)段中 100個字的數(shù)據(jù)塊 BLOCKl搬移到同一個數(shù)據(jù)段的BLOCK2中去 。 NEAR PTR為屬性運算符 , 指示匯編程序?qū)⒌刂穮R編成 16位偏移量 , 范圍在 64K之內(nèi) 。段間間接轉(zhuǎn)移 JMP DWORD PTR[BP]][DI] 該指令指定的雙字指針的第一個字單元內(nèi)容送入 IP, 第二個字單元內(nèi)容送入 CS, 所定義的單元必定是雙字單元 。 ( 2) 段間調(diào)用與返回指令 1) 段間直接調(diào)用指令 指令格式: CALL OPRD 指令功能: SP?( SP) - 2 (( SP) + 1, ( SP)) ?( CS) SP?( SP) - 2, ( SP) ?( IP) IP?OPRD所在段的直接地址 CS?直接地址所在的段 例如:以下程序的代碼段 CODE1中有一條調(diào)用指令CALL FAR PTR WANG, 而 WANG為代碼段 CODE2中的子程序 , 程序的框架結(jié)構(gòu)如下: CODE1 SEGMENT ┇ CALL FAR PTR WANG ┇ CODE1 ENDS CODE2 SEGMENT ┇ WANG PROC FAR ┇ WANG ENDP RET CODE2 ENDS 1) 段間間接調(diào)用 指令格式: CALL OPRD 指令功能: SP?( SP) - 2 (( SP) + 1, ( SP)) ?( CS) SP?( SP) - 2 ( SP) + 1, ( SP) ?( IP) IP?OPRD所在存儲單元的前兩個單元的內(nèi)容 CS? OPRD所在存儲單元的后兩個單元的內(nèi)容 例如: CALL DWORD PTR [BX] 2) 段間返回指令 指令格式: RET 指令功能: IP← ( ( SP+1) , ( SP)) SP← ( SP) +2 CS← ( ( SP+1) , ( SP)) SP← ( SP) +2 即連續(xù)執(zhí)行兩次出棧操作,首先彈出的送入 IP中,第二次彈出的送入 CS中。 ( 2) 指令格式: LOOPNE OPRD 指令功能: CX← ( CX) - 1若 CX≠0且 ZF= 0循環(huán) 。 DOS 功能調(diào)用 中斷 功能 入口參數(shù) 出口參數(shù) INT 20H 程序正常退出 INT 21H 系統(tǒng)功能調(diào)用 AH=功能號,相應(yīng)入口號數(shù) 相應(yīng)出口號數(shù) INT 22H 結(jié)束退出 INT 23H Ctrl+Break退出 INT 24H 出錯退出 INT 25H 讀盤 AL=驅(qū)動器號 CX=讀入扇區(qū)數(shù) DX=起始邏輯扇區(qū)號 DS: BX=內(nèi)存緩沖區(qū)地址 CF=1讀盤出錯 CF=0讀盤正常 INT 26H 寫盤 AL=驅(qū)動器號 CX=寫入扇區(qū)數(shù) DX=起始邏輯扇區(qū)號 DS: BX=內(nèi)存緩沖區(qū)地址 CF=1寫盤出錯 CF=0寫盤正常 INT 27H 駐留退出 INT 28~ 2EH DOS保留 INT 2FH 打印機 INT 30H~ 3FH DOS保留 要完成系統(tǒng)功能調(diào)用 , 基本按如下步驟: ( 1) 將入口參數(shù)送到指定寄存器中 。 這樣 ,用戶就不必深入了解有關(guān)設(shè)備的電路和接口 , 只須遵照 DOS規(guī)定的調(diào)用原則即可使用 。 這類指令用 CX作計數(shù)器 , 每執(zhí)行一次指令 , CX內(nèi)容減 1,直到減為 0, 循環(huán)才結(jié)束 。 指令功能:段內(nèi)調(diào)用 SP?( SP) - 2, ( SP) ?( IP) IP?寄存器或存儲器所對應(yīng)的 16位數(shù)據(jù) 指令執(zhí)行后 , 把 16位通用寄存器或存儲單元中的內(nèi)容送入IP中 , CS保持不變 。 執(zhí)行該指令時要修改 CS和 IP的內(nèi)容 。 SHORT為屬性運算符,指示匯編程序?qū)⒌刂穮R編成 8位偏移量,范圍在- 128~+ 127之內(nèi)。 例如:將 1 000個字符的字符串從內(nèi)存的 BUFFERl搬移到內(nèi)存的BUFFER2中去 。重復(fù)次數(shù)應(yīng)放在寄存器 CX中 。 3. SCAS串掃描指令 指令格式: SCAS OPRD1, OPRD2 SCASB ;字節(jié)掃描 SCASW ;字掃描 指令功能: 字節(jié)操作 AL- (( DI)) DI← ( DI) ?1; 字操作 AX- (( DI)) DI← ( DI) ?2; 該類指令是串掃描指令,用于尋找內(nèi)存區(qū)中指定的數(shù)據(jù)和字符。 在每做一次串操作后 , 若是對字節(jié)進行操作 , 則 SI和 DI的值會自動加 1或減 l;若是對字進行操作 , 則 SI和 DI的值就自動加 2或減 2, 是加還是減由 DF標志寄存器來決定 。右移一位時,操作數(shù)的最低位移出送到 CF中,同時送至最高位。該指令每執(zhí)行一次移位操作,就使操作數(shù)右移一位,但符號位保持不變,而最低位移至標志位 CF,目的操作數(shù)可以是 8位,也可以 16位。 XOR指令執(zhí)行后 , 標志位 CF=0, OF=0, 標志位 PF、 SF,ZF將反映 “ 異或 ” 操作的結(jié)果 。 目的操作數(shù) OPRDl:可以是累加器 、 通用寄存器 、 也可 以是存儲器 。 標志位 PF、 SF、ZF反映操作的結(jié)果 , 而標志位 AF未定義 。 ( 2) AND 邏輯 “ 與 ” 指令 指令格式: AND OPRDl, OPRD2 指令功能: OPRD1← ( OPRD1) ∧ ( OPRD2) 該指令對兩個操作數(shù)進行按位相 “ 與 ” 的邏輯運算 。 調(diào)整操作如下: AL← 10 AH+ AL AH← 0 例如:一個數(shù)據(jù)為 65, 用非壓縮的 BCD碼表示 , 則 AH中為00000110, AL中為 00000101, 調(diào)整執(zhí)行 AAD指令 , 這條指令將 AH中的內(nèi)容乘以 10, 再加上 AL中的內(nèi)容 , 這樣得到 AL的結(jié)果為 41H。 AH← ( AH) -調(diào)整產(chǎn)生的借位值 。 當然 BCD碼只有 0~ 9共 10種編碼 。 用 IDIV指令時 , 如果是一個雙字除以一個字 , 則商的范圍為- 32768~ 32767;如果是一個字除以一個字節(jié) , 則商的范圍為- 128~ 127。它們都可以進行字節(jié)或字除法運算 , 并且規(guī)定 , 8位除法的被除數(shù)在 AX中; 16位除法的被除數(shù)在 DX與 AX中 , 除數(shù)均由指令指出 。 當 OF⊕ SF=0時 , OPRD1OPRD2。 例如: CMP AX, 2022H CMP AL, 50H CMP DX, SI CMP AX, [BX+ SI+ 10H] 比較指令在執(zhí)行時,會影響標志位 AF、 CF、 OF、 PF、 SF、 ZF。 ( 3) DEC減 1指令 指令格式: DEC OPRD 指令功能: OPRD← ( OPRD) - 1 該指令實現(xiàn)對操作數(shù)的減 1操作 , 所用的操作數(shù)可以是寄存器的 , 也可以是存儲器 。 其操作數(shù)可以是通用寄存器 , 也可以是存儲器 。 在使用時還要注意兩個操作數(shù)類型一致 。 指令格式: IN 累加器 , 端口地址 執(zhí)行輸出指令時 , CPU可以將 AL中的一個字節(jié)寫到一個 8位端口中 , 或者將 AX中的一個字寫到兩個連續(xù)的 8位端口中 。 LEA BX, DATA 和 MOV BX, OFFSET DATA等價 LEA SI, BUFFER 和 MOV SI, OFFSET BUFFER等價 ( 2) LDS指令 該指令完成一個地址指針的傳送 。 MOV AL, DATAl MOV DATA2, AL ( 2) 交換指令 指令格式: XCHG OPRDl, OPRD2 執(zhí)行功能:交換指令把一個字節(jié)或一個字的源操作數(shù)與目的操作數(shù)相交換。 1. 通用傳送指令 通用傳送指令中包括最基本的傳送指令 MOV,交換指令XCHG,椎棧指令 PUSH和 POP,字節(jié)、字轉(zhuǎn)換指令 CBW和 CWD。 操作碼50CS3 0 0 01 0 0 03 1 0 5 0代碼段......IP5 0...操作碼31050HROM2 . 段內(nèi)間接尋址 這種尋址方式在段內(nèi)進行 , 其轉(zhuǎn)移的目標地址是 16位寄存器或兩個相鄰的存儲單元的內(nèi)容 , 即以寄存器或存儲器單元內(nèi)容來更新 IP的內(nèi)容 。將這兩種寄存器聯(lián)合起來進行的尋址就稱為基址、變址尋址。此時數(shù)據(jù)段寄存器內(nèi)容加上 SI、 DI、 BX中的 16位段內(nèi)偏移地址,即得操作數(shù)的地址 例: MOV AX, [SI] 操作碼DS 3 0 0 03 1 0 0 0代碼段數(shù)據(jù)段AXAH AL785656 7831000H31001H...1 0 0 0ROMSI...... 和直接尋址的情況 — 樣 , 如果指令前面沒有用前綴指明具體的段寄存器 , 則尋址時 默認的段寄存器通常為 DS。 操作碼3412AH ALROM代碼段......AX 12 34圖 31 立即尋址示意圖 2 . 寄存器尋址 如果操作數(shù)就在 CPU的內(nèi)部寄存器中 , 那么寄存器名在指令中給出 。 【 本章難點 】 8086的尋址方式,數(shù)據(jù)傳送類指令 和算術(shù)運算類指令的使用。 采用寄存器尋址方式的指令在執(zhí)行時,操作就在 CPU內(nèi)部進行,不需要使用總線周期,因此,執(zhí)行速度快。此時堆棧段寄存器內(nèi)容加上 BP中的 16位段內(nèi)偏移地址,即得操作數(shù)的地址。 操作碼DS 3 0 0 03 0 0 03 4 0 0 0代碼段堆棧段AXAH AL785656 7834000H34001H......1 0 0 0ROMSIBP例: MOV AX, DISP[BX
點擊復(fù)制文檔內(nèi)容
環(huán)評公示相關(guān)推薦
文庫吧 www.dybbs8.com
備案圖鄂ICP備17016276號-1