微機(jī)原理及應(yīng)用 課件 4.3物理地址的計(jì)算_第1頁
微機(jī)原理及應(yīng)用 課件 4.3物理地址的計(jì)算_第2頁
微機(jī)原理及應(yīng)用 課件 4.3物理地址的計(jì)算_第3頁
微機(jī)原理及應(yīng)用 課件 4.3物理地址的計(jì)算_第4頁
微機(jī)原理及應(yīng)用 課件 4.3物理地址的計(jì)算_第5頁
已閱讀5頁,還剩17頁未讀 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡介

微機(jī)原理及應(yīng)用第四章實(shí)模式存儲(chǔ)器尋址和總線第三講物理地址的計(jì)算這一節(jié)我們來學(xué)習(xí)一下物理地址的計(jì)算物理地址的計(jì)算在上一節(jié)我們已經(jīng)提到了20位物理地址的計(jì)算公式是這樣的,段基址乘上十六加上段內(nèi)偏移量,老師也強(qiáng)調(diào)了這個(gè)公式是十進(jìn)制的寫法。表達(dá)方式兩個(gè)16位的邏輯地址(段基址及偏移量)構(gòu)成一個(gè)20位的物理地址:20位物理地址段基址×16+段內(nèi)偏移量十進(jìn)制如果你的段基址和段內(nèi)偏移量都是二進(jìn)制的話,就是將段基址后面添四個(gè)零,再加上段內(nèi)偏移量。表達(dá)方式兩個(gè)16位的邏輯地址(段基址及偏移量)構(gòu)成一個(gè)20位的物理地址:20位物理地址段基址左移4位+段內(nèi)偏移量二進(jìn)制如果你的段基址和段內(nèi)偏移量都是十六進(jìn)制的話,就是將段基址的后面添一個(gè)零,然后再加上段內(nèi)偏移量表達(dá)方式兩個(gè)16位的邏輯地址(段基址及偏移量)構(gòu)成一個(gè)20位的物理地址:段基址左移1位+段內(nèi)偏移量十六進(jìn)制20位物理地址我們常用邏輯地址來表示地址用邏輯地址表示地址表達(dá)方式邏輯地址是段基址:偏移量這樣的一個(gè)寫法。那么我們計(jì)算20位物理地址的時(shí)候,其實(shí)就是用了邏輯地址的兩個(gè)量,按公式計(jì)算得到一個(gè)20位的物理地址,這個(gè)20位的物理地址在CPU中是在地址加法器這個(gè)模塊進(jìn)行運(yùn)算的,它的輸入是兩個(gè)16位的數(shù),地址加法器會(huì)對(duì)段基址執(zhí)行移位的處理,然后再跟偏移量相加,最后將得到的20位的物理地址送往地址總線,地址總線會(huì)依據(jù)我們給出的這個(gè)信息在內(nèi)存儲(chǔ)器中找到相應(yīng)的內(nèi)存單元段基址偏移量20位物理地址在CPU的地址加法器中運(yùn)算表達(dá)方式程序中所涉及的是兩個(gè)16位的邏輯地址(段基址及其偏移量)邏輯地址是段基址:偏移量這樣的一個(gè)寫法。那么我們計(jì)算20位物理地址的時(shí)候,其實(shí)就是用了邏輯地址的兩個(gè)量,按公式計(jì)算得到一個(gè)20位的物理地址,這個(gè)20位的物理地址在CPU中是在地址加法器這個(gè)模塊進(jìn)行運(yùn)算的,它的輸入是兩個(gè)16位的數(shù),地址加法器會(huì)對(duì)段基址執(zhí)行移位的處理,然后再跟偏移量相加,最后將得到的20位的物理地址送往地址總線,地址總線會(huì)依據(jù)我們給出的這個(gè)信息在內(nèi)存儲(chǔ)器中找到相應(yīng)的內(nèi)存單元段基址偏移量移位處理再和偏移量相加信息(代碼或數(shù)據(jù))實(shí)際存放在某個(gè)20位的物理地址所指的存儲(chǔ)器中它這個(gè)表中羅列了邏輯地址的來源,這里尤其是默認(rèn)的來源,大家是要記住的。比如指令代碼,它的邏輯地址默認(rèn)就是CSIP,這個(gè)是不會(huì)改變的,對(duì)于堆棧操作,它的邏輯地址默認(rèn)就是SSSP。對(duì)于數(shù)據(jù)操作,它的邏輯地址默認(rèn)就是DSEA。這里的EA表示有效地址,具體要看代碼中的尋址方式,也就是說代碼中會(huì)告訴我們這個(gè)EA到底是多少或者告訴我們?nèi)ツ睦镎疫@個(gè)EA。如果是字符串操作的話,要分源串和目的串,對(duì)于源串操作,它的邏輯地址默認(rèn)是DSSI。如果是目的串,它的邏輯地址默認(rèn)是ESDI,這些都是默認(rèn),不會(huì)在代碼中顯示的給出。下面我們通過幾個(gè)具體的實(shí)例來看一下物理地址的計(jì)算邏輯地址的來源操作類型段基址:偏移量取指令CS:IP堆棧操作SS:SP讀寫數(shù)據(jù)DS:EA

(默認(rèn)):(由各種尋址方式獲得)字符串操作(源地址)DS(默認(rèn)):SI字符串操作(目的地址)ES:DI有效地址假設(shè)我們要訪問的內(nèi)存單元在代碼段,這個(gè)內(nèi)存單元的邏輯地址是2500H冒號(hào)95F3H。我們知道,這里的2500H是CS的值,95F3H是IP的值。下面要計(jì)算這條指令的物理地址代碼段中的指令2500CS:IP2500H:95F3HH首先把2500h向左移動(dòng)一位在后面添一個(gè)0,然后跟95f3h相加,計(jì)算結(jié)果是2e5f3h。這就是它的物理地址代碼段中的指令2500+H0095F3H2E5F3H20位物理地址CS:IP2500H:95F3H保存在數(shù)據(jù)段,段內(nèi)偏移地址由SI給出假設(shè)我們要訪問的內(nèi)存單元在數(shù)據(jù)段,這個(gè)內(nèi)存單元的邏輯地址是DS冒號(hào)SI,并且已知DS為3000h,SI為2000h,那么你要知道這個(gè)數(shù)據(jù)它保存在數(shù)據(jù)段,它的段內(nèi)偏移地址由SI給出,我們來算它的物理地址,數(shù)據(jù)段中的指令3000DS:SI3000h:2000hH首先把3000h向左移動(dòng)一位,在后邊添一個(gè)0,再加上2000h得到32000h數(shù)據(jù)段中的指令3000+H002000H32000HDS:SI3000h:2000h再來看堆棧段中例子,堆棧段默認(rèn)的邏輯地址是ss冒號(hào)sp,假設(shè)已知SS的值是4d20h,SP的值是3aBFh我們來計(jì)算它的物理地址堆棧段中的指令4D20SS:SP4D20h:3ABFhH首先,將4d20h向左移動(dòng)一位得到4d200h,再加上3abfh得到50cbfh所以他的物理地址就是50cbfh堆棧段中的指令4D20+H003ABFH

50CBFH物理地址SS:SP4D20h:3ABFh最后再來看一個(gè)附加段的例子,假設(shè)附加段的數(shù)據(jù)的邏輯地址是ES冒號(hào)AX,也就是說這個(gè)數(shù)據(jù)的偏移地址存放在AX中,已知ES等于3A0ch,Ax等于A600h,我們來計(jì)算它的物理地址就是附加段中的指令3A0CES:AX3A0Ch:A600hH3A0cH向左移動(dòng)一位,后面添一個(gè)0,加上A600h得到446c0h附加段中的指令3A0C+H00A600H446C0HES:AX3A0Ch:A600h99FFFH好,講完了物理地址的計(jì)算,現(xiàn)在你能看懂這張圖了嗎?這張圖上一共有四個(gè)段,cs、ds、ss和es,在圖的右邊標(biāo)注了每個(gè)段的起始和結(jié)束的20位物理地址,CS的內(nèi)容是0400h,那么從04000h開始的64kB這么大的內(nèi)存空間是代碼段99FFFH你可以計(jì)算一下,在04000h上加FFFFH,得到13FFFH,就是代碼段的最后一個(gè)單元的物理地址同樣的對(duì)于數(shù)據(jù)段你也可以進(jìn)行類似的計(jì)算04000H+13FFFH0FFFFH99FF

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(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)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。

評(píng)論

0/150

提交評(píng)論