資源描述:
《微型計(jì)算機(jī)技術(shù)與應(yīng)用第3章 Pentium的指令系統(tǒng) 》由會員上傳分享,免費(fèi)在線閱讀,更多相關(guān)內(nèi)容在行業(yè)資料-天天文庫。
1、第3章Pentium的指令系統(tǒng)博學(xué)審問慎思明辨篤行第3章Pentium的指令系統(tǒng)§3.1Pentium的尋址方式§3.2Pentium的指令系統(tǒng)§3.3匯編語言中的標(biāo)記、表達(dá)式和偽指令教學(xué)重點(diǎn):尋址方式;傳送指令中的堆棧指令、交換指令、換碼指令、輸入/輸出指令;算術(shù)運(yùn)算指令中的比較指令;串操作指令;轉(zhuǎn)移指令;中斷調(diào)用示例;規(guī)范程序;偽指令DB、DW、PTR。第3章Pentium的指令系統(tǒng)2021/9/32指令的基本格式:MOVAX,1235H(雙操作數(shù))INCCX(單操作數(shù))尋址方式:——說明操作數(shù)所在地址(來源)的方法操作
2、碼操作數(shù)或操作數(shù)地址指令的兩個(gè)問題:指出進(jìn)行什么操作涉及的操作數(shù)和操作結(jié)果放在何處第3章Pentium的指令系統(tǒng)3.1Pentium的尋址方式2021/9/33操作數(shù)直接存放在指令中,緊跟在操作碼之后,MOVAL,80HMOVAX,1090HMOVEAX,10002000H(Immediateaddressing)作為指令的一部分,直接存放在代碼段里,這種操作數(shù)稱為立即數(shù)。立即數(shù)可以是8位或16、32位的。高位字節(jié)放在高地址,低位字節(jié)放在低地址。使用場合:經(jīng)常用于給寄存器賦初值。注意:只能用于源操作數(shù)字段,不能用于目的操作數(shù)字
3、段。第3章Pentium的指令系統(tǒng)3.1.1立即數(shù)尋址2021/9/34例:MOVAL,05H指令執(zhí)行后:(AL)=05H例:MOVAX,3064H指令執(zhí)行后:(AX)=3064H立即尋址方式機(jī)器代碼:1011000000000101操作碼:B0立即數(shù):05H機(jī)器代碼:101110000110010000110000操作碼:B8立即數(shù):3064H第3章Pentium的指令系統(tǒng)例:2021/9/352021/9/362021/9/37(Registeraddressing)INCCXROLAH,1MOVECX,EAX操作數(shù)在寄存
4、器中,指令只須指定寄存器號。這種尋址方式因?yàn)椴僮鲾?shù)在寄存器中,操作在CPU內(nèi)部,不執(zhí)行總線周期,不需要訪問存儲器,因此運(yùn)算速度較高。既可用于源操作數(shù),也可用于目的操作數(shù)。32位通用寄存器:EAXEBXECXEDX……16位通用寄存器:AXBXCXDX……8位通用寄存器:AHALBHBL……第3章Pentium的指令系統(tǒng)3.1.2寄存器尋址2021/9/38指令執(zhí)行前:(AX)=3064H(SS)=1234HMOVSS,AX指令執(zhí)行后:(AX)保持不變。(SS)=3064H指令執(zhí)行前:指令執(zhí)行后:SSAX3064H3064H12
5、34H3064H寄存器尋址方式第3章Pentium的指令系統(tǒng)例:2021/9/39第3章Pentium的指令系統(tǒng)2021/9/310第3章Pentium的指令系統(tǒng)2021/9/311I/O直接尋址:地址在指令中直接提供(0~255)INAL,82HOUT80H,AXINEAX,80HI/O間接尋址:利用DX設(shè)置端口地址(0~65535)MOVDX,80HINAL,DXOUTDX,AXOUTDX,EAX第3章Pentium的指令系統(tǒng)3.1.3輸入/輸出端口尋址2021/9/3123.1.4存儲器尋址操作數(shù)在主內(nèi)存中,通過存儲器地
6、址指示1.直接尋址(Directaddressing)MOVAX,[1070H]MOVEAX,ES:[1000H]注意:(1)直接尋址方式適用于處理單個(gè)變量。(2)直接尋址方式隱含的段寄存器是DS,8086/8088允許段跨越,即允許使用CSSSES作為段寄存器,這時(shí),必須在指令中特別標(biāo)明。(3)IBMPC機(jī)中規(guī)定雙操作數(shù)指令必須有一個(gè)操作數(shù)使用寄存器方式,這就是常常先要把一個(gè)變量送到寄存器去的原因。第3章Pentium的指令系統(tǒng)2021/9/313則:(AX)=3050H直接尋址方式MOVAX,[3100H](DS)=600
7、0H(63100H)=3050H必須先求出操作數(shù)的物理地址,然后再訪問存儲器才能取得操作數(shù)。第3章Pentium的指令系統(tǒng)例:2021/9/314第3章Pentium的指令系統(tǒng)2021/9/315第3章Pentium的指令系統(tǒng)2021/9/3162.寄存器間接尋址(Registerindirectaddressing)操作數(shù)的有效地址存放在寄存器中(寄存器內(nèi)容=偏移地址)MOVAX,[BX]MOVEAX,[EBX]注:若選擇BP、SP、ESP、EBP寄存器作為間接尋址操作數(shù)在堆棧段區(qū)域中,用SS寄存器的內(nèi)容作為段地址。在指令中
8、可以指定段跨越前綴來取得其他段中的數(shù)據(jù)。例:MOVES:[DI],AXMOVDX,DS:[BP]操作數(shù)在存儲器存儲單元中,第3章Pentium的指令系統(tǒng)2021/9/317MOVBX,[DI](DS)=6000H(DI)=2000HPA=62000H(62000H)=50A0