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

正文內(nèi)容

微機(jī)原理與接口技術(shù)復(fù)習(xí)資料(34)章(留存版)

2024-12-25 19:13上一頁面

下一頁面
  

【正文】 ORT, AL ; (PORT) ? AL OUT PORT, AX ; (PORT+1, PORT) ?AX 在間接輸入輸出指令之前,需將端口號送入 DX 寄存器。 ? 為 8080/ 8085 提供兼容性。 ? 源、目的操作數(shù)不能同時(shí)為存儲器,且類型必須一致,均為字節(jié)或字; INC 增量 DEC 減量 AAA 加法的 ASCII 調(diào)整 NEG 取負(fù) DAA 加法的十進(jìn)制調(diào)整 CMP 比較 除 法 AAS 減法的 ASCII 調(diào)整 DIV 無符號數(shù)除法 DAS 減法的十進(jìn)制調(diào)整 IDIV 整數(shù)除法 乘 法 AAD 除法的 ASCII 調(diào)整 MUL 無符號數(shù)乘法 CBW 把字節(jié)轉(zhuǎn)換成字 IMUL 整數(shù)除法 CWD 把字轉(zhuǎn)換成雙字 AAM 乘法的 ASCII 調(diào)整 ? 兩條指令影響的標(biāo)志位為: CF、 OF、 PF、 SF、 ZF和 AF。 0000 1001…9 。 ? DAA 加法的十進(jìn)制調(diào)整指令 (Decimal Adjust for Addition) 指令格式: DAA 指令功能:將兩個(gè)壓縮 BCD 數(shù)相加后的結(jié)果調(diào)整為正確的壓縮 BCD 數(shù)。 例 設(shè) AL= 1011 0001B, DL= 0100 1010B,求 AL- DL。 1011 1110… 低 4 位 9, CF=AF=1 。 ▲ 作為帶符號數(shù):表示 (- 1)(- 1)=- 511,顯然結(jié)果不正確。 ▲源操作數(shù)為字節(jié): 16 位被除數(shù)必須放在 AX 中, 8 位除數(shù)為源操作數(shù)。 注意: CWD 指令執(zhí)行后,也不影響標(biāo)志位。 ( 3) CBW 把字節(jié)轉(zhuǎn)換為字指令( Convert Byte to Word) 指令格式: CBW 指令功能:把寄存器 AL 中字節(jié)的符號位擴(kuò)充到 AH 的所有位。 解: MOV AL, 09H ;置初值 MOV BL, 06H MUL BL ; AL ← 09 與 06 之乘積 36H AAM ;調(diào)整得 AH= 05H(十位), AL= 04H(個(gè)位) 結(jié)果: AX= 0504H,即 BCD 數(shù) 54。 解 : MUL BL 結(jié)果: ① AX = 06A4H。 調(diào)整過程: ① 如果 AL 寄存器的低 4 位> 9 或 AF= 1 則: AL ← AL- 06H, AF 置 1 ② 如果此時(shí) AL 高半字節(jié)> 9 或標(biāo)志位 CF= 1 則: AL ← AL- 60H, CF 置 1 例 設(shè) AL= BCD 56, CL= BCD 98,求兩數(shù)之差。 ? 減法指令小結(jié):(上述五種指令都做減法運(yùn)算) ① 對于雙操作數(shù)指令( SUB、 SBB、 CMP) 源操作數(shù)可以是寄存器、存儲器或立即數(shù); 目的操作數(shù)可以是寄存器、存儲器,但不能為立即數(shù) ; 兩個(gè)操作數(shù)不能同時(shí)為存儲器。 + 0000 0110… 加 6 調(diào)整 ; 0111 0100 ; ∧ 0000 1111… 清高 4 位 ; 0000 0100…AL=4 ; CF=1, AF=1, AH=1 。 (注:非壓縮十進(jìn)制數(shù)的高 4 位為全 0,低 4 位為十進(jìn)制數(shù)字 0~9。 4 種類型數(shù)的表示方法 8086/ 8088 指令系統(tǒng)提供: ? 加、減、乘、除運(yùn)算指令:處理無符號或帶符號的 8 位 /16 位二進(jìn)制數(shù)的算術(shù) 運(yùn) 算; ? 調(diào)整操作指令:進(jìn)行壓縮的或非壓縮的十進(jìn)制數(shù)的算術(shù)運(yùn)算; ? 加法和減法運(yùn)算指令:帶符號數(shù)和無符號數(shù)的加法和減法的運(yùn)算可以用同一條加法或減法指令來完成。 ? 執(zhí)行這條指令后,標(biāo)志位本身并不受影響。 ? XLAT 指令使用步驟: ? 使用之前必須先建立一個(gè)表格,表格中的內(nèi)容是所需要轉(zhuǎn)換的代碼; ? 將轉(zhuǎn)換表的起始地址裝入 寄存器; ? 欲查的某項(xiàng)與表頭地址的位移量 ,即表格最多包含 256個(gè)字節(jié); ? 執(zhí)行 XLAT 指令后,根據(jù)位移量從表中查到轉(zhuǎn)換后的代碼值 AL 寄存器中。33 8086 的指令系統(tǒng) 六類指令(按功能): 一、數(shù)據(jù)傳送指令 ( 14 條) 通用數(shù)據(jù)傳送指令 地址目標(biāo)傳送指令 MOV 字節(jié)或字的傳送 LEA 裝入有效地址 PUSH 入棧指令 LDS 裝入數(shù)據(jù)段寄存器 POP 出棧指令 LES 裝入附加段寄存器 XCHG 交換字或字節(jié) 標(biāo)志傳送指令 XLAT 表轉(zhuǎn)換 LAHF 標(biāo)志寄存器低字節(jié)裝入 AH 輸入輸出指令 SAHF AH 內(nèi)容裝入標(biāo)志寄存器低字節(jié) IN 輸入 PUSHF 標(biāo)志寄存器入棧指令 OUT 輸出 POPF 出棧,并送入標(biāo)志寄存器 ? 通用數(shù)據(jù)傳送指令 (General Purpose Data Transfers) ? MOV 傳送指令( Move) 指令格式: MOV 目的,源 指令功能:實(shí)現(xiàn) CPU 的內(nèi)部寄存器間或寄存器與存儲器間的數(shù)據(jù)傳送。 從附錄 B 可知,該指令的操作碼為 1000l0;傳送的是字?jǐn)?shù)據(jù),所以 w= 1; REG 字段:選擇 SP,則 REG 字段編碼= 100; D 位 =1:表示數(shù)據(jù)傳至所選的寄存器 (SP); MOD= 11:因另一個(gè)操作數(shù) BX 也是寄存器??稍L問端口 00~FFH,即 256 個(gè)端口。 操作數(shù)的物理地址 = 16DS + BX / SI / DI + COUNT 或 = 16SS + BP 例: MOV BX, COUNT [SI] 。( AX 內(nèi)容不變) ( 又例: MOV BL, AL ) ? 注意:源操作數(shù)的長度必須與目的操作數(shù)一致。31 8086 的尋址方式 概述 ? 計(jì)算機(jī)的指令包括: 操作碼 + 操作數(shù) ↓ ↓ 操作的性質(zhì) 操作的對象 ↓存放 寄存器、存儲器、 I/O 端口地址、立即數(shù)(由尋址方式?jīng)Q定) ? 尋址方式:指令中說明操作數(shù)所在地址的方法。8 位操作數(shù):寄存器 AH、 AL、 BH、 BL、 CH、 CL、 DH 和 DL。 例 MOV BX, [SI] 解:設(shè): DS= 1000H, SI= 2020H,( 12020H)= 318BH 則:物理地址 = 16DS + SI= 10000H + 2020H= 12020H 指令執(zhí)行后, BX= 318BH,指令執(zhí)行過程如圖所示。如:指令 DAA ;對寄存器 AL 中的數(shù)據(jù)進(jìn)行十進(jìn)制數(shù)調(diào)整,結(jié)果仍保留在 AL 中。如下表所示。 解:該指令的編碼是在不帶段超越前綴的指令代碼 88 17H 前,加上一個(gè)字節(jié)001110。 例 設(shè) AX = 2020H, DS = 3000H, BX = 1800H,( 31A00H) = 1995H。 例 設(shè) DS= 0100H, BX= 0020H, (01020H)= 0300H, (01022H)= 0500H。 ? 壓縮十進(jìn)制數(shù):一個(gè)字節(jié)中存放兩個(gè) BCD 碼十進(jìn)制數(shù)。 例 INC BL ; BL 寄存器中內(nèi)容增 1 INC CX ; CX 寄存器中內(nèi)容增 1 INC BYTE PTR[BX] ;內(nèi)存 字節(jié)單元內(nèi)容增 1 INC WORD PTR[BX] ;內(nèi)存字單元內(nèi)容增 1 其中, PTR 為類型說明符,前面加 BYTE 說明操作數(shù)類型為字節(jié),加 WORD 則說明操作數(shù)類型為字。 0011 1001…’9’ 。 1101 0001…AF=1 。 調(diào)整過程: 若 AL 寄存器的低 4 位> 9 或 AF= 1, 則: ①AL ← AL- 6, AF 置 1 ② 將 AL 寄存器高 4 位清零 ③AH AH- 1, CF 置 1 否則,不需要調(diào)整 ( 7) DAS 減法的十進(jìn)制調(diào)整指令( Decimal Adjust for Subtraction) 指令格式: DAS 指令功能:將 AL 中兩個(gè)壓縮 BCD 數(shù)相減后的結(jié)果調(diào)整為正確的壓縮 BCD 數(shù)。 據(jù)此可檢測并去除結(jié)果中的無效前導(dǎo)零。 ▲ 標(biāo)志位的影響:影響 ZF、 SF 和 PF,但 AF、 CF 和 OF 無定義。 ▲帶符號數(shù)除法指令,字節(jié)操作時(shí)要求被除數(shù)為 16 位,字操作時(shí)要求被除數(shù)為 32 位,如果被除數(shù)不滿足這個(gè)條件,不能簡單地將高位置 0,而應(yīng)該用符號擴(kuò)展指令( Sign Extension)將被除數(shù)轉(zhuǎn)換成除法指令所要求的格式。 ▲根據(jù) AL 寄存器結(jié)果影響 SF、 ZF、 PF,但對 OF、 CF、 AF 無定義。 AX ← ( DX, AX)/源(字)的商 DX ← ( DX, AX)/源(字)的余數(shù) 若被除數(shù)、除數(shù)都是 16 位,則將 16 位被除數(shù)送到 AX 中,再將 DX 清 0。 ▲存放結(jié)果的方式與 MUL 相同: 源操作數(shù)為字節(jié):與 AL 相乘,雙倍長結(jié)果送到 AX 中; 源操作數(shù)為字:與 AX 相乘,雙倍長結(jié)果送到 DX 和 AX 中,最后給乘積賦予正確的符號。即 AX ← AL 源。 CF= 0 表示沒有借位, SF 和 OF 無意義。 例 若 AL= BCD 88, BL= BCD 49,求兩數(shù)之和。 + 0000 0110… 加 6 調(diào)整 ; 0001 0100 ; ∧ 0000 1111… 清高 4 位 ; 0000 0100…AL=4 ; CF=1, AF=1, AH=1 ; 結(jié)果為 AX= 0104H,表示非壓縮十進(jìn)制數(shù) 14 ASCII 碼表示的十進(jìn)制數(shù),高半字節(jié)均為 3,運(yùn)算時(shí)需用 AND 指令將它屏蔽。 ▲對標(biāo)志的解釋(人為決定): ① 兩個(gè)加數(shù)都看成無符號數(shù)時(shí),運(yùn)算結(jié)果為 9AH,即十進(jìn)制數(shù) 154。 注意: ? 要成對使用 PUSHF 和 POPF,可對標(biāo)志寄存器進(jìn)行保存和恢復(fù)。 使用時(shí)要注意與 MOV 指令的區(qū)別。( OFFSET:取后面的符號偏移地址的值) 設(shè): ARRAY 的定義如左圖所示 則: DX = 0005H 例 : MOV AL, AREA1 。 解:指令的功能是將 16 位立即數(shù) 0FA50H 送到有效地址為 (BX+ 2100H)的字存儲單元中;其中低字節(jié) 50H 送列〔 BX+ 2100H〕單元,高字節(jié) FAH 送到 (BX+ 2101H)單元; 指令中不但有 16 位立即數(shù),還有 16位位移量; 查附錄 B 知,該指令的 6 字節(jié)編碼為: C7 87 00 21 50 FA。 ? 為每種基本指令類型給出一個(gè)編碼格式,對照格式填上不同的數(shù)字表示不同的尋址方式、數(shù)據(jù)類型,即可求得每條指令的機(jī)器碼。 操作數(shù)的物理地址 = 16DS + BX + SI / DI + 8/16 位位移量 或 = 16SS + BP + SI / DI + 8/16 位位移量 ? 注意:寄存器 SI 和 DI、 BP 和 BX 不能同時(shí)出現(xiàn)在 [ ]中。 可對代碼段( CS)、堆棧段( SS)或附加段( ES)寄存器直接尋址。 16 位數(shù):高字節(jié) →代碼段的高地址單元,低字節(jié) →低地址單元; ? 作用:常用于給寄存器賦初值。在取出指令的同時(shí)也就取出了操作數(shù),立即有操作數(shù)可用,所以稱之為立即尋址。 (注:如用 AL 替代 AX,則 AL=34H)
點(diǎn)擊復(fù)制文檔內(nèi)容
公司管理相關(guān)推薦
文庫吧 www.dybbs8.com
備案圖鄂ICP備17016276號-1