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

正文內(nèi)容

第3章80x86指令系統(tǒng)及匯編語(yǔ)言-預(yù)覽頁(yè)

 

【正文】 使用中需要注意的是: ① MOV指令不能在兩個(gè)存貯器單元之間進(jìn)行數(shù)據(jù)直接傳送 。 第 3章 80X86指令系統(tǒng)及匯編語(yǔ)言 其中 , ① ~ ③ 的傳送可用通用寄存器作為中介 ,用兩條傳送指令完成 。 例如: XCHG AL, CL XCHG AX, DI XCHG BX, SI XCHG AX, BUFFER XCHG BX, DATA[ SI] 第 3章 80X86指令系統(tǒng)及匯編語(yǔ)言 3. 地址傳送指令 8086/8088有 3條地址傳送指令 。 第 3章 80X86指令系統(tǒng)及匯編語(yǔ)言 4. 堆棧操作指令 堆棧是內(nèi)存中的一個(gè)特定區(qū)域 , 由 SS的內(nèi)容和 SP的內(nèi)容來(lái)決定 。 壓入堆棧指令 PUSHDX的執(zhí)行過(guò)程為: ① SP- 1→SP 。 彈出堆棧指令 POPAX的過(guò)程與此剛好相反: ① (SP)→AL ; ② SP+ 1→SP ; ③ (SP)→AH ; ④ SP+ 1→SP 。 例如: MOV AX, 834EH CWD 執(zhí)行后, DX= FFFFH, DXAX= FFFF834EH。 例如: ADD AL, 30 ADD AX, 3000H ADD AX, SI ADD AL, DATA[ BX] 第 3章 80X86指令系統(tǒng)及匯編語(yǔ)言 該指令也可以實(shí)現(xiàn)任一通用寄存器與立即數(shù) 、 累加器或別的寄存器 、 存貯單元的內(nèi)容相加 , 其和放回寄存器中 。 加 1操作時(shí) ,把操作數(shù)看作為無(wú)符號(hào)的二進(jìn)制數(shù) 。 例如: DEC BX DEC[ DI] 第 3章 80X86指令系統(tǒng)及匯編語(yǔ)言 4) NEG OPRD 該指令用來(lái)對(duì)操作數(shù)進(jìn)行求補(bǔ)操作 , 即對(duì)操作數(shù)按位取反后加 1。 例如: CMP DATA, 100 CMP COUNT[ SI] , AX CMP POINTER[ DI], BX 第 3章 80X86指令系統(tǒng)及匯編語(yǔ)言 綜上所述 , 可以歸納出如下結(jié)論: 當(dāng)沒(méi)有溢出時(shí) (OF= 0), 若 SF= 0, 則 AX> BX;若 SF= 1, 則 AX< BX。 MOV BX, OFFSETBLOCK MOV AX, [ BX] INC BX INC BX MOV CX, 99 AGAIN: CMP AX, [ BX] JG NEXT MOV AX,[ BX] 第 3章 80X86指令系統(tǒng)及匯編語(yǔ)言 NEXT: INC BX INC BX DEC CX JNE AGAIN MOV MAX, AX HLT 第 3章 80X86指令系統(tǒng)及匯編語(yǔ)言 3. 乘法指令 乘法指令分為無(wú)符號(hào)數(shù)乘法指令和帶符號(hào)數(shù)乘法指令兩種 。 該指令的一般格式為: IMUL OPRD 例:字節(jié)乘以字節(jié) MOV AL, LSRC_BYTE;被乘數(shù)送 AL IMUL RSRC_BYTE 第 3章 80X86指令系統(tǒng)及匯編語(yǔ)言 4. 除法指令 8088有兩條除法指令:無(wú)符號(hào)除法指令和帶符號(hào)除法指令。 IDIV指令一般格式為: IDIV OPRD 例:雙倍字長(zhǎng)除以字 MOV DX, NUMHIWORD;被除數(shù)高位字送 DX MOV AX, NUMLOWORD;被除數(shù)低位字送 AX IDIV DIVISORWORD[ SI] 第 3章 80X86指令系統(tǒng)及匯編語(yǔ)言 5. 調(diào)整指令 8088的調(diào)整指令主要用于十進(jìn)制數(shù)的調(diào)整 。操作數(shù)可以是寄存器或存貯器的內(nèi)容 。 相 “ 與 ” 結(jié)果送回 。 TEST指令的一般格式為: TEST OPRD, im ; im是立即數(shù) 立即數(shù)中哪一位為 1,表示要對(duì)哪一位進(jìn)行測(cè)試。 OR指令允許對(duì)字節(jié)或?qū)ψ诌M(jìn)行相 “ 或 ” 運(yùn)算 。 每移位一次在右面最低位補(bǔ)一個(gè) 0, 而左面的最高位則移入標(biāo)志位 CF, 如圖 (a)所示 。 與 SAR不同的是 , 左面的最高位將補(bǔ) 0, 如圖 (c)所示 。(b) ROR。 該指令只影響 CF和 OF標(biāo)志位 。 串傳送指令的一般格式為: MOVS OPRD1, OPRD2 ; OPRD2是源串 , OPRD1是目的串 MOVSB ; 字節(jié)傳送 MOVSW ;字傳送 第 3章 80X86指令系統(tǒng)及匯編語(yǔ)言 2. CMPS/CMPSB/CMPSW 該類指令是串比較指令 , 常用于內(nèi)存區(qū)之間的數(shù)據(jù) 、 字符等的比較 。 串存貯指令的一般格式為: STOS OPRD ; OPRD為目的串 STOSB ;字節(jié)操作 STOSW ;字操作 第 3章 80X86指令系統(tǒng)及匯編語(yǔ)言 6. REP REP是串指令的前綴 。 當(dāng)條件滿足時(shí) , 才重復(fù)執(zhí)行后面的串指令 , 一旦條件不滿足 , 重復(fù)就停止 。 MOV SI, OFFSETBUFFER1; BUFFER1偏移地址 送 SI MOV DI, OFFSETBUFFER2; BUFFER2偏移地址 送 DI MOV CX, 1000 ;傳送次數(shù)送 CX CLD ;使 DF= 0, SI、 DI做加 1操作 REP MOVSB ;串傳送 第 3章 80X86指令系統(tǒng)及匯編語(yǔ)言 例:若上例中的 BUFFER1和 BUFFER2都處于數(shù)據(jù)段 , 則程序可修改如下: MOV AX, DS MOV ES, AX ;使 ES= DS LEA SI, BLOCK1 ;源串地址送 SI LEA DI, BLOCK2 ;目的串地址送 DI MOV CX, 500 ;重復(fù)次數(shù)送 CX CLD ;使 DF= 0, SI、 DI做加 2操作 REPE MOVSW ;串傳送 第 3章 80X86指令系統(tǒng)及匯編語(yǔ)言 例:比較數(shù)據(jù)段中源串 SOURCE和附加段中目的串 DEST中的 500個(gè)字節(jié) , 找出第一個(gè)不相同的字節(jié) ,如果找到 , 則將 SOURCE中的這個(gè)數(shù)送 AL中 。 轉(zhuǎn)移有段內(nèi)轉(zhuǎn)移和段間轉(zhuǎn)移之分 。 該指令的一般格式為 JMPOPRD;OPRD是轉(zhuǎn)移的目的地址直接轉(zhuǎn)移的 3種形式為: 遠(yuǎn)程轉(zhuǎn)移 JMP FAR PTR OPRD 遠(yuǎn)程轉(zhuǎn)移是段間的轉(zhuǎn)移 , 目的地址與 JMP指令所在地址不在同一段內(nèi) 。段間間接轉(zhuǎn)移 JMP DWORD PTR OPRD 第 3章 80X86指令系統(tǒng)及匯編語(yǔ)言 (2)調(diào)用和返回指令 CALL指令用來(lái)調(diào)用一個(gè)過(guò)程 , 在過(guò)程執(zhí)行完后可使用返回指令 RET, 使程序返回調(diào)用程序繼續(xù)執(zhí)行 。 ( 1) 以單個(gè)標(biāo)志位為條件 JO OPRD ;溢出轉(zhuǎn)移 JNO OPRD ;不溢出轉(zhuǎn)移 JS OPRD ;結(jié)果為負(fù)轉(zhuǎn)移 JNS OPRD ;結(jié)果為正轉(zhuǎn)移 JC OPRD ;進(jìn)位轉(zhuǎn)移 JNC OPRD ;無(wú)進(jìn)位則轉(zhuǎn)移 JE/ JZ OPRD ;等于或?yàn)榱戕D(zhuǎn)移 第 3章 80X86指令系統(tǒng)及匯編語(yǔ)言 (2) 無(wú)符號(hào)數(shù)比較 JA/ JNBEOPRD;高于或不低于等于轉(zhuǎn)移 JAE/ JNBOPRD;高于等于或不低于轉(zhuǎn)移 JB/ JNAEOPRD;低于或不高于等于轉(zhuǎn)移 JBE/ JNAOPRD;低于等于或不高于轉(zhuǎn)移 (3)帶符號(hào)數(shù)比較 JG/ JNLEOPRD;大于或不小于等于轉(zhuǎn)移 JGE/ JNLOPRD;大于等于或不小于轉(zhuǎn)移 JL/ JNGEOPRD;小于或不大于等于轉(zhuǎn)移 JLE/ JNGOPRD;小于等于或不大于轉(zhuǎn)移 第 3章 80X86指令系統(tǒng)及匯編語(yǔ)言 3. 循環(huán)控制指令 該類指令的一般格式為: LOOP OPRD; CX=0循環(huán) LOOPE OPRD; CX=0且 ZF=1循環(huán) LOOPNE OPRD; CX=0且 ZF=0循環(huán) 在 LOOPE和 LOOPNE兩條指令中 , 只要兩個(gè)條件中任一個(gè)不滿足 , 循環(huán)就結(jié)束 。 輸出指令的一般格式為: OUT PORT, ACC 它完成從 CPU到接口的輸出操作。由于 DX是 16位的寄存器 , 故可尋址的接口地址為 64K個(gè) ( 0000H到 FFFFH) 。 (2)立即數(shù)方式 操作數(shù)以立即數(shù)形式出現(xiàn)在指令中 。 (1)直接尋址方式 位移量就是操作數(shù)的有效地址 , 此位移量包含在指令中 。 例: ADD EAX, [ ESI] , 5 ; ESI的內(nèi)容加 5組成有效地址 (5)帶比例因子的變址尋址方式 變址寄存器的內(nèi)容乘以比例因子 , 再加位移量得到有效地址 。 例: ADD EDX, [ ESI] [ EBP+ 100H] ; ESI的內(nèi)容加 EBP的內(nèi)容再加 1
點(diǎn)擊復(fù)制文檔內(nèi)容
教學(xué)課件相關(guān)推薦
文庫(kù)吧 www.dybbs8.com
備案圖鄂ICP備17016276號(hào)-1