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

正文內(nèi)容

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

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

下一頁面
  

【正文】 解:指令的功能是將 BX 寄存器的內(nèi)容送到 SP 寄存器中。 解:指令的功能是將 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。 可得到該指令的機(jī)器碼為 2E 88 17H 微機(jī)系統(tǒng)指令的機(jī)器碼表示方法(自學(xué)) 167。( OFFSET:取后面的符號偏移地址的值) 設(shè): ARRAY 的定義如左圖所示 則: DX = 0005H 例 : MOV AL, AREA1 。 源操作數(shù)物理地址= 300010H + 1800H + 200H= 31A00H, 指令執(zhí)行后: AX= 1995H,( 31A00H)= 2020H ? XLAT 表轉(zhuǎn)換指令( Table LookupTranslation) ? 指令格式: XLAT 轉(zhuǎn)換表 或: XLAT ? 指令功能:使累加器( AL)中的一個(gè)值變換為內(nèi)存表格中的某一個(gè)值,一般用來實(shí)現(xiàn)代碼轉(zhuǎn)換,即查表功能。 使用時(shí)要注意與 MOV 指令的區(qū)別。 注意: ? 位 1 的內(nèi)容未定義,是任意值。 注意: ? 要成對使用 PUSHF 和 POPF,可對標(biāo)志寄存器進(jìn)行保存和恢復(fù)。 例如,對十進(jìn)制數(shù)字 58: 壓縮十進(jìn)制數(shù)表示:只需一個(gè)字節(jié),即 0101 1000B; 非壓縮十進(jìn)制數(shù)表示:需兩個(gè)字節(jié),即 0000 0101B 和 0000 1000B。 ▲對標(biāo)志的解釋(人為決定): ① 兩個(gè)加數(shù)都看成無符號數(shù)時(shí),運(yùn)算結(jié)果為 9AH,即十進(jìn)制數(shù) 154。 如果 AF= 1,表示向高位有進(jìn)位,則進(jìn)到 AH 寄存器中。 + 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 指令將它屏蔽。 0110 1110… 低 4 位 9 。 例 若 AL= BCD 88, BL= BCD 49,求兩數(shù)之和。 用途:用在比較兩個(gè)數(shù)大小,又不破壞原操作數(shù)的場合。 CF= 0 表示沒有借位, SF 和 OF 無意義。 使用前提:在兩個(gè)壓縮十進(jìn)制數(shù)用 SUB 或 SBB 相減后,結(jié)果在 AL 中。即 AX ← AL 源。 例 設(shè) AL= 55H, BL= 14H,計(jì)算它們的積。 ▲存放結(jié)果的方式與 MUL 相同: 源操作數(shù)為字節(jié):與 AL 相乘,雙倍長結(jié)果送到 AX 中; 源操作數(shù)為字:與 AX 相乘,雙倍長結(jié)果送到 DX 和 AX 中,最后給乘積賦予正確的符號。 例 求兩個(gè)非壓縮十進(jìn)制數(shù) 09 和 06 之乘積。 AX ← ( DX, AX)/源(字)的商 DX ← ( DX, AX)/源(字)的余數(shù) 若被除數(shù)、除數(shù)都是 16 位,則將 16 位被除數(shù)送到 AX 中,再將 DX 清 0。 ② 由于 BL 中的除數(shù) 04H 為字節(jié),被除數(shù)為字,商 1EA1H 大于 AL 中能存放的最大無符號數(shù) FFH,產(chǎn)生除法錯(cuò)誤中斷。 ▲根據(jù) AL 寄存器結(jié)果影響 SF、 ZF、 PF,但對 OF、 CF、 AF 無定義。 ( 5) AAD 除法的 ASCII 調(diào)整指令 (ASCII Adjust for Division) 指令格式: AAD 指令功能 :在做除法前,把 BCD 碼轉(zhuǎn)換成二進(jìn)制數(shù)。 ▲帶符號數(shù)除法指令,字節(jié)操作時(shí)要求被除數(shù)為 16 位,字操作時(shí)要求被除數(shù)為 32 位,如果被除數(shù)不滿足這個(gè)條件,不能簡單地將高位置 0,而應(yīng)該用符號擴(kuò)展指令( Sign Extension)將被除數(shù)轉(zhuǎn)換成除法指令所要求的格式。 AL ← AX/源(字節(jié))的商 AH ← AX/源(字節(jié))的余數(shù) 若被除數(shù)只有 8 位,必須把 它放在 AL 中,并將 AH 清 0。 ▲ 標(biāo)志位的影響:影響 ZF、 SF 和 PF,但 AF、 CF 和 OF 無定義。 ▲ 用 MUL 指令作帶符號數(shù)的乘法,會得到錯(cuò)誤的結(jié)果,必須用 IMUL 指令,才能使 (-1)(- 1)得到正確的結(jié)果 0000 0000 0000 0001。 據(jù)此可檢測并去除結(jié)果中的無效前導(dǎo)零。 - 0000 0110… 減 6 調(diào)整 ; 1011 1000… 調(diào)整后高半字節(jié) 9 ; - 0110 0000… 減 60H調(diào)整 ; 0101 1000…BCD 58 , CF=1 ;結(jié)果為 AL=BCD 58, CF=1,表示有借位 ? 乘法指令 (Multiply) ( 1) MUL 無符號數(shù)乘法指令( Multiply) 指令格式: MUL 源 指令功能:把源操作數(shù)和累加器中的數(shù)都當(dāng)成無符號數(shù),然后將兩個(gè)數(shù)相乘,操作數(shù)可以是字節(jié)或字。 調(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ù)。 解: SUB AL, DL ;與加法操作一樣,對結(jié)果的解釋取決于參與運(yùn)算的數(shù)的性質(zhì),運(yùn)算過程如下 二進(jìn)制減法 當(dāng)成無符號數(shù) 當(dāng)成帶符號數(shù) 1011 0001 177 - 79 - 0100 1010 -) 74 -)+ 74 0110 0111 103 + 103 運(yùn)算后標(biāo)志位 ZF= 0, AF= 1, CF= 0, SF= 0, PF= 0, OF= 1。 1101 0001…AF=1 。 注意:相加后的結(jié)果必須在 AL 中,才能使用 DAA 指令。 0011 1001…’9’ 。 + 0000 0101…5 AAA 。 例 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ù)類型為字。 例:兩種加法指令的實(shí)例 ADD AL, 18H ; AL ? AL + 18H ADC BL, CL ; BL? BL + CL + CF ADC AX, DX ; AX ?AX + DX + CF ADD AL, COST[BX] ; AL 內(nèi)容和地址= DS:(COST+BX)的存儲字節(jié)相加,結(jié)果送 AL ADD COST[BX], BL ;將 BL 與物理地址= DS: (COST+BX)的存儲字 節(jié)相加,結(jié)果留在該存儲單元中 例 :用加法指令 對兩個(gè) 8 位 16 進(jìn)制數(shù) 5EH 和 3CH 求和,并分析加法運(yùn)算指令執(zhí)行后對標(biāo)志位的影響。 ? 壓縮十進(jìn)制數(shù):一個(gè)字節(jié)中存放兩個(gè) BCD 碼十進(jìn)制數(shù)。 ? ( 3) PUSHF 標(biāo)志入棧指令( Push Flag onto Stack) 指令格式: PUSHF 指令功能:將標(biāo)志寄存器 PSW 中的內(nèi)容壓入堆棧;并修改堆棧指針,使 SP ?SP- 2; 指令執(zhí)行后對標(biāo)志位無影響。 例 設(shè) DS= 0100H, BX= 0020H, (01020H)= 0300H, (01022H)= 0500H。 MOV DX, XXXXH。 例 設(shè) AX = 2020H, DS = 3000H, BX = 1800H,( 31A00H) = 1995H。 AREA1 的偏移地址為 0000H; AREA2 的偏移地址為 0002H; ARRAY 的偏移地址為 0005H; STRING 的偏移地址為 0009H。 解:該指令的編碼是在不帶段超越前綴的指令代碼 88 17H 前,加上一個(gè)字節(jié)001110。 所以該指令的編碼為 8A 8F 34 12H。如下表所示。32 指令的機(jī)器碼表示方法 一、機(jī)器語言指令的編碼目的和特點(diǎn) ? 匯編語言源程序:用匯編語言 (即主要由指令系統(tǒng)組成的語言)編寫的程序。如:指令 DAA ;對寄存器 AL 中的數(shù)據(jù)進(jìn)行十進(jìn)制數(shù)調(diào)整,結(jié)果仍保留在 AL 中。 或: MOV AX, [BX+ SI] 解:設(shè): DS= 3000H, SI= 0500H, BX= 1200H,( 31700H) =0ABCDH 則:物理地址 = 16DS + SI + BX = 30000H + 0500H + 1200H= 31700H 指令執(zhí)行后 AX= 0ABCDH 七、相對基址變址尋址方式 ( Relative Based Indexed Addressing) ? 含義:操作數(shù)的有效地址是一個(gè)基址寄存器( BX、 BP)和一個(gè)變址寄存器( SI、DI)的內(nèi)容,再加上 8 位或 16 位位移量之和。 例 MOV BX, [SI] 解:設(shè): DS= 1000H, SI= 2020H,( 12020H)= 318BH 則:物理地址 = 16DS + SI= 10000H + 2020H= 12020H 指令執(zhí)行后, BX= 318BH,指令執(zhí)行過程如圖所示。 例 MOV AX, [2020H] 解:設(shè) DS = 3000H; ( 32020H) = 1234H 由指令得: EA = 2020H ( 16 位邏輯地址) 物理地址 = 163000H + 2020H = 32020H ( 20 位, 20 根地址線) 則: AX = 1234H 指令執(zhí)行過程如圖所示。8 位操作數(shù):寄存器 AH、 AL、 BH、 BL、 CH、 CL、 DH 和 DL。 ? 特點(diǎn):翻譯成機(jī)器碼時(shí),立即數(shù)是指令的一部分,緊跟在操作碼之后存放在代碼段內(nèi)。31 8086 的尋址方式 概述 ? 計(jì)算機(jī)的指令包括: 操作碼 + 操作數(shù) ↓ ↓ 操作的性質(zhì) 操作的對象 ↓存放 寄存器、存儲器、 I/O 端口地址、立即數(shù)(由尋址方式?jīng)Q定) ? 尋址方式:指令中說明操作數(shù)所在地址的方法。 例 MOV CX, 2A50H 解:將立即數(shù) 2A50H 送到 CX寄存器中。( AX 內(nèi)容不變) ( 又例: MOV BL, AL ) ? 注意:源操作數(shù)的長度必須與目的操作數(shù)一致。 例: MOV
點(diǎn)擊復(fù)制文檔內(nèi)容
公司管理相關(guān)推薦
文庫吧 www.dybbs8.com
備案圖鄂ICP備17016276號-1