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

正文內(nèi)容

第3章8086的尋址方式和指令系統(tǒng)-文庫吧資料

2024-08-02 09:55本頁面
  

【正文】 或 ” 指令 指令格式: XOR OPRDl, OPRD2 指令功能: OPRD1← ( OPRD1) ⊕ ( OPRD2) 該指令對(duì)兩個(gè)操作數(shù)進(jìn)行按位相 “ 異或 ” 的邏輯運(yùn)算 。 目的操作數(shù) OPRDl:可以是累加器 、 通用寄存器 、 也可 以是存儲(chǔ)器 。 即只要參加相 “ 或 ” 的兩位中任一位為 “ 1”時(shí) , 相 “ 或 ” 結(jié)果為 “ 1”, 如果兩位都為 0時(shí) , 其結(jié)果才為 0。 例如:若要檢測 AL中的最高位是否為 1, 且為 1時(shí)則轉(zhuǎn)移 。 利用該指令 , 可以在不改變原有操作數(shù)的情況下 , 用來檢測某一位或某幾位是 “ 0”不是 “ 1”。 標(biāo)志位 PF、 SF、ZF反映操作的結(jié)果 , 而標(biāo)志位 AF未定義 。 AND AL, 0FH AND AL, 0CH AND AX, BX AND AX, DATA AND DX, BUFFER[SI+BX] AND DATA, 00FFH AND BLOCK[BP+DI], DX 某一個(gè)操作數(shù) , 如果自己與自己相 “ 與 ” , 操作數(shù)不變 ,但可以使進(jìn)位標(biāo)志位 CF清 0。 目的操作數(shù) OPRDl:可以是累加器 , 也可以是通用寄存器 , 也可以是存儲(chǔ)器 。 相 “ 與 ”結(jié)果送回目的操作數(shù) 。 ( 2) AND 邏輯 “ 與 ” 指令 指令格式: AND OPRDl, OPRD2 指令功能: OPRD1← ( OPRD1) ∧ ( OPRD2) 該指令對(duì)兩個(gè)操作數(shù)進(jìn)行按位相 “ 與 ” 的邏輯運(yùn)算 。 該指令對(duì)標(biāo)志位不產(chǎn)生影響 。 ( 1) NOT邏輯求反指令 指令格式: NOT OPRD 指令功能: OPRD←OPRD 該指令對(duì)操作數(shù)進(jìn)行求反操作 , 然后將結(jié)果送回 。 這條指令根據(jù) AL寄存器的結(jié)果設(shè)置 SF、 ZF和 PF, OF、 CF和 AF無定義。 調(diào)整操作如下: AL← 10 AH+ AL AH← 0 例如:一個(gè)數(shù)據(jù)為 65, 用非壓縮的 BCD碼表示 , 則 AH中為00000110, AL中為 00000101, 調(diào)整執(zhí)行 AAD指令 , 這條指令將 AH中的內(nèi)容乘以 10, 再加上 AL中的內(nèi)容 , 這樣得到 AL的結(jié)果為 41H。 ( 4) AAD除法的 BCD碼調(diào)整指令 對(duì) BCD碼進(jìn)行除法運(yùn)算時(shí) , 也要求除數(shù)和被除數(shù)都用非壓縮的 BCD碼形式來表示 , 這是與對(duì) BCD碼乘法的要求類似的地方 。 本指令的調(diào)整方法是:把 AL寄存器的內(nèi)容除以 0AH, 商放在 AH中 , 余數(shù)保存在 AL中 。 ( 3) AAM乘法的 BCD碼調(diào)整指令 指令格式: AAM 指令功能: AX← 把 AL中的積調(diào)整為非壓縮的 BCD碼格式 。 AH← ( AH) -調(diào)整產(chǎn)生的借位值 。 第一條指令執(zhí)行后 , AL=6EH, AF=0;第二條指令進(jìn)行 BCD碼調(diào)整的結(jié)果使 AX=0604H, AF=1, CF=1。 調(diào)整的步驟如下: ① 如 AL寄存器的低 4位在 0~ 9之間 , 且 AF=0, 則跳過第 ②步 , 執(zhí)行第 ③ 步; ② 如 AL寄存器的低 4位為十六進(jìn)制數(shù)的 A~ F或 AF=1, 則 AL中的內(nèi)容加 6, AH中內(nèi)容加 1, 并將 AF置 1; ③ 清除 AL寄存器的高 4位; ④ AF位的值送 CF位 。 ( 1) AAA非壓縮十進(jìn)制數(shù)加法調(diào)整指令 指令格式: AAA 指令功能: AL← 把 AL中的和調(diào)整為非組合的 BCD碼格式 。 當(dāng)然 BCD碼只有 0~ 9共 10種編碼 。 若 AX中的D15=0, 則 ( DX) =0000H;若 AX的 D15=1, 則 ( DX)=FFFFH。 若 AL中的D7=0, 則 ( AH) =00H;若 AL的 D7=1, 則 ( AH)=FFH。 例如:在存儲(chǔ)器中有 X和 Y兩個(gè)單元 , 存有無符號(hào)數(shù) ,現(xiàn)要求完成 X/Y, 將商存入 Z單元 。 用 IDIV指令時(shí) , 如果是一個(gè)雙字除以一個(gè)字 , 則商的范圍為- 32768~ 32767;如果是一個(gè)字除以一個(gè)字節(jié) , 則商的范圍為- 128~ 127。 (OPRD) 余數(shù) ( 2) IDIV帶符號(hào)數(shù)除法指令 指令格式: IDIV OPRD 指令操作:與 DIV指令相同 , 但被除數(shù) 、 除數(shù) 、 商 、 余數(shù)全部均為帶符號(hào)數(shù) , 且余數(shù)的符號(hào)位同被除數(shù) 。 (OPRD) 余數(shù) OPRD為字?jǐn)?shù)據(jù): AX← (DX) (AX)247。 ( 1) 無符號(hào)數(shù)除法指令 DIV 指令格式: DIV OPRD 指令功能: OPRD為字節(jié)數(shù)據(jù): AL← (AX)247。它們都可以進(jìn)行字節(jié)或字除法運(yùn)算 , 并且規(guī)定 , 8位除法的被除數(shù)在 AX中; 16位除法的被除數(shù)在 DX與 AX中 , 除數(shù)均由指令指出 。 MUL指令對(duì)狀態(tài)標(biāo)志 CF、 OF有影響, SF、 ZF、 AF、 PF不確定。 ( 1) 無符號(hào)數(shù)乘法指令 MUL 指令格式: MUL OPRD 指令功能: 若 OPRD為字節(jié)數(shù)據(jù) , 則執(zhí)行 AX← ( AL) ( OPRD) 若 OPRD為字?jǐn)?shù)據(jù) , 則執(zhí)行 DX、 AX← ( AX) ( OPRD) 目的操作數(shù)為: AL或 AX( 隱含給出 ) 源操作數(shù)為:通用寄存器 、 存儲(chǔ)器 。 CMP AL, 0 ; AL和 0進(jìn)行比較 JGE NEXT ;若 AL≥ 0則轉(zhuǎn)到 NEXT執(zhí)行 例如,若自 BLOCK開始的內(nèi)存緩沖區(qū)中,有 100個(gè)帶符號(hào)的數(shù),希望找到其中最大的一個(gè)值,并將它放到 MAX單元中。 當(dāng) OF⊕ SF=0時(shí) , OPRD1OPRD2。 兩個(gè)有符號(hào)數(shù)的比較 兩個(gè)有符號(hào)的比較時(shí) , 同符號(hào)數(shù)相比較 , 相減的結(jié)果不會(huì)超出帶符號(hào)數(shù)的表示范圍 , 即不會(huì)產(chǎn)生溢出 , OF=0;兩個(gè)不同號(hào)的帶符號(hào)數(shù)比較 ,相減的結(jié)果有可能產(chǎn)生溢出 。 如果 CF=0, 表示無借位 , 即被減數(shù)大 , 減數(shù)小 。 1) 兩個(gè)操作數(shù)相等 如果所比較的兩個(gè)操作數(shù)相等時(shí) , 那么標(biāo)志位 ZF=1, 所以根據(jù) ZF就可以判斷兩數(shù)是否相等 。 例如: CMP AX, 2022H CMP AL, 50H CMP DX, SI CMP AX, [BX+ SI+ 10H] 比較指令在執(zhí)行時(shí),會(huì)影響標(biāo)志位 AF、 CF、 OF、 PF、 SF、 ZF。 指令執(zhí)行后兩操作數(shù)的內(nèi)容不變 , 但相減的結(jié)果影響標(biāo)志位 。 例如: NEG AL NEG BYTE PTR[SI] 如果操作數(shù)的值為- 128( 16進(jìn)制數(shù)為 80H) 或者一 32 768( 16進(jìn)制數(shù)為 8000H) , 執(zhí)行求補(bǔ)指令后 , 操作數(shù)沒有變化 , 但溢出標(biāo)志 OF=1。 該指令執(zhí)行結(jié)果將影響標(biāo)志位 AF、OF、 PF、 SF和 ZF, 但對(duì) CF標(biāo)志不產(chǎn)生影響 , 例如: DEC BL DEC CX DEC BYTE PTR[SI] ( 4) NEG求補(bǔ)指令 指令格式: NEG OPRD 指令功能: OPRD← 0- ( OPRD) 該指令用來對(duì)操作數(shù)進(jìn)行求補(bǔ)操作 , 即用零減去操作數(shù) ,然后再將結(jié)果送回 。 ( 3) DEC減 1指令 指令格式: DEC OPRD 指令功能: OPRD← ( OPRD) - 1 該指令實(shí)現(xiàn)對(duì)操作數(shù)的減 1操作 , 所用的操作數(shù)可以是寄存器的 , 也可以是存儲(chǔ)器 。 這條指令主要用于多字節(jié)的減法運(yùn)算 。 SUB AL, 78H ; AL← ( AL)- 78H SUB BX, 5678H ; BX← ( BX)- 5678H SUB AX, CX ; AX← ( AX)-( CX) SUB AL, 4[SI] ; AL← ( AL)-(( SI+ 4)) SUB DX, 1000H[BX+SI] ; DX← ( DX)-(( BX+ SI+ 1000H)) SUB [SI+ 5], 100 ;( SI+5) ← (( SI+5))- 100 SUB [SI+ 2022H], AX ;( SI+2022H) ← (( SI+2022H))-( AX) 指令執(zhí)行后對(duì)各狀態(tài)標(biāo)志位 OF、 SF、 AF、 PF和 CF均可產(chǎn)生影響。 源操作數(shù) OPRD2:可以是累加器 、 通用寄存器 、 存儲(chǔ)器 、 立即數(shù) 。 其操作數(shù)可以是通用寄存器 , 也可以是存儲(chǔ)器 。 MOV AX, DATA1 ADD AX, DATA2 MOV DATA3, AX MOV AX, DATA1+2 ADC AX, DATA2+2 MOV DATA3+2, AX DATA1DATA2DATA346H75H12H00H28H94H10H00H}}被加數(shù)加數(shù)該指令對(duì)標(biāo)志位的影響與 ADD指令對(duì)標(biāo)志位的影響相同。 例如:現(xiàn)有兩個(gè)雙精度字 00127546H和 00109428H,其中被加數(shù) 00127546H存放在 DATA1為首的內(nèi)存單元中,加數(shù)00109428H存放在 DATA2為首的內(nèi)存單元中。 這些指令執(zhí)行時(shí) , 對(duì)標(biāo)志位 CF、 OF、 SF、 ZF和 AF都會(huì)產(chǎn)生影響 。 在使用時(shí)還要注意兩個(gè)操作數(shù)類型一致 。 目的操作數(shù)可以是累加器 、 通用寄存器或存貯器 。 存貯器 通用寄存器通用寄存器立即數(shù) 存貯器通用寄存器通用寄存器 存貯器進(jìn)行加、減運(yùn)算的源操作數(shù)和目的操作數(shù)的關(guān)系 1. 加法指令 ( 1) 不帶進(jìn)位的加法指令 指令格式: ADD OPRDl, OPRD2 指令功能: OPRDl← ( OPRDl) +( OPRD2) ADD指令兩個(gè)操作數(shù)相加 , 結(jié)果送至目的操作數(shù) 。 例如: IN AX, 20H ;讀 20H、 21H端口一個(gè)字的數(shù)據(jù)到 AX中 OUT 22H, AL ;將 AL中的數(shù)據(jù)從 22H端口輸出 MOV DX, 210H ;端口 地址 210H送 DX IN AL, DX ;讀 210H端口一個(gè)字節(jié)到 AL中 OUT DX, AX ;將 AX中的數(shù)據(jù)從 210H端口輸出 8086可提供加 、 減 、 乘 、 除 4種基本算術(shù)運(yùn)算的操作指令 。 指令格式: IN 累加器 , 端口地址 執(zhí)行輸出指令時(shí) , CPU可以將 AL中的一個(gè)字節(jié)寫到一個(gè) 8位端口中 , 或者將 AX中的一個(gè)字寫到兩個(gè)連續(xù)的 8位端口中 。 3. 輸人輸出指令 輸入 /輸出指令用來完成累加器 ( AX/AL) 與 I/O端口之間的數(shù)據(jù)傳送功能 。 ( 3) LES指令 這條指令除將地址指針的段地址送入 ES外 , 其他操作與LDS的類似 。 指令執(zhí)行時(shí) , 將段地址送入 DS, 地址偏移量送入一個(gè) 16位的指針寄存器或變址寄存器 。 LEA BX, DATA 和 MOV BX, OFFSET DATA等價(jià) LEA SI, BUFFER 和 MOV SI, OFFSET BUFFER等價(jià) ( 2) LDS指令 該指令完成一個(gè)地址指針的傳送 。 源操作數(shù)必須是一個(gè)內(nèi)存操作數(shù) , 目的操作數(shù)必須是一個(gè)16位的通用寄存器 。 ① DL← ( SP) ; SP+ l → SP , SP=1FFDH ② DH← ( SP) ; SP+ l → SP , SP=1FFEH ③ AL← ( SP) ; SP+ l → SP , SP=1FFF H ④ AH← ( SP) ; SP+ l → SP , SP=2022H 2. 地址傳送指令 8086有 3條地址傳送指令 。 2022H1FFFH1FFEH1FFDH1FFCHSP12345678堆棧段2022H1FFFH1FFEH1FFDH1FFCHSP12345678堆棧段............① SP- l → SP ; SP=1FFFH ,( SP) ← AH ② SP- l → SP ; SP=1FFEH ,( SP) ← AL ③ SP- l → SP ; SP=1FFDH ,( SP) ← DH ④ SP- l → SP ; SP=1FFCH ,( SP) ← DL 2022H1FFFH1FFEH1FFDH1FFCHSP1234567
點(diǎn)擊復(fù)制文檔內(nèi)容
環(huán)評(píng)公示相關(guān)推薦
文庫吧 www.dybbs8.com
備案圖鄂ICP備17016276號(hào)-1