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

正文內(nèi)容

微機(jī)原理與接口技術(shù)復(fù)習(xí)資料(34)章(編輯修改稿)

2024-12-01 19:13 本頁(yè)面
 

【文章內(nèi)容簡(jiǎn)介】 ;查表得: AL = 12H ? 輸入輸出指令( Input and Output) IN 指令: 從數(shù)據(jù)端口輸入數(shù)據(jù)或從狀態(tài)端口輸入狀態(tài)字。 OUT 指令:輸出數(shù)據(jù)或命令給指定的 I/O 端口。 ? 直接輸入輸出指令 格式: IN AL, PORT ; AL ? (PORT) IN AX, PORT ; AX ? (PORT+1, PORT) OUT PORT, AL ; (PORT) ? AL OUT PORT, AX ; (PORT+1, PORT) ?AX 注: PORT 為輸入輸出端口號(hào),范圍為 0~ 255( 00 ~ FFH) ? 間接輸入輸出指令 格式: IN AL, PORT ; AL ? (PORT) IN AX, PORT ; AX ? (PORT+1, PORT) OUT PORT, AL ; (PORT) ? AL OUT PORT, AX ; (PORT+1, PORT) ?AX 在間接輸入輸出指令之前,需將端口號(hào)送入 DX 寄存器。 MOV DX, XXXXH。 例 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)容 ? 地址目標(biāo)傳送指令( Address Object Transfers) 專(zhuān)用于傳送地址碼的指令,它可以用來(lái)傳送操作數(shù)的段地址和偏移地址,含以下三條指令: 地址目標(biāo)傳送指令 LEA 裝入有效地址 LDS 裝入數(shù)據(jù)段寄存器 LES 裝入附加段寄存器 ? 地址目標(biāo)傳送指令( Address Object Transfers) ? LEA 取有效地址指令( Load Effective Address) 指令格式: LEA 目的,源 指令功能:取源操作數(shù)地址的偏移量,傳送到目的操作數(shù) 操作數(shù)要求:源操作數(shù)必須是存儲(chǔ)單元, 目的操作數(shù)必須是一個(gè)除段寄存器之外的 16 位寄存器。 使用時(shí)要注意與 MOV 指令的區(qū)別。 例 假設(shè) SI= 1000H, DS= 5000H,( 51000H)= 1234H LEA BX, [SI] ;執(zhí)行完該指令后, BX= 1000H(送偏移地址) MOVBX, [SI] ; 執(zhí)行完該指令后, BX= 1234H(送內(nèi)容) ? LDS 將雙字指針?biāo)偷郊拇嫫骱?DS 指令( Load Pointer using DS) 指令格式: LDS 目的,源 指令功能:從源操作數(shù)指定的存儲(chǔ)單元中,取出一個(gè)變量的 4 字節(jié)地址指針,送進(jìn)一對(duì)目的寄存器。其中前兩個(gè)字節(jié)(表示變量的偏移地址)送到指令中指定的目的寄存器中,后兩個(gè)字節(jié) (表示變量的段地址 )送入 DS 寄存器。 操作數(shù)要求: 源操作數(shù)必是存儲(chǔ)單元,該單元開(kāi)始的連續(xù) 4 個(gè)字節(jié)存放一個(gè)變量的地址指針。 目的操作數(shù)必須是 16 位寄存器,常用 SI寄存器,但不能用段寄存器。 例 設(shè) DS= 1200H,( 12450H)= F346H, ( 12452H)= 0A90H, 執(zhí)行指令 LDS SI, [0450H] 后, SI= F346H, DS= 0A90H 注:源操作數(shù)的物理地址= DS10H + 450H = 12450H ? LES 將雙字指針?biāo)偷郊拇嫫骱?ES 指令( Load Pointer using ES) 指令格式: LES 目的,源 指令功能:與 LDS 指令的操作基本相同,不同的是:要將源操作 數(shù)所指向的存儲(chǔ)單元里存放的地址指針中的段地址部分送到 ES 寄存器中,而不是 DS 寄存器,目的操作數(shù)常用 DI 寄存器。 例 設(shè) DS= 0100H, BX= 0020H, (01020H)= 0300H, (01022H)= 0500H。 執(zhí)行指令 LES DI, [BX] 后, DI= 0300H, ES= 0500H 注:源操作數(shù)的物理地址= DS10H + BX = 0100H10H + 0020H = 01020H ? 標(biāo)志傳送指令 ( Flag Transfers) ? 讀取標(biāo)志指令 : LAHF ( 0 為任意值) --標(biāo)志寄存器低 8 位 ? AH ? 設(shè)置標(biāo)志指令 : SAHF --標(biāo)志寄存器低 8 位 ?AH,影響 PSW ? 把標(biāo)志寄存器的內(nèi)容壓入堆棧: PUSHF ? 從堆棧彈出到標(biāo)志寄存器: POPF,影響 PSW ? LAHF 標(biāo)志送到 AH 指令( Load AH from Flag) 指令格式: LAHF 指令功能:標(biāo)志寄存器 SF、 ZF、 AF、 PF 和 CF → AH寄存器的位 2 和 0。 注意: ? 位 1 的內(nèi)容未定義,是任意值。 ? 執(zhí)行這條指令后,標(biāo)志位本身并不受影響。 ? 這 5 個(gè)標(biāo)志送進(jìn) AH 后, AH 便相當(dāng)于 8080/ 8085 的標(biāo)志寄存器, 從而能對(duì)8080/ 8085 程序進(jìn)行轉(zhuǎn)換,使它們能運(yùn)行在 8086/ 8088 系統(tǒng) . ? ( 2) SAHF AH 送標(biāo)志寄存器 (Store AH into Flags) 指令格式: SAHF 指令功能: AH 內(nèi)容 → 標(biāo)志寄存器。 注意: ? 位 1 的內(nèi)容未定義,是任意值。 ? 執(zhí)行這條指令后,高位標(biāo)志并不受影響。 ? 為 8080/ 8085 提供兼容性。 ? ( 3) PUSHF 標(biāo)志入棧指令( Push Flag onto Stack) 指令格式: PUSHF 指令功能:將標(biāo)志寄存器 PSW 中的內(nèi)容壓入堆棧;并修改堆棧指針,使 SP ?SP- 2; 指令執(zhí)行后對(duì)標(biāo)志位無(wú)影響。 ? ( 4) POPF 標(biāo)志出棧指令( Pop Flag off Stack) 指令格式: POPF 指令功能:將堆棧指針 SP 所指的一個(gè)字彈入標(biāo)志寄存器 PSW;并修改堆棧指針,使 SP ?SP+ 2。 注意: ? 要成對(duì)使用 PUSHF 和 POPF,可對(duì)標(biāo)志寄存器進(jìn)行保存和恢復(fù)。 ? 常用在:過(guò)程 (子程序 )調(diào)用,中斷服務(wù)程序,對(duì)主程序的狀態(tài) (即標(biāo)志位 )進(jìn)行保護(hù)。 ? 也可用來(lái)改變追蹤標(biāo)志 TF。在 8086 指令系統(tǒng)中沒(méi)有直接改變 TF( D8 位)的指令。 二、算術(shù)運(yùn)算指令 算術(shù)運(yùn)算指令可處理 4 種類(lèi)型的數(shù): ? 無(wú)符號(hào)二進(jìn)制整數(shù) ? 帶符號(hào)二進(jìn)制整數(shù) ? 無(wú)符號(hào)壓縮十進(jìn)制整數(shù)( Packed Decimal) ? 無(wú)符號(hào)非壓縮十進(jìn)制整數(shù)( Unpacked Decimal) 一個(gè) 8 位二進(jìn)制數(shù)可看成 4 種不同類(lèi)型的數(shù),所表示的數(shù)值亦不同。 數(shù)的表示: ? 二進(jìn)制數(shù):可以是 8 位或 16 位,若是帶符號(hào)數(shù),則用補(bǔ)碼表示。 ? 壓縮十進(jìn)制數(shù):一個(gè)字節(jié)中存放兩個(gè) BCD 碼十進(jìn)制數(shù)。 ? 非壓縮十進(jìn)制數(shù): — 個(gè)字節(jié)的低半字節(jié)存放十進(jìn)制數(shù),高半字節(jié)為全零。 例如,對(duì)十進(jìn)制數(shù)字 58: 壓縮十進(jìn)制數(shù)表示:只需一個(gè)字節(jié),即 0101 1000B; 非壓縮十進(jìn)制數(shù)表示:需兩個(gè)字節(jié),即 0000 0101B 和 0000 1000B。 4 種類(lèi)型數(shù)的表示方法 8086/ 8088 指令系統(tǒng)提供: ? 加、減、乘、除運(yùn)算指令:處理無(wú)符號(hào)或帶符號(hào)的 8 位 /16 位二進(jìn)制數(shù)的算術(shù) 運(yùn) 算; ? 調(diào)整操作指令:進(jìn)行壓縮的或非壓縮的十進(jìn)制數(shù)的算術(shù)運(yùn)算; ? 加法和減法運(yùn)算指令:帶符號(hào)數(shù)和無(wú)符號(hào)數(shù)的加法和減法的運(yùn)算可以用同一條加法或減法指令來(lái)完成。 ? 乘法和除法運(yùn)算:分別設(shè)置無(wú)符號(hào)數(shù)和帶符號(hào)數(shù)的乘、除法指令。 ? 絕大部分算術(shù)運(yùn)算指令都影響狀態(tài)標(biāo)志位。 二進(jìn)制碼 ( B) 十六進(jìn)制( H) 無(wú)符號(hào)二進(jìn)制( D) 帶符號(hào)二進(jìn)制( D) 非壓 縮十進(jìn)制 壓縮十進(jìn)制 0000 0111 07 7 + 7 7 07 1000 1001 89 137 - 119 無(wú)效 89 1100 0101 C5 197 - 59 無(wú)效 無(wú)效 加 法 減 法 ADD 加法 SUB 減法 ADC 帶進(jìn)位的加法 SBB 帶借位的減法 ? 加法指令( Addition) ? ADD 加法指令( Addition) 指令格式: ADD 目的, 源 指令功能:目的 ? 源 十 目的 ? ADC 帶進(jìn)位的加法指令( Addition with Carry) 指令格式: ADC 目的, 源 指令功能:目的 ? 源 十 目的 十 CF 注意: ? 源操作數(shù)可以是寄存器、存儲(chǔ)器、立即數(shù); ? 目的操作數(shù):只能用寄存器、存儲(chǔ)單元。 ? 源、目的操作數(shù)不能同時(shí)為存儲(chǔ)器,且類(lèi)型必須一致,均為字節(jié)或字; INC 增量 DEC 減量 AAA 加法的 ASCII 調(diào)整 NEG 取負(fù) DAA 加法的十進(jìn)制調(diào)整 CMP 比較 除 法 AAS 減法的 ASCII 調(diào)整 DIV 無(wú)符號(hào)數(shù)除法 DAS 減法的十進(jìn)制調(diào)整 IDIV 整數(shù)除法 乘 法 AAD 除法的 ASCII 調(diào)整 MUL 無(wú)符號(hào)數(shù)乘法 CBW 把字節(jié)轉(zhuǎn)換成字 IMUL 整數(shù)除法 CWD 把字轉(zhuǎn)換成雙字 AAM 乘法的 ASCII 調(diào)整 ? 兩條指令影響的標(biāo)志位為: CF、 OF、 PF、 SF、 ZF和 AF。 例:兩種加法指令的實(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)的存儲(chǔ)字節(jié)相加,結(jié)果送 AL ADD COST[BX], BL ;將 BL 與物理地址= DS: (COST+BX)的存儲(chǔ)字 節(jié)相加,結(jié)果留在該存儲(chǔ)單元中 例 :用加法指令 對(duì)兩個(gè) 8 位 16 進(jìn)制數(shù) 5EH 和 3CH 求和,并分析加法運(yùn)算指令執(zhí)行后對(duì)標(biāo)志位的影響。 解: MOV AL, 5EH ; AL= 5EH ( 94) MOV BL, 3CH ; BL= 3CH ( 60) ADD AL, BL ;結(jié)果 AL= 9AH ? 討論 ADD 對(duì)標(biāo)志位的影響: ▲兩個(gè)數(shù)的相加過(guò)程: 0101 1110 5EH = 94 + 0011 1100 即: + 3CH = 60 1001 1010 9AH = 154 運(yùn)算后標(biāo)志位: ZF= 0, AF= 1, CF= 0, SF= 1, PF= 1, OF= 1。 ▲對(duì)標(biāo)志的解釋?zhuān)ㄈ藶闆Q定): ① 兩個(gè)加數(shù)都看成無(wú)符號(hào)數(shù)時(shí),運(yùn)算結(jié)果為 9AH,即十進(jìn)制數(shù) 154。在這種情況下, SF 和 OF 都沒(méi)有意義,我們只關(guān)心 ZF 和 CF 標(biāo)志,在 BCD 碼運(yùn)算或奇偶校驗(yàn)時(shí)才考慮 AF 或 PF 標(biāo)志。 ② 兩個(gè)加數(shù)都當(dāng)成帶符號(hào)數(shù)時(shí),符號(hào)標(biāo)志 SF 和溢出標(biāo)志 OF 很重要,而進(jìn)位標(biāo)志 CF 沒(méi)有意義。 帶符號(hào)數(shù)能表示的范圍 128 ~ +127,而本例中,兩個(gè)正數(shù) 94 和 60 相加,其和為 154,由于 154 超過(guò)了范圍,即產(chǎn)生了溢出, OF= 1 ? INC 增量指令( Increment) 指令格式: INC 目的 指令功能:目的 ? 目的 + 1 操作數(shù)的要求:通用寄存器、內(nèi)存。 注意: ? 指令主要用在循環(huán)程序中,對(duì)地址指針和循環(huán)計(jì)數(shù)器等進(jìn)行修改; ? 指令執(zhí)行后影響 AF、 OF、 PF、 SF 和 ZF,但不影響進(jìn)位標(biāo)志 CF。 ? 如果要使內(nèi)存單元的內(nèi)容增 1,程序中必須說(shuō)明該存儲(chǔ)單元
點(diǎn)擊復(fù)制文檔內(nèi)容
公司管理相關(guān)推薦
文庫(kù)吧 www.dybbs8.com
備案圖片鄂ICP備17016276號(hào)-1