




版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領(lǐng)
文檔簡介
第一章第二章存儲單元及其存儲內(nèi)容每個存儲單元都有一個編號——存儲器地址每個存儲單元存放一個字節(jié)的內(nèi)容例如:00002H單元存放有一個數(shù)據(jù)34H,可以表示成:[00002H]=34H小端方式
多字節(jié)數(shù)據(jù)在存儲器中占據(jù)多個連續(xù)的存儲單元:存放時,低字節(jié)存于低地址,高字節(jié)存于高地址;多字節(jié)數(shù)據(jù)占據(jù)的地址空間用它的低地址來表示。例如:“字”單元:[00002H]=1234H
“雙字”單元:[00002H]=78561234H80x86處理器的“低對低、高對高”的存儲形式,被稱為“小端方式”
。數(shù)據(jù)的地址對齊
同一個存儲器地址可以表示為:字節(jié)單元地址、字單元地址、雙字單元地址等等(視指令的具體情況)。
對準字:字的地址是偶數(shù)地址,即從偶數(shù)地址開始存放;非對準字:字的地址是奇數(shù)地址,即從奇數(shù)地址開始存放;數(shù)據(jù)的地址對齊
將字單元安排在偶地址(xx……….xx0B),將雙字單元安排在模4地址(xx………xx00B)的做法,被稱為“地址對齊(Align)”。對于地址不對齊的數(shù)據(jù),處理器訪問時,需要付出額外的訪問時間。要取得較高的存取速度,應(yīng)該將數(shù)據(jù)的地址對齊。習(xí)題8.若已知當(dāng)前(DS)=7F06H,在偏移地址為0075H開始的存儲器中連續(xù)存放6個字節(jié)的數(shù)據(jù),分別為11H,22H,33H,44H,55H和66H。請指出這些數(shù)據(jù)在存儲器中的物理地址。如果要從存儲器中讀出這些數(shù)據(jù),至少需要訪問幾次存儲器?各讀出哪些數(shù)據(jù)?
1.
數(shù)據(jù)的格式
計算機中信息的單位有:位(bit)、字節(jié)(byte)、字(word)、雙字(doubleword)、KB、MB、GB等在存儲器中,信息的存儲單元是:字節(jié)
80x86微處理器對多字節(jié)數(shù)據(jù)采用:小端方式(littleendian)存儲的數(shù)據(jù)如果對齊邊界,則存取速度較快。存儲單元及其存儲內(nèi)容每個存儲單元都有一個編號——存儲器地址每個存儲單元存放一個字節(jié)的內(nèi)容例如:00002H單元存放有一個數(shù)據(jù)34H,可以表示成:[00002H]=34H小端方式
多字節(jié)數(shù)據(jù)在存儲器中占據(jù)多個連續(xù)的存儲單元:存放時,低字節(jié)存于低地址,高字節(jié)存于高地址;多字節(jié)數(shù)據(jù)占據(jù)的地址空間用它的低地址來表示。例如:“字”單元:[00002H]=1234H
“雙字”單元:[00002H]=78561234H80x86處理器的“低對低、高對高”的存儲形式,被稱為“小端方式”
。數(shù)據(jù)的地址對齊
同一個存儲器地址可以表示為:字節(jié)單元地址、字單元地址、雙字單元地址等等(視指令的具體情況)。
對準字:字的地址是偶數(shù)地址,即從偶數(shù)地址開始存放;非對準字:字的地址是奇數(shù)地址,即從奇數(shù)地址開始存放;數(shù)據(jù)的地址對齊
將字單元安排在偶地址(xx……….xx0B),將雙字單元安排在模4地址(xx………xx00B)的做法,被稱為“地址對齊(Align)”。對于地址不對齊的數(shù)據(jù),處理器訪問時,需要付出額外的訪問時間。要取得較高的存取速度,應(yīng)該將數(shù)據(jù)的地址對齊。第三章二.尋址方式的分類1.立即數(shù)尋址2.寄存器尋址3.存儲器尋址(存儲器直接尋址,寄存器間接尋址,寄存器相對尋址,基址加變址尋址)4.I/O端口尋址指令的操作數(shù)包含在指令碼中.例:MOVAX,1234H其指令碼為B834121、立即尋址1、立即數(shù)不但可以送到寄存器中,也可以送到一個存儲單元(8位)中或兩個連續(xù)的存儲單元(16位)中去,例MOV[1200H],1234H
2、立即數(shù)只能做源操作數(shù),不能做目的操作數(shù);3、以A~F打頭的數(shù)字出現(xiàn)在指令中時,前面一定要加一個數(shù)字0,以免與其它符號相混淆,例如MOVAX,0FF00H注意問題2.寄存器尋址指令的操作數(shù)在CPU的內(nèi)部寄存器中,寄存器名在指令中指出。INCCX;指令碼41INCDX;指令碼42MOVAX,1234HMOV[1234H],BX;指令碼891E34121、對于16位操作數(shù),寄存器可以是AX、BX、CX、DX、SI、DI、SP和BP等,對于8位操作數(shù),寄存器則用AH、AL、BH、BL、CH、CL、DH和DL。2、源操作數(shù)的長度必須與目的操作數(shù)一致,例如
MOVCL,AH注意問題3、存儲器尋址
在存儲器尋址方式中,要尋址的數(shù)據(jù)位于存儲器(內(nèi)存)中,存儲單元的有效地址由指令或寄存器指出,而寄存器可以為立即數(shù)或BX、BP、SI、DI之一,即有效地址等于其中一個寄存器的值:存儲器尋址可分為以下四種:
指令直接給出存儲器操作數(shù)的有效地址.例如:MOVAX,[4000H];A10040
(1)存儲器直接尋址
以BX寄存器進行間接尋址時,默認的段寄存器為DS,因為BX稱為基址寄存器,也稱為數(shù)據(jù)段基址尋址。例如:MOVAX,[BX];
設(shè)DS=5000H,BX=3000H,則本指令在執(zhí)行時,將53000H和53001H兩單元的內(nèi)容送入AX中。(2)以BX寄存器進行間接尋址-數(shù)據(jù)段基址尋址
以BP寄存器進行間接尋址時,默認的段寄存器為SS,因為BP稱為基址寄存器,也稱為堆棧段基址尋址。例如:MOVAX,[BP];
設(shè)SS=4000H,BP=2000H,則本指令在執(zhí)行時,將42000H和42001H兩單元的內(nèi)容送入AX中。(3)以BP寄存器進行間接尋址-堆棧段基址尋址
1、如果要對代碼段、堆棧段或擴展段寄存器所指的區(qū)域進行尋址,則必須在指令前用前綴指出段寄存器名,這就是段超越,例如:
ES:MOVAX,[BX]或MOVAX,ES:[BX]
設(shè)ES=3000H,BX=3000H,則本指令在執(zhí)行時,將33000H和33001H兩單元的內(nèi)容送入AX中。注意問題
2、在基址尋址中,操作數(shù)位于位于內(nèi)存中,操作數(shù)的有效地址由基址寄存器BX或BP與一個位移量相加給出。舉例:MOVAL,[BX+1234H];等價于:MOVAL,1234H[BX]
假定BX=1000H,DS=1000H則:結(jié)果,AL=78H1000H:3、基址尋址的格式:[BX+位移量][BP+位移量]位移量的范圍:補碼表示的8位或16位(-128~127)或(-32768~32767)也可以是變量的形式MOVAL,data[BX]MOVAL,[BX+data]但MOVAL,[BX]data(錯誤)
SI和DI分別稱為源地址寄存器和目的變址寄存器。變址尋址中,段寄存器默認是DS,通常用于對數(shù)組元素進行操作,操作過程中,指令會自動修改變址寄存器中的地址,以指向下一個操作數(shù)。例如:
MOVBX,[SI]MOVBX,ES:DATA[SI]
(3)以SI、DI寄存器進行間接尋址-變址尋址
8086指令系統(tǒng)允許基址寄存器和變址寄存器組合起來構(gòu)成基址加變址的尋址。用此方法尋址時,操作數(shù)的有效地址是1個基址寄存器(BX或BP)的內(nèi)容加上1個變址寄存器(SI或DI)的內(nèi)容,例如:
MOVAX,[BX+SI];
MOV[BP+DI],AX;
設(shè)SS=5000H,DS=4000H,SI=300H,DI=200H,BP=600H,BX=500H。(4)以BX、BP和SI、DI寄存器組合起來
進行間接尋址-變址加變址尋址1、在基址加變址尋址中,操作數(shù)位于內(nèi)存中,操作數(shù)的有效地址由基址寄存器BX或BP與變址寄存器SI或DI及一個位移量相加相加給出.舉例:MOVAL,[BX+SI+1234H];假定:BX=1000H,SI=2000H,DS=1000H則:AL=78H1000H:注意問題2、基變址尋址的格式:[BX+SI+位移量][BX+DI+位移量][BP+SI+位移量][BP+DI+位移量][BX+SI][BX+DI][BP+SI][BP+DI]錯誤的寫法:[BX+BP][SI+DI]位移量的范圍:補碼表示的8位或16位(-128~127)或(-32768~32767)3、位移量也可以是變量的形式下列指令正確:MOVAX,DATA[SI][BX]MOVAX,[BX+DATA][SI]MOVAX,[BX+SI+DATA]下列指令非法:MOVAX,[BX]DATA[SI]MOVAX,[BX+SI]DATAMOVAX,DATA[SI][DI]MOVAX,[BX][BP]DATA4.I/O端口尋址
當(dāng)操作數(shù)在外設(shè)時,使用I/O指令。為了與內(nèi)存地址區(qū)別,外設(shè)的地址稱為端口地址,對外設(shè)的尋址方式訪問I/O端口主要有兩種:當(dāng)外設(shè)地址用8位尋址時,使用直接端口尋址方式,即在I/O指令中直接給出被選定的外設(shè)地址。例如:
INAL,25HOUT0FFH,AX4.I/O端口尋址
當(dāng)外設(shè)地址用16位尋址或超過8位尋址時,采用寄存器間接尋址方式,用寄存器DX作為間接尋址寄存器。例如:
MOVDX,3E4HOUTDX,AX
假定DS=1000H,SS=2000H,BP=0100H,BX=0100H,如下指令在執(zhí)行完后的結(jié)果AX的內(nèi)容分別是什么?①MOVAX,[BX+100H]②MOVAX,[BP+100H]
例題
1.分別指出下列指令中的源操作數(shù)和目的操作數(shù)的尋址方式:
(1)MOVAX,[SI]
(2)MOVDI,100
(3)MOV[BX],AL(4)MOV[BX][DI],CX(5)ADDDX,106H[SI](6)ANDDS:[BP],AX(7)ORAX,DX
練習(xí)題
2.設(shè)寄存器(DS)=2000H,(SS)=1500H,(ES)=3200H,(SI)=0A0H,(BX)=100H,(BP)=10H,數(shù)據(jù)段中變量VAL的偏移地址值為50H。試指出下列各指令中源操作數(shù)的尋址方式是什么?對于存儲器操作數(shù),其物理地址是多少
:
(1)MOVAX,[100H]
(2)MOVCX,ES:[BX]
(3)MOVDX,[BX][SI](4)MOVAX,VAL[SI](5)MOVBX,1234[BX]205D2H(6)MOVAX,[BP]
練習(xí)題
3.已知:DS=1000H,BX=0200H,SI=02H,內(nèi)存10200H~10205H單元的內(nèi)容分別為10H,2AH,3CH,46H,59H和6BH。下列每條指令執(zhí)行完后AX寄存器的內(nèi)容各是什么?
(1)MOVAX,0200H
(2)MOVAX,[200H]
(3)MOVAX,BX(4)MOVAX,3[BX](5)MOVAX,[BX+SI]205D2H(6)MOVAX,2[BX+SI]
練習(xí)題
1.設(shè)堆棧指針SP的初值為2400H,(AX)=4000H,(BX)=3600H。試問:
(1)執(zhí)行指令“PUSHAX”后,(SP)=?
(2)再執(zhí)行指令“PUSHBX”
(3)再執(zhí)行指令“POPAX”后,(SP)=?(AX)=?(BX)=?
試畫出堆棧變化示意圖
push,pop練習(xí)題當(dāng)無符號數(shù)運算產(chǎn)生溢出時,CF為1(編程關(guān)注);當(dāng)有符號數(shù)運算產(chǎn)生溢出時,OF為1(編程關(guān)注)
;如果運算結(jié)果為0,則ZF=1;如果運算結(jié)果的最高位為1,則SF=1;如果運算結(jié)果的低8位有偶數(shù)個1,則PF=1;如果第3位向第4位借位或者進位,AF=1。運算后標(biāo)志位的說明邏輯運算指令的妙用1.AND指令可用于對一個數(shù)據(jù)的指定位清零(屏蔽)。例如,ANDAL,0FH2.OR指令可用于對一個數(shù)據(jù)的指定位置1。例如,ORAL,02H3.XOR指令通常用在一些程序的開頭使某個寄存器清零,以配合初始化工作的完成。例如,XORAX,AX4.NOT指令常用來將某個數(shù)據(jù)取反碼,再加1得到補碼5.TEST指令一般用來檢測某個指定位是1還是0,而這個指定位往往對應(yīng)一個物理量。例如,TESTAL,01H
1.已知(DS)=091DH,(SS)=1E4AH,
(AX)=1234H,
(BX)=0024H,
(CX)=5678H,
(BP)=0024H,
(SI)=0012H,
(DI)=0032H,
[09226]=00F6H,
[09228]=1E40H,
[1EAF6]=091DH,
試求單獨執(zhí)行下列指令后的結(jié)果?MOVCL,20H[BX][SI];(CL)=?MOV[BP][DI],CX;[1EAF6]=?習(xí)題2.判斷下列指令有無錯誤,若有,則改正PUSHCLADCAX,0ABHOUT3EBH,AXMULAL,CLDIVAX,BXINC[SI]習(xí)題(7)INBL,05H(8)
MOV[BX+SI+3],AX(9)
MOV[BX],[1200H](10)
MOVDS,0200H(11)
MOVIP,0FFH(12)
MOVAL,ES:[BP]習(xí)題
3.若CPU中各寄存器及RAM參數(shù)如圖所示,試求獨立執(zhí)行下列指令后,CPU及RAM相應(yīng)寄存器及存儲單元的內(nèi)容是多少?MOVDX,2[BX];DX=?BX=?
POPCX;SP=?MOVCX,BX;CX=?BX=?TESTAL,01;AL=?ZF=?MOVAL,[SI];AL=習(xí)題(6)ADCAL,[SI];AL=?CF=?
(7)
INCSI;SI=?(8)
DECDI;DI=?(9)
MOV[DI],AL;[DI]=?(10)
XCHGAX,DX;AX=?DX=?
(11)
XORAH,BL;AH=?BL=?(12)
JMPDX;IP=習(xí)題4.設(shè)(DS)=2000H,(BX)=1256H,
(SI)=528FH,
偏移量TABLE=20A1H,
[232F7H]=3280H,
[264E5H]=2450H,
執(zhí)行下列指令JMPBX;IP=?JMPTABLE[BX];IP=?
JMP[BX][SI];IP=?習(xí)題存儲器原理與接口第五章習(xí)題1.按存儲器在的特點和在計算機中的作用,存儲器可分成哪幾類?2.內(nèi)存儲器性能的主要指標(biāo)是哪幾個?3.某SRAM的一單元中存放有一個數(shù)據(jù)如(5AH),CPU將它取走后,該單元的內(nèi)容是什么?4.已知某微機控制系統(tǒng)中RAM容量為4K×8位,首地址為4800H,求其最后一個單元的地址。習(xí)題5.某微機系統(tǒng)中內(nèi)存的首地址為3000H,末地址為63FFH,求其內(nèi)存容量?6.某微機系統(tǒng)
溫馨提示
- 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. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 初二歷史教學(xué)工作計劃(9篇)
- 軟件收入合同范本
- 掛籃施工合同范本
- 科技助力下的綠色建筑施工管理新進展
- 病原體對狼蛛性選擇的影響
- 2025年高純BN擴散沅制品合作協(xié)議書
- 收廢品合同范本
- 基于深度學(xué)習(xí)的桁架結(jié)構(gòu)損傷識別研究與應(yīng)用
- 店鋪臨時租賃合同范本
- 高中數(shù)學(xué)人教A版新舊教材比較研究
- 課件-DeepSeek從入門到精通
- 17J008擋土墻(重力式、衡重式、懸臂式)圖示圖集
- 自動化生產(chǎn)線運行與維護完整版課件(全)
- 二十四節(jié)氣文化融入幼兒園食育的有效途徑
- 統(tǒng)計過程控制SPC培訓(xùn)資料
- 食品經(jīng)營操作流程圖
- 小學(xué)生必背古詩詞80首硬筆書法字帖
- 中風(fēng)(腦梗死恢復(fù)期)中醫(yī)護理方案(課堂PPT)
- X52K銑床參數(shù)
- 雙鋼板組合剪力墻工法
- tplink-mr11u刷openwrt教程
評論
0/150
提交評論