歡迎來(lái)到裝配圖網(wǎng)! | 幫助中心 裝配圖網(wǎng)zhuangpeitu.com!
裝配圖網(wǎng)
ImageVerifierCode 換一換
首頁(yè) 裝配圖網(wǎng) > 資源分類(lèi) > PPT文檔下載  

內(nèi)存管理機(jī)制與TC編譯模式.ppt

  • 資源ID:5310214       資源大?。?span id="jgiebyv" class="font-tahoma">814.81KB        全文頁(yè)數(shù):23頁(yè)
  • 資源格式: PPT        下載積分:9.9積分
快捷下載 游客一鍵下載
會(huì)員登錄下載
微信登錄下載
三方登錄下載: 微信開(kāi)放平臺(tái)登錄 支付寶登錄   QQ登錄   微博登錄  
二維碼
微信掃一掃登錄
下載資源需要9.9積分
郵箱/手機(jī):
溫馨提示:
用戶(hù)名和密碼都是您填寫(xiě)的郵箱或者手機(jī)號(hào),方便查詢(xún)和重復(fù)下載(系統(tǒng)自動(dòng)生成)
支付方式: 支付寶    微信支付   
驗(yàn)證碼:   換一換

 
賬號(hào):
密碼:
驗(yàn)證碼:   換一換
  忘記密碼?
    
友情提示
2、PDF文件下載后,可能會(huì)被瀏覽器默認(rèn)打開(kāi),此種情況可以點(diǎn)擊瀏覽器菜單,保存網(wǎng)頁(yè)到桌面,就可以正常下載了。
3、本站不支持迅雷下載,請(qǐng)使用電腦自帶的IE瀏覽器,或者360瀏覽器、谷歌瀏覽器下載即可。
4、本站資源下載后的文檔和圖紙-無(wú)水印,預(yù)覽文檔經(jīng)過(guò)壓縮,下載后原文更清晰。
5、試題試卷類(lèi)文檔,如果標(biāo)題沒(méi)有明確說(shuō)明有答案則都視為沒(méi)有答案,請(qǐng)知曉。

內(nèi)存管理機(jī)制與TC編譯模式.ppt

2020 1 25 1 第八章內(nèi)存管理機(jī)制與TC編譯模式 寄存器和偽變量?jī)?nèi)存的尋址模式TC的編譯模式 2020 1 25 2 第一節(jié)寄存器和偽變量 寄存器是CPU中的部件 用來(lái)存儲(chǔ)數(shù)據(jù) 地址和指令 8086 8088 80286的CPU只有14個(gè)寄存器 都是16位寄存器其中AX BX CX DX每個(gè)都可以分為兩個(gè)8位寄存器來(lái)使用 2020 1 25 3 80386之后的CPU對(duì)前十個(gè)寄存器做了擴(kuò)充 32位 同時(shí)又增加了兩個(gè)寄存器FS和GS 如圖所示 TC只支持14個(gè)寄存器且認(rèn)為它們都是16位的 2020 1 25 4 程序中 有時(shí)候需要操作這些寄存器 為了能在TC中使用它們 TC定義了一些偽變量以對(duì)應(yīng)相應(yīng)的寄存器 AX 對(duì)應(yīng)寄存器AX AH 對(duì)應(yīng)寄存器AH AL 對(duì)應(yīng)寄存器AL BX 對(duì)應(yīng)寄存器BX BH 對(duì)應(yīng)寄存器BH BL 對(duì)應(yīng)寄存器BL CX 對(duì)應(yīng)寄存器CX 例如 若要將字符 A 置于AL中 則可用 AL A 若要將整數(shù)100置于AX中 則可用 AX 100 2020 1 25 5 第二節(jié)內(nèi)存的尋址模式 實(shí)模式尋址保護(hù)模式尋址默認(rèn)的段寄存器近程指針與遠(yuǎn)程指針與地址操作有關(guān)的幾個(gè)函數(shù) 宏 2020 1 25 6 一 內(nèi)存的實(shí)模式 8086 8088 80286的CPU都是16位的 對(duì)應(yīng)的數(shù)據(jù)總線(xiàn) 地址總線(xiàn) 控制總線(xiàn)也 應(yīng) 是16位 但16位的地址總線(xiàn)只能尋址65536個(gè)內(nèi)存單元 64K 顯然太小了 當(dāng)時(shí)認(rèn)為尋址能力達(dá)到1M就夠用了 故將地址總線(xiàn)設(shè)定成了20位 20位的地址不便用16位的CPU處理 因此當(dāng)時(shí)采用了一種將內(nèi)存分段的方法 來(lái)解決這個(gè)問(wèn)題 2020 1 25 7 從內(nèi)存的任意一個(gè) 地址能被16整除 的單元開(kāi)始 將該單元之后的共64K內(nèi)存劃為一個(gè) 段 之所以要求段的起點(diǎn)必須是16的倍數(shù) 是為了把段的首地址存入段寄存器中 只能存16位 在一個(gè)段內(nèi) 任意單元的地址都可以用一個(gè)相對(duì)于段起點(diǎn)的地址來(lái)表示 稱(chēng)作偏移地址 偏移地址是一個(gè)16位的無(wú)符號(hào)整數(shù) 2020 1 25 8 如圖 段的起始地址是00030H 則段寄存器中存儲(chǔ)的是0003H 圖中00072單元的偏移地址是0042H段內(nèi)任意單元的地址都可以表示成 段地址 偏移地址 的形式 00072單元的地址可表示為 0003 0042段與段可以重疊 如圖所示另一段的基址00050H 此時(shí)00072H的地址又可表示為 0005 0022 2020 1 25 9 可見(jiàn) 同一個(gè)物理地址可有多種不同的表示法采用這種分段的方式使尋址能力達(dá)到了1M 但是這種尋址方式缺乏對(duì)內(nèi)存的有效保護(hù)為了區(qū)別后來(lái)的保護(hù)模式 將上述內(nèi)存分段尋址的方式稱(chēng)作實(shí)地址模式或內(nèi)存的實(shí)模式 2020 1 25 10 二 內(nèi)存的保護(hù)模式 為了保護(hù)內(nèi)存 需要記錄段的首地址 段長(zhǎng)度 段的訪(fǎng)問(wèn)權(quán)限等信息 這些信息合起來(lái)是一個(gè)64位的數(shù)據(jù)結(jié)構(gòu) 段描述符顯然 段寄存器存儲(chǔ)不下這個(gè)段描述符解決方法 在內(nèi)存中開(kāi)辟一段區(qū)域 按順序存儲(chǔ)所有段的段描述符 組成一個(gè)段描述符表段寄存器中只存儲(chǔ)段描述符的索引 段選擇子 2020 1 25 11 三 默認(rèn)的段寄存器 CS 總是存儲(chǔ)代碼段的基址DS 總是存儲(chǔ)數(shù)據(jù)段的基址ES 總是存儲(chǔ)附加段的基址SS 總是存儲(chǔ)堆棧段的基址 2020 1 25 12 四 近程指針和遠(yuǎn)程指針 近程指針是一個(gè)16位的指針 用來(lái)在段內(nèi)尋址 近程指針在定義時(shí) 使用near關(guān)鍵字說(shuō)明 可以省略 如 intnear p 或int p p用于在數(shù)據(jù)段內(nèi)尋址 p存儲(chǔ)的是數(shù)據(jù)段內(nèi)的偏移地址 而數(shù)據(jù)段的首址固定在DS中 2020 1 25 13 四 近程指針和遠(yuǎn)程指針 近程指針的最大值只能到0 xffff 即65535 超過(guò)將出錯(cuò) 如 charnear p p charnear 0 xffff p printf p n p p是用十六進(jìn)制輸出地址其運(yùn)行結(jié)果是 0000因?yàn)?5535加1將產(chǎn)生進(jìn)位 丟棄 使p的16位都是0 這種現(xiàn)象稱(chēng)作折回 2020 1 25 14 四 近程指針和遠(yuǎn)程指針 遠(yuǎn)程指針是一個(gè)32位的指針 用來(lái)尋址不同的段 其中高位的兩個(gè)字節(jié)存儲(chǔ)段值 低位的兩個(gè)字節(jié)存儲(chǔ)偏移地址 由于遠(yuǎn)程指針對(duì)應(yīng)的數(shù)據(jù)可以在不同的段 故數(shù)據(jù)段寄存器中的段基址可能會(huì)發(fā)生改變 遠(yuǎn)程指針定義時(shí)用far說(shuō)明 如 charfar p p charfar 0 x2A000002 對(duì)遠(yuǎn)程指針加減運(yùn)算 只對(duì)偏移地址進(jìn)行 段地址不參與運(yùn)算 故也會(huì)發(fā)生折回現(xiàn)象 2020 1 25 15 四 近程指針和遠(yuǎn)程指針 對(duì)于同一個(gè)物理地址 用 段地址 偏移地址 的方式表示時(shí) 可以有若干種形式 如物理地址1234H可以表示為 0000 1234 0001 1224 0002 1214 雖然這些地址表示的是同一物理地址 但如果對(duì)它們進(jìn)行比較 得出的結(jié)果是不相等 設(shè)遠(yuǎn)程指針p1 p2存儲(chǔ)的是同一物理地址 但段地址和偏移地址不同 則表達(dá)式p1 p2的值為0 因?yàn)橛?jì)算機(jī)是直接比較兩個(gè)指針變量中的32位二進(jìn)制數(shù) 而不是轉(zhuǎn)化為物理地址后再比較 2020 1 25 16 五 與地址操作有關(guān)的幾個(gè)函數(shù) TC在dos h中定義了幾個(gè)函數(shù) 實(shí)際是宏 用來(lái)處理段地址或偏移地址FP SEGFP OFFMK FPpeekb和peekpokeb和poke 2020 1 25 17 五 與地址操作有關(guān)的幾個(gè)函數(shù) 1 FP SEG功能 獲取遠(yuǎn)地址中的段值原型 unsignedFP SEG voidfar farptr 例8 1 include includeintmain charfar filename fpseg c printf 04x n FP SEG filename 0表示用0補(bǔ)足4位return0 2020 1 25 18 五 與地址操作有關(guān)的幾個(gè)函數(shù) 2 FP OFF功能 獲取遠(yuǎn)地址中的偏移地址原型 unsignedFP OFF voidfar farptr 例8 2 include includeintmain charfar str fpoff c printf 04x n FP OFF str return0 2020 1 25 19 五 與地址操作有關(guān)的幾個(gè)函數(shù) 3 MK FP功能 由段值和偏移地址組成一個(gè)遠(yuǎn)程指針 原型 voidfar MK FP unsignedseg unsignedoff 例8 3 主要程序段 charfar p unsignedseg off p MK FP 0 xb000 0 x20 seg FP SEG p off FP OFF p printf farp Fp seg 04X off 04X n p seg off 2020 1 25 20 五 與地址操作有關(guān)的幾個(gè)函數(shù) 4 peekb和peek功能 從給定的地址讀取一個(gè)字節(jié)或一個(gè)字原型 charpeekb unsignedseg unsignedoff intpeek unsignedseg unsignedoff 例如 charc s hello c peekb DS s printf c n c 輸出結(jié)果是 h 2020 1 25 21 五 與地址操作有關(guān)的幾個(gè)函數(shù) 5 pokeb和poke功能 向指定的位置寫(xiě)一個(gè)字節(jié)或一個(gè)字原型 voidpokeb unsignedseg unsignedoff charvalue voidpoke unsignedseg unsignedoff intvalue 例如 chars 10 inta 0 x0041 poke DS s a printf s n s 輸出結(jié)果是 A 2020 1 25 22 第三節(jié)TC的編譯模式 微模式 Tiny 小模式 Small 中模式 Medium 緊湊模式 Compact 大模式 Large 巨模式 Huge 2020 1 25 23 問(wèn)題 若要使寄存器AX存儲(chǔ)3 C中應(yīng)如何表達(dá) 實(shí)地址模式如何尋址 常用的段寄存器有哪些 分別存儲(chǔ)什么 什么是近程指針 遠(yuǎn)程指針 如何定義 使用時(shí)注意什么 如何從一個(gè)遠(yuǎn)程指針?lè)蛛x出段地址和偏移地址 如何由段地址和偏移地址得到一個(gè)遠(yuǎn)程指針 TC的編譯模式有哪些 適用于什么情況

注意事項(xiàng)

本文(內(nèi)存管理機(jī)制與TC編譯模式.ppt)為本站會(huì)員(xt****7)主動(dòng)上傳,裝配圖網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶(hù)上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)上載內(nèi)容本身不做任何修改或編輯。 若此文所含內(nèi)容侵犯了您的版權(quán)或隱私,請(qǐng)立即通知裝配圖網(wǎng)(點(diǎn)擊聯(lián)系客服),我們立即給予刪除!

溫馨提示:如果因?yàn)榫W(wǎng)速或其他原因下載失敗請(qǐng)重新下載,重復(fù)下載不扣分。




關(guān)于我們 - 網(wǎng)站聲明 - 網(wǎng)站地圖 - 資源地圖 - 友情鏈接 - 網(wǎng)站客服 - 聯(lián)系我們

copyright@ 2023-2025  zhuangpeitu.com 裝配圖網(wǎng)版權(quán)所有   聯(lián)系電話(huà):18123376007

備案號(hào):ICP2024067431號(hào)-1 川公網(wǎng)安備51140202000466號(hào)


本站為文檔C2C交易模式,即用戶(hù)上傳的文檔直接被用戶(hù)下載,本站只是中間服務(wù)平臺(tái),本站所有文檔下載所得的收益歸上傳人(含作者)所有。裝配圖網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶(hù)上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)上載內(nèi)容本身不做任何修改或編輯。若文檔所含內(nèi)容侵犯了您的版權(quán)或隱私,請(qǐng)立即通知裝配圖網(wǎng),我們立即給予刪除!