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

正文內(nèi)容

微機原理與接口技術復習資料(34)章-免費閱讀

2024-11-27 19:13 上一頁面

下一頁面
  

【正文】 調(diào)整過程: AL ← AH10+ AL; AH ← 00 注意: ▲AX中的兩位非壓縮格式的 BCD 數(shù)除以一個非壓縮的 BCD 數(shù)前,要先用AAD 指令把 AX 中的被除數(shù)調(diào)整成二進制數(shù),并存到 AL 中,才能用 DIV 指令進行運算。 例 兩個無符號數(shù) 7A86H 和 04H 相除,商應為多少? 解: MOV AX, 7A86H MOV BL, 04H DIV BL 結果: ① 正確的商應為 1EA1H。 ▲源操作數(shù)為字: 32 位被除數(shù)在( DX, AX)中, 16位除數(shù)作源操作數(shù)。 ▲ 8086 的指令系統(tǒng)中,十進制乘法運算不允許采用壓縮十進制數(shù),故調(diào)整指令僅此一條。 ? IMUL 整數(shù)乘法指令 ( Integer Multiply) 指令格式: IMUL 源 指令功能:把源操作數(shù)和累加器中的數(shù)都作為帶符號數(shù),進行相乘。 ▲ 乘法指令使 AF、 PF、 SF 和 ZF 的狀態(tài)不定。 ▲ 源操作數(shù)是一個字節(jié):原操作數(shù)與累加器 AL 中的內(nèi)容相乘,乘積為雙倍長的16 位數(shù),高 8 位送到 AH,低 8 位送 AL。高 4 位和低 4 位分別進行調(diào)整。 討論: ▲兩數(shù)為無符號數(shù):表示 177 與 74 的差是 103。 + 0000 0110… 加 6 調(diào)整 ; 1101 0111… 調(diào)整后高半字節(jié) 9 ; + 0110 0000… 加 60H 調(diào)整 ; 0011 0111… 結果為 AL= BCD 37, CF=1 ? 減法指令( Subtraction) ( 1) SUB 減法指令( Subtraction) 指令格式: SUB 目的,源 指令功能: 目的 ? 目的-源 例 SUB AX, BX ; AX ? AX- BX SUB DX, 1850H ; DX ? DX- 1850H SUB BL, [BX] ; BL 中內(nèi)容減去物理地址= DS:(BX)處的字節(jié),結果存入 BL ( 2) SBB 帶借位的減法指令( Subtract with Borrow) 指令格式: SBB 目的,源 指令功能:目的 ? 目的-源- CF ( SBB 主要用于多字節(jié)減法中) 例 SBB AL, CL ; AL ? AL- CL- CF ( 3) DEC 減量指令( Decrement) 指令格式: DEC 目的 指令功能 : 目的 ? 目的- 1 例 DEC BX ; BX ? BX- 1 DEC WORD PTR[BP] ;堆棧段中位于 [BP]偏置處的字減 1 ( 4) NEG 取負指令 ( Negate) 指令格式: NEG 目的 指令功能: 目的 ← 0-目的,即對目的操作數(shù)取負 例 NEG AX ;將 AX 中的數(shù)取負 NEG BYTE PTR[BX] ;對數(shù)據(jù)段中位于 [BX]偏置處的字節(jié)取負 ( 5) CMP比較指令 ( Compare) 指令格式: CMP 目的,源 指令功能:目的-源 , 結果不回送到目的操作數(shù)中,僅反映在標志位上。 調(diào)整過程: ① 若 AL 的低 4 位> 9 或 AF= 1, 則 AL ? AL 十 06H,對低 4 位進行調(diào)整; ② 若此時 AL 的高 4 位> 9 或 CF= 1, 則 AL ? AL 十 60H,對高 4 位進行調(diào)整,并使 CF 置 1,否則 CF 置 0。 + 0011 0101…’5’ AAA 。 0000 1110… 低 4 位 9 。 ? AAA 加法的 ASCII 調(diào)整指令 (ASCII Adjust for Addition) 指令格式: AAA 指令功能:在用 ADD 或 ADC 指令對兩個非壓縮十進制數(shù)或 ASCII 碼表示的十進制數(shù)作加法后,運算結果已存在 AL 中,用此指令將 AL 寄存器中的運算結果調(diào)整為一位非壓縮十進制數(shù),仍保留在 AL 中。 解: MOV AL, 5EH ; AL= 5EH ( 94) MOV BL, 3CH ; BL= 3CH ( 60) ADD AL, BL ;結果 AL= 9AH ? 討論 ADD 對標志位的影響: ▲兩個數(shù)的相加過程: 0101 1110 5EH = 94 + 0011 1100 即: + 3CH = 60 1001 1010 9AH = 154 運算后標志位: ZF= 0, AF= 1, CF= 0, SF= 1, PF= 1, OF= 1。 ? 非壓縮十進制數(shù): — 個字節(jié)的低半字節(jié)存放十進制數(shù),高半字節(jié)為全零。 ? ( 4) POPF 標志出棧指令( Pop Flag off Stack) 指令格式: POPF 指令功能:將堆棧指針 SP 所指的一個字彈入標志寄存器 PSW;并修改堆棧指針,使 SP ?SP+ 2。 執(zhí)行指令 LES DI, [BX] 后, DI= 0300H, ES= 0500H 注:源操作數(shù)的物理地址= DS10H + BX = 0100H10H + 0020H = 01020H ? 標志傳送指令 ( Flag Transfers) ? 讀取標志指令 : LAHF ( 0 為任意值) --標志寄存器低 8 位 ? AH ? 設置標志指令 : SAHF --標志寄存器低 8 位 ?AH,影響 PSW ? 把標志寄存器的內(nèi)容壓入堆棧: PUSHF ? 從堆棧彈出到標志寄存器: POPF,影響 PSW ? LAHF 標志送到 AH 指令( Load AH from Flag) 指令格式: LAHF 指令功能:標志寄存器 SF、 ZF、 AF、 PF 和 CF → AH寄存器的位 2 和 0。 例 OUT 85H, AL ; 85H 端口 ?AL 內(nèi)容 MOV DX, 0FF4H ;端口地址 DX=0FF4H OUT DX, AL ; 0FF4H端口 ?AL 內(nèi)容 MOVDX, 300H ; DX 指向 300H OUT DX, AX ; 300H 端口 ?AL 內(nèi)容, 301H端口 ?AH 內(nèi)容 ? 地址目標傳送指令( Address Object Transfers) 專用于傳送地址碼的指令,它可以用來傳送操作數(shù)的段地址和偏移地址,含以下三條指令: 地址目標傳送指令 LEA 裝入有效地址 LDS 裝入數(shù)據(jù)段寄存器 LES 裝入附加段寄存器 ? 地址目標傳送指令( Address Object Transfers) ? LEA 取有效地址指令( Load Effective Address) 指令格式: LEA 目的,源 指令功能:取源操作數(shù)地址的偏移量,傳送到目的操作數(shù) 操作數(shù)要求:源操作數(shù)必須是存儲單元, 目的操作數(shù)必須是一個除段寄存器之外的 16 位寄存器。則執(zhí)行指令 XCHG AX, [BX+200H]后,結果如何? 解:把內(nèi)存中的一個字與 AX 中的內(nèi)容進行交換。 例 MOV DX, OFFSET ARRAY 解: ARRAY 的偏移地址 。由于段寄存器 CS 的代碼為 01,所以指令的第 1 個字節(jié)的編碼為 00101110,即 2EH。 ? 4.立即數(shù)尋址指令的編碼 例 求指令 MOV [BX 十 2100H], 0FA50H 的機器碼。( 24 種不同的編碼格式, D8 表示 8 位位移量, D16 為 16 位位移量) 對指令進行編碼時,若包含 8 位位移量,則在編碼后增加一個宇節(jié)存放位移量 dispL;若包含 16位的位移量,則增加 2個字節(jié)存放位移量:第 3個字節(jié)存放位移量的低字節(jié) dispL,第 4 個字節(jié)存放位移量高字節(jié) dispH。 編譯程序 執(zhí)行 源程序 機器碼 運算結果 ? 編碼特點: ? 8086 指令的二進制編碼非常多,很難以一張表實現(xiàn)指令與機器語言的對照。 ? I/O 端口尋址: 8086 有直接端口和間接端口兩種尋址方式。即 [BX] [SI] EA= + +位移量 [BP] [DI] ? 特點: 使用的寄存器:基址寄存器 BX、 BP,變址寄存器 SI、 DI 。 ? 注意: ? 寄存器名稱外必須加方括號,以區(qū)別寄存器尋址方式; ? 段超越前綴用來從默認段以外的段中取得數(shù)據(jù); 例 MOV BX, ES:[SI] ? 關于默認段: 指定寄存器 BX、 SI或 DI,默認操作數(shù)存放在數(shù)據(jù)段 DS 中; ( DS:BX, SI, DI) 指定寄存器 BP,默認操作數(shù)存放在堆棧段 SS 中; ( SS:BP) 五、寄存器相對尋址方式 ( Register Relative Addressing) ? 含義:操作數(shù)的有效地址是基址或變址寄存器的內(nèi)容與 8 位或 16 位位移量( Displacement)之和。 (注:如用 AL 替代 AX,則 AL=34H) ? 注意: ? DS:默認的段寄存器; ? 指令中有效地址的表示: [立即數(shù) ] ,以便與立即數(shù)相區(qū)別; ? 關于段超越前綴:有效地址前用 “: ”(稱為修改屬性運算符 )修改運算屬性。 ? 作用:寄存器之間傳遞數(shù)據(jù)。在取出指令的同時也就取出了操作數(shù),立即有操作數(shù)可用,所以稱之為立即尋址。 微機原理與接口技術 第三章 8086 的尋址方式和指令系統(tǒng) 167。 16 位數(shù):高字節(jié) →代碼段的高地址單元,低字節(jié) →低地址單元; ? 作用:常用于給寄存器賦初值。 例: MOV DX, AX 解: ( AX)送到 DX 寄存器中。 可對代碼段( CS)、堆棧段( SS)或附加段( ES)寄存器直接尋址。即 [BX] / [BP] EA = + 8 位偏移量 /16 位偏移量 [SI] / [DI] ? 2.特點:使用: BX、 BP、 SI、 DI 。 操作數(shù)的物理地址 = 16DS + BX + SI / DI + 8/16 位位移量 或 = 16SS + BP + SI / DI + 8/16 位位移量 ? 注意:寄存器 SI 和 DI、 BP 和 BX 不能同時出現(xiàn)在 [ ]中。 ? 直接端口尋址方式:指令直接提供端口地址 —— 8 位立即數(shù)。 ? 為每種基本指令類型給出一個編碼格式,對照格式填上不同的數(shù)字表示不同的尋址方式、數(shù)據(jù)類型,即可求得每條指令的機器碼。 REG 段寄存器 01 CS 11 DS 00 ES 10 SS MOD(右) 00 01 10 11 R/M(下) W=0 W=1 MOD 和 R/M 的編碼 ? 2.寄存器間傳送指令的編碼 例 求指令 MOV SP, BX 的機器碼
點擊復制文檔內(nèi)容
公司管理相關推薦
文庫吧 www.dybbs8.com
備案圖鄂ICP備17016276號-1