




版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領(lǐng)
文檔簡介
1、l41 8086/8088 CPU的結(jié)構(gòu)l42 主存儲器l43 8086/8088堆棧l44 8086/8088指令系統(tǒng)l45 提高CPU性能的一些措施l理解8086/8088CPU的寄存器結(jié)構(gòu)、主存儲器、堆棧結(jié)構(gòu)。l掌握8086/8088指令系統(tǒng)的尋址方式。(本章的重點內(nèi)容)(本章的重點內(nèi)容)l理解8086/8088指令類型。l了解提高CPU性能的一些措施與當(dāng)前常用的實際CPU基本組成。l重點難點:重點難點:l8086/8088指令系統(tǒng)的尋址方式。l課時安排:課時安排:6課時。l媒體使用:媒體使用:l使用多媒體投影,主要采用PowerPoint準(zhǔn)備的電子教案。4.1.1 8086/8088C
2、PU的結(jié)構(gòu)的結(jié)構(gòu)1. 8086/8088內(nèi)部結(jié)構(gòu):內(nèi)部結(jié)構(gòu):l8086/8088CPU采用指令流水線結(jié)構(gòu)指令流水線結(jié)構(gòu),將取指令(或取操作數(shù))與執(zhí)行指令的功能分別由兩個獨立部件實現(xiàn),l即總線接口部件BIU與執(zhí)行部件EU主要任務(wù)是完成CPU與主存儲器或I/O之間的信息傳送。主要任務(wù)是執(zhí)行指令1、執(zhí)行部件、執(zhí)行部件EU:包括:包括一個一個16位算術(shù)邏輯部件位算術(shù)邏輯部件ALU、一組通用寄存器、一組通用寄存器、暫存器、標(biāo)志寄存器和暫存器、標(biāo)志寄存器和EU控制器??刂破鳌?、EU主要任務(wù)是執(zhí)行主要任務(wù)是執(zhí)行指令。指令。3、執(zhí)行部件、執(zhí)行部件EU功能見功能見教材教材P114。l總線接口部件BIU見教材P
3、115。1、總線接口部件、總線接口部件BIU:包括一段寄存器、指包括一段寄存器、指令指針、令指針、6字節(jié)的指令字節(jié)的指令隊列、隊列、20位總線地址位總線地址形成部件和總線控制形成部件和總線控制邏輯。邏輯。2、BIU主要任務(wù)是完主要任務(wù)是完成成CPU與主存儲器或與主存儲器或I/O端口之間的信息傳端口之間的信息傳送。送。3、總線接口、總線接口BIU功能功能見教材見教材P115。段基值:段基值:在BIU中設(shè)置段寄存器,用以存放20位段起始地址的高16位,稱為段基值。偏移量:偏移量:由EU或指令指針I(yè)P提供段內(nèi)的偏移量,即一個主存單元與所在段的段基址之間的字節(jié)距離。(16位)段基址:段基址:由段基值左
4、移4位后,得到一個物理地址。二者相加形成20位主存單元的物理地址物理地址。我們把提供一個我們把提供一個20位地址的兩個寄存器中的值位地址的兩個寄存器中的值分別稱之為:分別稱之為:20位寄存器中的值稱之為段基址(位寄存器中的值稱之為段基址(Segment base value)16位寄存器中的值稱之為偏移量(位寄存器中的值稱之為偏移量(Offset)或有)或有效地址效地址(Effective address)段基址是由四個段寄存器提供段基址是由四個段寄存器提供20位的高位的高16位,低位,低四位補四位補0形成的形成的偏移量是由偏移量是由CPU內(nèi)的內(nèi)的EU部分提供的部分提供的l1. 段寄存器:lC
5、S(代碼段寄存器)用來存放程序的指令代碼序列,用來存放當(dāng)前代碼段段首址的高16位,即段基值。lDS(數(shù)據(jù)段寄存器)存放程序的有關(guān)數(shù)據(jù),用來存放當(dāng)前數(shù)據(jù)段的段基值。lSS(堆棧段寄存器)用來存放按后進先出順序存取的信息。存放當(dāng)前堆棧段的段基值。lES(附加段寄存器)存放運算結(jié)果或輔助數(shù)據(jù),存放當(dāng)前附加段的段基值。2 . 通用寄存器(1)地址指針寄存(2)數(shù)據(jù)寄存器3. 用于控制的寄存器(1)指令指針I(yè)P:(2)標(biāo)志寄存器FR進位標(biāo)志位CF奇偶標(biāo)志位PF輔助進位標(biāo)志位AF零值標(biāo)志位ZF符號標(biāo)志位SF溢出標(biāo)志位OF單步(或跟蹤)標(biāo)志位TF中斷標(biāo)志位IF方向標(biāo)志位DF作用類似于PC,當(dāng)現(xiàn)行指令執(zhí)行完畢
6、,由IP提供下一條指令地址p8086/8088CPU有20條地址引出線,因此具有1M字節(jié)(210*210=220)的尋址能力,即可以在1M個字節(jié)單元中尋找出所需的一個存儲單元。p在8086/8088主存中,一個字節(jié)數(shù)據(jù)占用一個存儲單元。一個字(Word)數(shù)據(jù)(16位)則占用二個相鄰的存儲單元,數(shù)的低8位(低字節(jié))存放在低地址單元;高8位(高字節(jié))存放在高地址單元,并以低字節(jié)所在存儲單元地址作為字?jǐn)?shù)據(jù)的單元地址。p8086/8088把1MB主存空間按需要劃分為若干段(segment)。每個段都由連續(xù)的字節(jié)單元組成,最大長度為64K(即65536),可作為獨立尋址的邏輯單位。p一個段起始單元的地址
7、,稱為對應(yīng)段的段基址(20位)。p在程序中設(shè)置的段稱為邏輯段。p主存可分成任意多個段,但在某一時刻,一個程序只能訪問4個段寄存器指向的當(dāng)前段的內(nèi)容。4個段寄存器CS、DS、SS和ES,分別保存代碼段、數(shù)據(jù)段、堆棧段和附加段這4個當(dāng)前段的段基址的高16位段基值。p邏輯地址段基值:偏移量(書寫形式)(1)段基值:由某個段寄存器(CS,DS,SS,ES)給出,它是段基址的高16位。(2)偏移量:(也稱偏移地址)由IP或EU按尋址方式產(chǎn)生的有效地址提供,它是段內(nèi)某存儲單元與段基址之間的字節(jié)距離。p物理地址是指實際的20位主存單元地址,1MB主存空間的每個存儲單元只對應(yīng)惟一的物理地址,其范圍為00000
8、HFFFFFH。邏輯地址物理地址的轉(zhuǎn)換方式: 將段基值左移4位形成20位段基址,再加上偏移量,產(chǎn)生20位物理地址。p邏輯地址的來源CPU在執(zhí)行指令時,是按指令所需的操作類型從不同的來源獲得存儲單元的邏輯地址,然后形成對應(yīng)的物理地址以訪問主存。(具體內(nèi)容見教材的P124表4-2邏輯地址的來源)l4.3.2 4.3.2 堆棧操作堆棧操作(AL)=34H(AH)=12H(BH)=56H(BL)=78HBXAX56781234(SP)-2SP;(AX) (SP)壓棧之前壓棧之前(SP)(SP)-2SP;(BX) (SP)壓棧指令壓棧指令p出棧-用彈出指令POP可以將當(dāng)前棧頂字單元內(nèi)容取出送到通用寄存器
9、、段寄存器或字存儲單元中。p執(zhí)行出棧指令執(zhí)行出棧指令POP的操作過程分二步進行:的操作過程分二步進行:(1)(SP)寄存器/字單元;將棧頂單元內(nèi)容送到指定的寄存器或字單元(2)(SP)+2SP;修改棧頂指針,SP加2以指向新棧頂BXAX56781234(BL)=78H(BH)=56H(AL)=34H(AH)=12H(SP) BX;(SP)+2SP(SP) AX;(SP)+2SP出棧之后出棧之后(SP)AXBX1 . 1 . 寄存器尋址方式:寄存器尋址方式:指令所需的操作數(shù)存放在CPU的寄存器(通用寄存器或段寄存器)中,通過指令中給出寄存器地址去找到操作數(shù)。尋址過程:例:(BX) =1234H
10、MOV AX,BX :將BX中的內(nèi) 容送到AX中 (AX) =1234H 操作碼 REC操作數(shù)SRi是指令代碼中的尋址字段,表示操作數(shù)的寄存器地址l立即數(shù)尋址方式:指令所需的操作數(shù)直接在指立即數(shù)尋址方式:指令所需的操作數(shù)直接在指令代碼中,隨著取指令一起取到令代碼中,隨著取指令一起取到BIU的指令隊的指令隊列中。列中。操作碼操作碼F5H12H34H一條指令一條指令A(yù)HALAXAHALAX(A)MOV AX,1234H(B)MOV AL,0F5Hl在匯編語言程序中,一個存儲單元的地址采用邏輯地址來表示:(形式:段基值:偏移量)l段基值:是由某個段寄存器提供,由指令隱含給出。l偏移量:是指存放操作數(shù)
11、的存儲單元與段起始(段基址)之間的字節(jié)距離,字由CPU的EU按指令中操作數(shù)的尋址方式計算而得到,又稱為有效地址EA。l有效地址EA:由位移量、基地址、變址量三個地址分量的某種組合求得。段基址段基值左段基值左移四位移四位段基值l定義:指令所需的操作數(shù)存放在存儲單元中,操作數(shù)的有效地址EA直接由指令代碼中的位移量提供。l尋址過程:l在源程序中,直接尋址方式可用數(shù)值地址或符號地址來表示。操作碼位移量EA用數(shù)值地址表示:用數(shù)值地址表示:l在采用直接尋址方式的匯編指令中,用數(shù)值表示操作數(shù)的有效地址,則操作數(shù)所在段的段寄存器必須指明,不能缺省。MOV BX,DS:1000H完成將當(dāng)前數(shù)據(jù)段偏移1000H個
12、字節(jié)的字單元內(nèi)容1234H送入BX中。用符號地址表示:用符號地址表示:l在源程序中,常用符號地址表示存放操作數(shù)的存儲單元,所以在匯編指令中,可用符號地址表示的直接尋址方式來存取操作數(shù)。l若指令中不必給出數(shù)據(jù)段寄存器名,即隱含使用DS;其他須指定。l例題:P130MOV BX,VARMOV BX,DS:VARMOV DA_BYTE,0FHMOV DS:DA_BYTE,0FHMOV CL,DA+3MOV CL,DA+3l寄存器間接尋址方式:指令所需的操作數(shù)在存儲單元中,操作數(shù)的有效地址EA直接從基址寄存器(BP或BX)或變址寄存器(SI或DI)中獲得。l見P131的圖4-22 寄存器間接尋址方式。
13、l若以BX,SI或DI間接尋址時,隱含使用的段寄存器是DS,若以BP間接尋址時,隱含使用的段寄存器是SS。MOV CH,SIMOV CH,DS:SIMOV DI,BXMOV DS:DI,BXMOV AL,BXMOV AL,DS:BXMOV CX,BPMOV CX,SS:BP操作碼MOD R/MSIDIBXBPOROROREA尋址過程是指令代碼中的尋址字段是指令代碼中的尋址字段寄存器間接尋寄存器間接尋址方式址方式實際上是實際上是將有效地址事先將有效地址事先存放在一個寄存存放在一個寄存器中,如同一個器中,如同一個地址指針。因此地址指針。因此在程序中只要修在程序中只要修改間址寄存器的改間址寄存器的內(nèi)
14、容,就可以用內(nèi)容,就可以用一條指令訪問不一條指令訪問不同的存儲單元。同的存儲單元。l 變址尋址和基址尋址方式:變址尋址和基址尋址方式:指令所需的操作數(shù)在存儲單元中,操作數(shù)的有效地址EA是基址寄存器(BP或BX)或變址寄存器(SI或DI)的內(nèi)容與指令中給出的位移量(8位或16或)兩個地址分量之和。l使用SI或DI稱為變址尋址。l使用BX或BP稱為基址尋址。操作碼MOD R/M位移量SIDIBXBPOROROR+EAl尋址方式的使用格式:l變址或基址尋址方式用來訪問順序存放在主存中的一維數(shù)組、表格、字符串等。l典型用法:是將指令中不能修改的位移量作為基準(zhǔn)地址,而變址或基址寄存器內(nèi)容作為修改量l例題
15、4-1:見教材132頁。MOV AX,10HSIMOV AX,DS:10HSIMOV TABLEDI,12HMOV DS:TABLEDI,12HMOV AX,ARRYBXMOV AX,DS:ARRYBXMOV TAB1BP,CLMOV SS:TAB1BP,CL操作碼MOD R/M位移量SIDIBPBXOROR+EA尋址過程l尋址方式的使用格式:l基址變址尋址方式用來訪問存放在主存中的二維數(shù)組。(其尋址方式中有兩地址分量可在程序執(zhí)行過程中進行修改)l例題4-2:見教材133-134頁。MOV AX,200HBXSIMOV AX,DS:200HBXSIMOV TABLEBXDI,0FFHMOV D
16、S:TABLEBXDI,0FFHMOV AX,ARRYBPSIMOV AX,SS:ARRYBPSIMOV TAB1BPDI,DLMOV SS:TABBPDI,DL上半部分表示上半部分表示由由CPU的執(zhí)行的執(zhí)行部件部件EU根據(jù)尋根據(jù)尋址方式計算有址方式計算有效地址效地址EA。下半部分表示下半部分表示由總線接口部由總線接口部件件BIU形成操作形成操作數(shù)的物理地址。數(shù)的物理地址。按操作數(shù)的物按操作數(shù)的物理地址就可直理地址就可直接訪問操作數(shù)接訪問操作數(shù)的存儲單元。的存儲單元。l串操作尋址方式:l串操作指令規(guī)定:l隱含使用SI作為在數(shù)據(jù)段中的源串(即源操作數(shù))的地址指針l隱含使用DI作為在附加段中的目的
17、串的地址指針。SIDI源串有效地址EA目的串有效地址EAl了解l8086/8088指令按操作數(shù)地址劃分: 雙操作數(shù)指令:OPR DEST,SRC 單操作數(shù)指令:OPR DEST 無操作數(shù)指令:OPRl8086/8088指令按功能劃分: 傳送類指令 算術(shù)運算類指令 位操作類指令 串操作類指令 程序轉(zhuǎn)移類指令 處理器控制類指令l分類:(僅存標(biāo)志指令SAHF、標(biāo)志出棧指令POPF對標(biāo)位有影響)數(shù)據(jù)傳送類指令交換指令標(biāo)志位傳送指令地址傳送指令l格式:MOV DEST,SRCl功能: DEST(SRC)將源地址的內(nèi)容(源操作數(shù))傳送到目的地址中。傳送指令執(zhí)行后源操作數(shù)保持不變。l注意:MOV指令中的兩個
18、操作數(shù)可同為字或字節(jié),但兩者位數(shù)必須一致。目的操作數(shù)不能為立即數(shù)。兩個操作數(shù)不能同時為存儲器操作數(shù)。MOV指令中立即數(shù)不能直接傳送給段寄存器,而且段寄存器之間也不能直接傳送數(shù)據(jù),但可以通過寄存器實現(xiàn)間接傳送。一條MOV指令不能完成兩個存儲單元之間的數(shù)據(jù)傳送,但可以用兩條指令來實現(xiàn)。 數(shù)據(jù)傳送指令(數(shù)據(jù)傳送指令(Move)(指令中只允許兩個操作數(shù)的其中指令中只允許兩個操作數(shù)的其中一個在主存儲器中,立即數(shù)不能直接送段寄存器,段寄存一個在主存儲器中,立即數(shù)不能直接送段寄存器,段寄存器也不能之間直接傳送器也不能之間直接傳送)例子例子錯誤原因錯誤原因MOV 60H,AL立即數(shù)不能作目的操作數(shù)立即數(shù)不能作
19、目的操作數(shù)MOV BX,SI存儲器之間不能直接傳送存儲器之間不能直接傳送MOV CS,AXCS不能作目的操作數(shù)不能作目的操作數(shù)MOV BX,IP通用寄存器無通用寄存器無IP寄存器寄存器MOV DS,ES段寄存器間不能直接傳送段寄存器間不能直接傳送MOV CX,AL源和目的操作數(shù)長度不一致源和目的操作數(shù)長度不一致l格式:XCHG DEST , SRCl功能:將源地址的內(nèi)容(源操作數(shù))與目的地址的內(nèi)容(目的操作數(shù))相互交換。通用寄存器通用寄存器AX BX CX DX SI DI BP SP存儲器存儲器圖4-30 CXHG指令的數(shù)據(jù)交換l注意:注意:數(shù)據(jù)交換只能在通用寄存器之間或通用寄存器數(shù)據(jù)交換只
20、能在通用寄存器之間或通用寄存器與存儲單元之間進行。與存儲單元之間進行。交換指令不能使用段寄存器,也不能使用立即交換指令不能使用段寄存器,也不能使用立即數(shù)。數(shù)。(1)取標(biāo)志指令()取標(biāo)志指令(LAHF)l格式:LAHFl功能:AH (FR)7-0,將標(biāo)志寄存器FR低8位內(nèi)容傳送到AH寄存器中。l見如下圖(一一對應(yīng))l76543210這種指令用于對標(biāo)志寄存器進行存取操作,共4條指令且都是無操作數(shù)指令SF符號ZF零值A(chǔ)F輔助進位PF奇偶CF進位AHFR低低8位位l(2)存標(biāo)志指令)存標(biāo)志指令l格式:SAHFl功能:(FR)7-0 AH,將AH寄存器的內(nèi)容傳送給標(biāo)志寄存器FR低8位。l(3)標(biāo)志壓棧指
21、令()標(biāo)志壓棧指令(PUSHF)l格式:PUSHF l功能:PUSHF指令先將棧頂指針SP內(nèi)容減2指向空字單元,然后把16位標(biāo)志寄存器FR的所有內(nèi)容送到SP指向的新棧頂字單元中。l(4)標(biāo)志壓棧指令()標(biāo)志壓棧指令(POPF)l格式:POPF l功能:POPF指令先SP指向的棧頂字單元的內(nèi)容彈出標(biāo)志寄存器中,然后SP內(nèi)容加2指向新的棧頂。各標(biāo)志位的狀態(tài)由堆棧彈出字的對應(yīng)位內(nèi)容決定。(1)裝入有效地址指令LEAl格式:LEA DEST,SRCl功能:DEST SRC的EA,即將源操作數(shù)的有效地址EA傳送到目的地址(16位通用寄存器)中。(2)裝入地址指針指令LDS 格式:LDS DEST,SRC
22、 LES DEST,SRC 功能:是從作地址指針的4個存儲單元中,同時取出段基值與偏移量(即源操作數(shù)),分別送到段寄存器DS(ES)和通用寄存器中。1加法運算指令加法運算指令(1)加法指令(ADD)l格式:ADD DSET,SRCl功能:DEST (SRC)+(DEST),影響OF,SF,ZF,AF,PF和CF標(biāo)志位。l見教材P141頁,例4-8注意各標(biāo)志位的變化。例:例:ADD DL,0A4Hl格式:ADC DSET,SRCl功能:DEST (SRC)+(DEST)+CF,即在完成兩個操作數(shù)相加的同時,將標(biāo)志位CF加上,求出的和數(shù)送入目的地址中。影響OF,SF,ZF,AF,PF和CF標(biāo)志位。
23、l注意:ADC主要用于大于16位數(shù)的相加運算。l例4-9 有一個32位無符號數(shù)存放在DX(高16位)、AX(低16位)中,若要加上常數(shù)76F1A23H,則用以下指令來實現(xiàn):lADD AX,1A23H;lADC DX,76FH;完成把完成把16位常數(shù)加在位常數(shù)加在AX中,中,若產(chǎn)生進位,則記錄在若產(chǎn)生進位,則記錄在CF中。中。由由ADC指令在完成高指令在完成高16位相位相加的同時,將低加的同時,將低16位進位(即位進位(即CF中的數(shù))也加上。中的數(shù))也加上。+7+6F+1A+23DXAXCF DH DL AH ALl格式:INC DSETl功能:DEST (DEST)+1,即目的操作數(shù)加1后送回
24、目的地址中,影響OF,SF,ZF,AF和PF,但不影響CF。l注意:q操作數(shù)只能在通用寄存器或存儲單元中,不能是立即數(shù)。qINC指令主要用于計數(shù)器的計數(shù)或修改地址指針。(1)減法指令(SUB)l格式:SUB DEST,SRCl功能: DEST (DEST)(SRC),即完成從目的操作數(shù)中減去源操作數(shù),其差值送入目的地址中。影響OF,SF,ZF,AF和PF,但不影響CF。l例:有例:有2個字節(jié)單元個字節(jié)單元A、B,可用指令實現(xiàn),可用指令實現(xiàn)(A)(B) A 。 MOV AL,B SUB A,ALl格式:SBB DEST,SRCl功能: DEST (DEST)-(SRC)-CF,即在完成2個操作數(shù)
25、相減的同時,還要減去借位CF,影響OF,SF,ZF,AF和PF,但不影響CF。l注意:用于大于16位數(shù)的相減運算,將低位部分的相減的借位引入高位部分的減法。l格式:DEC DSETl功能:DEST (DEST)-1,即目的操作數(shù)減1后送回目的地址中,影響OF,SF,ZF,AF和PF,但不影響CF。l注意:q操作數(shù)只能在通用寄存器或存儲單元中,不能是立即數(shù)。qDEC指令主要用于計數(shù)器的計數(shù)或修改地址指針,但它的計數(shù)或修改方向與INC指令相反。l格式:NEG DSETl功能:DEST 0- (DEST),即用0減去目的操作數(shù),相減結(jié)果送回目的地址中。影響OF,SF,ZF,AF和PF,但不影響CF。
26、l見教材P143l例4-13l例4-14l格式:CMP DSET,SRCl功能:(DEST)-(SRC),兩個操作數(shù)相減后,僅按相減結(jié)果設(shè)置標(biāo)志位OF,SF,ZF,AF,PF和CF,但不保留差。lCMP和SUB之間的區(qū)別:l運算結(jié)果不送回目的地址中,因此CMP指令執(zhí)行后,兩個操作數(shù)都不變,只影響狀態(tài)標(biāo)志位。lCMP主要是利用所設(shè)標(biāo)志位的狀態(tài)來反映兩個操作數(shù)的大小。(1)無符號數(shù)乘法指令(MUL)l格式:MUL OPRDl功能:l l注意:(OPRD)是乘法運算的一個操作數(shù),只能在通用寄存器或存儲單元中,另一個操作安息則隱含在AL或AX寄存器中。(2)帶符號數(shù)乘法指令(IMUL) 該指令中的操作
27、數(shù)及積均為帶符號且用補碼表示。字節(jié)無稱號數(shù)相乘:AX (OPRD)*(AL)字無稱號數(shù)相乘:AX (OPRD)*(AX)(1)無符號數(shù)除法指令(DIV)l格式:DIV OPRDl功能:l l注意:DIV指令對標(biāo)志寄存器無有效標(biāo)志結(jié)果,有兩種情況將產(chǎn)生0型中斷,轉(zhuǎn)入除法出錯中斷處理。(除數(shù)為0或商溢出)字節(jié)除法:AL (AX)/(OPRD)字無稱號數(shù)相除:AX (DX:AX)/(OPRD)(2)帶符號數(shù)除法指令(IDIV)l格式:IDIV OPRDl功能:該指令中的操作數(shù)、商及余數(shù)均帶符且用補碼表示,其余均與DIV操作相同。l(3)字節(jié)/字符號擴展指令l格式:CBW;擴展AL中的符號位至AH中l(wèi)
28、 CWD;擴展AX中的符號位至DX中l(wèi)兩個指令主要用在除法指令前,形成雙倍長度的被除數(shù),對標(biāo)志寄存器均無影響。(1)非組合型加法校正指令A(yù)AA(2)組合型加法校正指令DAA(3)非組合型減法校正指令A(yù)AS(4)組合型減法校正指令DASBCD十進制:先用二進制數(shù)的加減、乘除指令十進制:先用二進制數(shù)的加減、乘除指令對對BCD碼進行運算,接著用碼進行運算,接著用BCD碼校正指令對運碼校正指令對運算結(jié)果進行校正。算結(jié)果進行校正。例題請參見教材P147。1.邏輯運算指令(1)邏輯與指令(二(二1為為1)l格式:AND DEST,SRCl功能:DEST (SRC)(DEST)(2)邏輯或指令(有(有1為為
29、1)l格式:OR DEST,SRCl功能:DEST (SRC) (DEST)這些指令常用于對操這些指令常用于對操作數(shù)的某些位進行分作數(shù)的某些位進行分離、組合或設(shè)置離、組合或設(shè)置(3)邏輯異或指令(同為同為0,異為,異為1)l格式:XOR DEST,SRCl功能:DEST (SRC)O(DEST)(4)邏輯非指令l格式:NOT DESTl功能:DEST (DEST)例例1:l AND AL,0F0H;分離出AL中的高4 位lOR AL,80H;將AL中最高位置“1”lXOR AX,AX;將AX內(nèi)容清零lXOR AL,01H;將AL中最低位變反l例例2:實現(xiàn)將標(biāo)志寄存器的第:實現(xiàn)將標(biāo)志寄存器的第8
30、位位TF位置位置1。lPUSHF;標(biāo)志壓棧指令(將16位標(biāo)志寄存FR的內(nèi)容送入棧頂單元)lPOP AX;出棧,即(棧頂單元)AXlOR AX,100H;將AX中第8位置1,其余不變lPUSH AXlPOPF;通過堆棧將修改的結(jié)果送回標(biāo)志寄存器中格式:TEST DEST,SRCl功能:(SRC)(DEST);將源操作數(shù)與目的操作數(shù)進行按位邏輯與運算,僅按結(jié)果設(shè)置標(biāo)志位SF,ZF,PF,相與的結(jié)果不保存。l移位指令分算術(shù)移位、邏輯移位和循環(huán)移位,共8條指令,其特點是:q具有相同的指令格式:OPR DESR,COUNTq每條指令都是單操作數(shù)指令,即只需一個操作數(shù)DESTqDEST只能是8/16位通用
31、寄存器或存儲器操作數(shù),不能是立即數(shù)qCOUNT表示移位的次數(shù),移位一次,為1;移位多次,則須有CL替代,CL中存放移位的次數(shù)。q格式:算術(shù)左移指令算術(shù)左移指令 SAL DEST,COUNT;將將DEST指定的操指定的操作數(shù)左移作數(shù)左移COUNT,最高位移入,最高位移入CF中,最低位補中,最低位補0算術(shù)右移指令算術(shù)右移指令 SAR DEST,COUNT;將將DEST指定的操指定的操作數(shù)右移作數(shù)右移COUNT,最高符號位保持不變,連同符號位依,最高符號位保持不變,連同符號位依次右移,最低位移入次右移,最低位移入CF中中q算術(shù)移位指令主要用于對帶符號數(shù)的移位,左移一位相當(dāng)于乘2;右移一位相當(dāng)于除2。q格式:邏輯左移指令 SHL DEST,COUNT邏輯右移指令 SHR DEST,COUNTq功能:將DEST指定的8/16位寄存器或存儲器操作數(shù)移位COUNT。SHL最高位移入CF中,最低位補0SHR最低位移入CF中,最高位補0q格式:循環(huán)左移指令 ROL DEST,COUNT循環(huán)右移指令 ROR DEST,COUNT帶進位循環(huán)左移指令 RCL DEST,COUNT帶進位循環(huán)右移指令 RCR DEST,COUNTq功能:將D
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 二零二五年度物流園區(qū)物業(yè)保安勞務(wù)合同
- 二零二五年度焊接工程安全管理合同
- 二零二五年度股份代持協(xié)議書:教育機構(gòu)股份代持及資源共享合同
- 2025年度智慧城市物聯(lián)網(wǎng)股東入股合作合同
- 二零二五年度綠色農(nóng)業(yè)發(fā)展擔(dān)保合同
- 二零二五年度國有企業(yè)員工借調(diào)及工作交接合同
- 2025年度股權(quán)轉(zhuǎn)讓及經(jīng)營權(quán)轉(zhuǎn)讓一體化協(xié)議
- 二零二五年度居民住房租賃合同租賃房屋租賃期限調(diào)整協(xié)議
- 二零二五年度保密信息處理保密合同
- 綠茶茶園承包經(jīng)營合同(2025年度)含茶樹病蟲害防治服務(wù)
- 2025高考數(shù)學(xué)專項復(fù)習(xí):導(dǎo)數(shù)的27個模塊專練(含答案)
- 涵洞工程專項施工方案
- DB32-T 4107-2021 民用建筑節(jié)能工程熱工性能現(xiàn)場檢測標(biāo)準(zhǔn)
- 七年級上冊生物2024-2025學(xué)年新人教版期末綜合試卷(含答案)
- 延長殼牌加油站PTW培訓(xùn)教材(工作許可證體系)
- 2024年國家電網(wǎng)招聘之電工類考試題庫附答案(滿分必刷)
- 晶體缺陷獲獎?wù)n件
- 燃氣用聚乙烯管道焊接工藝評定DB41-T 1825-2019
- (人教PEP2024版)英語一年級上冊Unit 2 教學(xué)課件(新教材)
- 經(jīng)銷商轉(zhuǎn)戶證明范文
- DB23T 3761-2024 建設(shè)工程對水文監(jiān)測影響評價報告編制規(guī)程
評論
0/150
提交評論