




版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡介
1、什么是指令系統(tǒng)u計(jì)算機(jī)的指令系統(tǒng)就是指該計(jì)算機(jī)能夠計(jì)算機(jī)的指令系統(tǒng)就是指該計(jì)算機(jī)能夠執(zhí)行的全部指令的集合。執(zhí)行的全部指令的集合。u每種計(jì)算機(jī)都有它支持的指令集合。每種計(jì)算機(jī)都有它支持的指令集合。 u16位位8086指令系統(tǒng)是整個(gè)指令系統(tǒng)是整個(gè)Intel 80 x86 系列微處理器指令系統(tǒng)的基礎(chǔ)系列微處理器指令系統(tǒng)的基礎(chǔ)。u本章內(nèi)容是本課程的一個(gè)關(guān)鍵內(nèi)容。本章內(nèi)容是本課程的一個(gè)關(guān)鍵內(nèi)容。u本章的重點(diǎn)是理解本章的重點(diǎn)是理解80868086常用指令的功能常用指令的功能u本章的關(guān)鍵是熟悉本章的關(guān)鍵是熟悉80868086的寄存器組的寄存器組u本章的難點(diǎn)是本章的難點(diǎn)是80868086的各種尋址方式的各種尋
2、址方式4.1 匯編語言指令格式由四部分組成:由四部分組成:標(biāo)號(hào):標(biāo)號(hào):表示該指令在主存中的邏輯地址,后面必須表示該指令在主存中的邏輯地址,后面必須 跟冒號(hào),是由字母開頭后跟字母或數(shù)字的字跟冒號(hào),是由字母開頭后跟字母或數(shù)字的字 符串,取名不允許出現(xiàn)指令助記符符串,取名不允許出現(xiàn)指令助記符指令助記符:指令助記符:表示要執(zhí)行何種操作表示要執(zhí)行何種操作操作數(shù):操作數(shù):規(guī)定參與操作的數(shù)或數(shù)所在地址規(guī)定參與操作的數(shù)或數(shù)所在地址注釋:注釋:通常是對(duì)該指令或這段程序功能的說明通常是對(duì)該指令或這段程序功能的說明標(biāo)號(hào)標(biāo)號(hào): : 指令助記符指令助記符 操作數(shù)操作數(shù) ; ;注釋注釋u實(shí)際指令由操作碼和操作數(shù)兩部分構(gòu)成
3、實(shí)際指令由操作碼和操作數(shù)兩部分構(gòu)成 操作碼說明計(jì)算機(jī)要執(zhí)行哪種操作,如傳送、運(yùn)算、移位、操作碼說明計(jì)算機(jī)要執(zhí)行哪種操作,如傳送、運(yùn)算、移位、跳轉(zhuǎn)等操作,它是指令中不可缺少的組成部分。跳轉(zhuǎn)等操作,它是指令中不可缺少的組成部分。 操作數(shù)是指令執(zhí)行的參與者,即各種操作的對(duì)象。有些指令操作數(shù)是指令執(zhí)行的參與者,即各種操作的對(duì)象。有些指令不需要操作數(shù),通常的指令都有一個(gè)或兩個(gè)操作數(shù),也有個(gè)不需要操作數(shù),通常的指令都有一個(gè)或兩個(gè)操作數(shù),也有個(gè)別指令有別指令有3 3個(gè)甚至個(gè)甚至4 4個(gè)操作數(shù)。有多個(gè)操作數(shù)時(shí),中間由逗號(hào)個(gè)操作數(shù)。有多個(gè)操作數(shù)時(shí),中間由逗號(hào)分開。分開。 操作數(shù)操作數(shù)1, 稱為目的操作數(shù)稱為目的
4、操作數(shù) dest,它不僅可以作為指令操,它不僅可以作為指令操 作的一作的一 個(gè)源對(duì)象,還用來存放指令操作的結(jié)果;個(gè)源對(duì)象,還用來存放指令操作的結(jié)果; 操作數(shù)操作數(shù)2,稱為源操作數(shù),稱為源操作數(shù) src,它表示參與指令操作的一個(gè),它表示參與指令操作的一個(gè) 源對(duì)象。源對(duì)象。 指令中的操作碼和操作數(shù)操作碼操作碼 操作數(shù)操作數(shù)1, 操作數(shù)操作數(shù)2u每種指令的每種指令的操作碼操作碼: 用一個(gè)唯一的助記符表示(英文縮寫),用一個(gè)唯一的助記符表示(英文縮寫), 對(duì)應(yīng)著一個(gè)二進(jìn)制編碼的機(jī)器指令。對(duì)應(yīng)著一個(gè)二進(jìn)制編碼的機(jī)器指令。u指令中的指令中的操作數(shù)操作數(shù): 可以是一個(gè)具體的數(shù)值(立即數(shù));可以是一個(gè)具體的數(shù)
5、值(立即數(shù)); 可以是存放數(shù)據(jù)的寄存器;可以是存放數(shù)據(jù)的寄存器; 可以用多種方式指明尋址單元在存儲(chǔ)器中的地址??梢杂枚喾N方式指明尋址單元在存儲(chǔ)器中的地址。指令中的操作碼和操作數(shù)指令中的操作碼和操作數(shù)(指令示例)u MOV指令的功能是將源操作數(shù)指令的功能是將源操作數(shù)src傳送至傳送至目的操作數(shù)目的操作數(shù)dest MOV dest , src ;destsrc MOV AL, 05H ;AL05HMOV BX, AX;BXAXMOV AX, SI;AXDS:SIMOV AX, BP+06H ;AXSS:BP+06HMOV AX, BX+SI ;AXDS:BX+SI給出立即尋址方式需要的數(shù)值本身給出
6、立即尋址方式需要的數(shù)值本身給出某些尋址方式需要的對(duì)基地址的偏移量給出某些尋址方式需要的對(duì)基地址的偏移量表明采用的尋址方式(表表明采用的尋址方式(表4-1)1/2字節(jié)0/1字節(jié)0/1/2字節(jié)0/1/2字節(jié)操作碼mod reg r/m2 3 3位移量立即數(shù)操作數(shù)操作數(shù)8086指令的機(jī)器代碼(Machine Code)格式D7D6D5D4D3D2D1D0OPCODEdw (操作碼字節(jié))操作碼字節(jié))d=0d=0,REGREG域指定寄存器為源操作數(shù);域指定寄存器為源操作數(shù);d=1d=1,REGREG域指定寄存器為目的操作數(shù)。域指定寄存器為目的操作數(shù)。w=0w=0,操作數(shù)為操作數(shù)為8 8位二進(jìn)制數(shù),字節(jié)操
7、作;位二進(jìn)制數(shù),字節(jié)操作;w=1w=1,操作數(shù)為操作數(shù)為1616位二進(jìn)制數(shù),字操作。位二進(jìn)制數(shù),字操作。MODMOD:方式域方式域REGREG:寄存器域寄存器域R/MR/M:寄存器寄存器/ /存儲(chǔ)器域存儲(chǔ)器域D7D6D5D4D3D2D1D0MODREGR/M(尋址方式字節(jié))(尋址方式字節(jié))1/2字節(jié)0/1字節(jié)0/1/2字節(jié)0/1/2字節(jié)操作碼mod reg r/m2 3 3位移量立即數(shù)8086指令的機(jī)器代碼(Machine Code)格式標(biāo)準(zhǔn)機(jī)器代碼示例mov ax,BP+0 mov ax,BP+0 ;機(jī)器代碼是;機(jī)器代碼是 8B 46 008B 46 00u前一個(gè)字節(jié) 8B (100010
8、11 1)是操作碼(含d=1表示寄存器為目的操作數(shù),w1表示字操作)u中間一個(gè)字節(jié)46(01 000 110)是 “mod reg r/m”字節(jié)ureg000表示目的操作數(shù)為AXumod01和r/m110表示源操作數(shù)為BP+D8u 最后一個(gè)字節(jié)就是8位位移量D8001/2字節(jié)0/1字節(jié)0/1/2字節(jié)0/1/2字節(jié)操作碼mod reg r/m位移量立即數(shù)標(biāo)準(zhǔn)機(jī)器代碼示例例例: : 將指令將指令“ MOV MOV BX+DI-6BX+DI-6,CL CL ”寫成機(jī)器碼格式寫成機(jī)器碼格式。解 :這是一條寄存器送存儲(chǔ)器的指令。由附錄A可知該指令的格式如下,是一條3字節(jié)指令: 100010 d w MO
9、D REG R/M disp8u因?yàn)?REG域指出的)寄存器是源操作數(shù),所以d0;因?yàn)槭亲止?jié)操作,所以w0。u由CL寄存器的編碼知REG001。u因?yàn)槟康牟僮鲾?shù)是存儲(chǔ)器且?guī)в?位位移量,所以MOD01。u尋址方式BX+DI+disp8的R/M=001。u位移量為(-6),其補(bǔ)碼是11111010。 該指令的機(jī)器碼是:10001000 01 001 001 11111010u指令系統(tǒng)設(shè)計(jì)了多種操作數(shù)的來源,尋找操作數(shù)的過程就是操作數(shù)的尋址方式。u操作數(shù)采取哪一種尋址方式,會(huì)影響機(jī)器運(yùn)行的速度和效率。如何尋址一個(gè)操作數(shù)對(duì)程序的設(shè)計(jì)來講很重要。 一、立即數(shù)尋址方式一、立即數(shù)尋址方式 二、寄存器尋址方
10、式二、寄存器尋址方式 三、存儲(chǔ)器尋址方式三、存儲(chǔ)器尋址方式 四、四、I/OI/O端口尋址方式端口尋址方式4.2 8086的尋址方式8086指令中操作數(shù)的類型(以操作數(shù)存放地點(diǎn) 分類)可以有以下幾種: 一、立即數(shù)尋址方式u指令中的操作數(shù)直接存放在機(jī)器代碼中,緊指令中的操作數(shù)直接存放在機(jī)器代碼中,緊跟在操作碼之后(操作數(shù)作為指令的一部分跟在操作碼之后(操作數(shù)作為指令的一部分存放在操作碼之后的主存單元中)。存放在操作碼之后的主存單元中)。u這種操作數(shù)被稱為立即數(shù)這種操作數(shù)被稱為立即數(shù)imm它可以是它可以是8位數(shù)值位數(shù)值i8(00HFFH),),也可以是也可以是16位數(shù)值位數(shù)值i16(0000HFFF
11、FH)。)。u立即數(shù)尋址方式常用來給寄存器賦值。立即數(shù)尋址方式常用來給寄存器賦值。MOV AL,05H;AL05HMOV AX,3064H;AX3064H.操作碼操作碼05H05H代代碼碼段段05H05H.ALAL指指令令一、立即數(shù)尋址方式二、寄存器尋址方式u操作數(shù)存放在操作數(shù)存放在CPU的內(nèi)部寄存器中,指令中的內(nèi)部寄存器中,指令中給出了寄存器名稱,寄存器可以是:給出了寄存器名稱,寄存器可以是:u8位寄存器位寄存器reg8:AH/AL/BH/BL/CH/CL/DH/DL;u16位寄存器位寄存器reg16:AX/BX/CX/DX/SI/DI/BP/SP;u4個(gè)段寄存器個(gè)段寄存器seg:CS/DS
12、/SS/ES。MOV AL, BL ;ALBLMOV SS,AX;SSAXSSSSAXAX3064H3064H3064H3064H1234H1234H3064H3064H二、寄存器尋址方式三、存儲(chǔ)器尋址方式u指令中給出操作數(shù)的主存地址信息(偏移地址,稱指令中給出操作數(shù)的主存地址信息(偏移地址,稱之為有效地址之為有效地址EA),而段地址在默認(rèn)的或用段超),而段地址在默認(rèn)的或用段超越前綴指定的段寄存器中。越前綴指定的段寄存器中。u8086設(shè)計(jì)了多種存儲(chǔ)器尋址方式設(shè)計(jì)了多種存儲(chǔ)器尋址方式 1、直接尋址、直接尋址 2、寄存器間接尋址、寄存器間接尋址 3、基址尋址和變址尋址、基址尋址和變址尋址 4、基址
13、加變址尋址、基址加變址尋址 5、相對(duì)基址變址尋址、相對(duì)基址變址尋址 6、固定尋址(隱含尋址)、固定尋址(隱含尋址)1 1、直接尋址方式、直接尋址方式u有效地址在指令中直接給出有效地址在指令中直接給出 有效地址有效地址16d或(或(10H) (DS)+EAu默認(rèn)的段地址在默認(rèn)的段地址在DS段寄存器,可使用段超越前綴段寄存器,可使用段超越前綴改變。此時(shí)應(yīng)在指令中改變。此時(shí)應(yīng)在指令中指定段超越(可以是指定段超越(可以是CS,SS,ES)。)。MOVAX,3100H ;AXDS:3100HMOVAX,ES:3100H;AXES:3100H 1 1、直接尋址方式、直接尋址方式2 2、寄存器間接尋址方式、
14、寄存器間接尋址方式u有效地址存放在基址寄存器有效地址存放在基址寄存器BX、BP或變址寄存或變址寄存器器SI、DI中,此時(shí)中,此時(shí)寄存器必須加方括號(hào)寄存器必須加方括號(hào)。u使用使用BX、SI、DI時(shí)默認(rèn)的段地址在時(shí)默認(rèn)的段地址在DS段寄存器,段寄存器,使用使用BP時(shí)默認(rèn)的段地址在時(shí)默認(rèn)的段地址在SS段寄存器,可使用段段寄存器,可使用段超越前綴超越前綴 有效地址有效地址=16d (DS)+(BX/SI/DI) 有效地址有效地址=16d (SS)+(BP)MOV AX, SI ;AXDS:SIMOV AX, BP;AXSS:BP MOV BX, AX;區(qū)別;區(qū)別 MOV BX,AX2 2、寄存器間接尋
15、址方式、寄存器間接尋址方式3 3、基址尋址、變址尋址、基址尋址、變址尋址u有效地址是寄存器內(nèi)容與有符號(hào)有效地址是寄存器內(nèi)容與有符號(hào)8位或位或16位位移量之和,寄存器可以是位位移量之和,寄存器可以是BX、BP或或SI、DI。 有效地址有效地址BX/BP/SI/DI8/16位位移量位位移量u段地址對(duì)應(yīng)段地址對(duì)應(yīng)BX/SI/DI寄存器默認(rèn)是寄存器默認(rèn)是DS,對(duì),對(duì)應(yīng)應(yīng)BP寄存器默認(rèn)是寄存器默認(rèn)是SS;可用段超越前綴;可用段超越前綴改變。改變。MOV AX,DI+06H ;AXDS:DI+06HMOV AX,BP+06H ;AXSS:BP+06H3 3、基址尋址、變址尋址、基址尋址、變址尋址4 4、基
16、址加變址尋址方式、基址加變址尋址方式u有效地址由基址寄存器(有效地址由基址寄存器(BX或或BP)的內(nèi)容)的內(nèi)容加上變址寄存器(加上變址寄存器(SI或或DI)的內(nèi)容構(gòu)成:)的內(nèi)容構(gòu)成:有效地址有效地址BX/BPSI/DIu段地址對(duì)應(yīng)段地址對(duì)應(yīng)BX基址寄存器默認(rèn)是基址寄存器默認(rèn)是DS,對(duì)應(yīng),對(duì)應(yīng)BP基址寄存器默認(rèn)是基址寄存器默認(rèn)是SS;可用段超越前綴;可用段超越前綴改變。改變。MOV AX,BX+SI;AXDS:BX+SIMOV AX,BP+DI;AXSS:BP+DIMOV AX,DS:BP+DI;AXDS:BP+DI4 4、基址變址尋址方式、基址變址尋址方式5 5、相對(duì)基址變址尋址方式、相對(duì)基址
17、變址尋址方式u有效地址是基址寄存器(有效地址是基址寄存器(BX/BP)、變址寄存器)、變址寄存器(SI/DI)與一個(gè))與一個(gè)8位或位或16位位移量之和:位位移量之和:有效地址有效地址EABX/BPSI/DI8/16位位移量位位移量u段地址對(duì)應(yīng)段地址對(duì)應(yīng)BX基址寄存器默認(rèn)是基址寄存器默認(rèn)是DS,對(duì)應(yīng),對(duì)應(yīng)BP基址基址寄存器默認(rèn)是寄存器默認(rèn)是SS;可用段超越前綴改變。;可用段超越前綴改變。MOV AX, BX+SI+06H ;AXDS:BX+SI+06H注意:(注意:(1)位移量可用符號(hào)表示)位移量可用符號(hào)表示 (2)同一尋址方式有多種表達(dá)方式)同一尋址方式有多種表達(dá)方式5 5、相對(duì)基址變址尋址方
18、式、相對(duì)基址變址尋址方式6 6、u8086的單操作數(shù)指令,器操作是規(guī)定在的單操作數(shù)指令,器操作是規(guī)定在CPU中某個(gè)中某個(gè)固定的寄存器中進(jìn)行,這個(gè)寄存器又被隱含在操作固定的寄存器中進(jìn)行,這個(gè)寄存器又被隱含在操作碼中,因此,這種尋址方式的指令大多為單字節(jié)指碼中,因此,這種尋址方式的指令大多為單字節(jié)指令。令。u例:加減法的十進(jìn)制調(diào)整指令例:加減法的十進(jìn)制調(diào)整指令DAA,其操作總是固,其操作總是固定在定在寄存器中進(jìn)行;寄存器中進(jìn)行;u例:乘除法指令雖然不是單字節(jié)指令,但被乘數(shù)、例:乘除法指令雖然不是單字節(jié)指令,但被乘數(shù)、被除數(shù)總是放在被除數(shù)總是放在或或中中四、I/O端口尋址方式u專用指令專用指令 IN
19、 IN 、OUTOUTu直接端口尋址直接端口尋址:端口地址直接由指令給出,:端口地址直接由指令給出,端口地址范圍端口地址范圍0 00FFH (256)0FFH (256)u例:例: IN AL, 27HIN AL, 27H OUT 65H, AH OUT 65H, AHu間接端口尋址間接端口尋址:端口地址由寄存器端口地址由寄存器DXDX給出,給出,端口地址范圍端口地址范圍0 00FFFFH 0FFFFH u例:例: IN AL, DXIN AL, DX OUT DX, AH OUT DX, AH位移量可用符號(hào)表示:位移量可用符號(hào)表示:u在寄存器相對(duì)尋址或相對(duì)基址變址尋址在寄存器相對(duì)尋址或相對(duì)基址變址尋址方式中,位移量可用符號(hào)表示:方式中,位移量可用符號(hào)表示:MOV AX,SI+COUNT ;COUNT事先定義有數(shù)值事先定
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 內(nèi)科護(hù)理學(xué)題庫(附參考答案)
- 旅游產(chǎn)品及服務(wù)提供合同
- 農(nóng)機(jī)租賃與維修服務(wù)合作合同書
- 財(cái)務(wù)管理咨詢服務(wù)的協(xié)議
- 江蘇移動(dòng)2025春季校園招聘筆試參考題庫附帶答案詳解
- 2025湖南長沙振望投資發(fā)展有限公司招聘8人筆試參考題庫附帶答案詳解
- 2025廣西玉柴鑄造有限公司實(shí)習(xí)生招聘100人筆試參考題庫附帶答案詳解
- 2025年河南空港數(shù)字城市開發(fā)建設(shè)有限公司第一批社會(huì)公開招聘20人筆試參考題庫附帶答案詳解
- 2025年威海光明電力服務(wù)有限公司招聘(約40人)筆試參考題庫附帶答案詳解
- 2025年3月湖南自由貿(mào)易試驗(yàn)區(qū)臨空產(chǎn)業(yè)投資集團(tuán)有限公司招聘6人筆試參考題庫附帶答案詳解
- 【MOOC】中國稅法:案例·原理·方法-暨南大學(xué) 中國大學(xué)慕課MOOC答案
- 手術(shù)室銳器傷預(yù)防專家共識(shí)
- 2024水電站輸水發(fā)電系統(tǒng)運(yùn)行安全評(píng)價(jià)導(dǎo)則
- 樣本相關(guān)系數(shù) 教學(xué)設(shè)計(jì)
- 砍伐樹木的勞務(wù)合同范本
- 2024年食品安全知識(shí)考試題庫
- 短視頻內(nèi)容課件
- 素養(yǎng)為本的教學(xué)評(píng)一體化教學(xué)設(shè)計(jì)核心理念
- GB/T 44577-2024商用電動(dòng)洗碗機(jī)性能測試方法
- 抖音主播合同范本
- 譯林版三年級(jí)上冊(cè)英語書單詞表
評(píng)論
0/150
提交評(píng)論