freepeople性欧美熟妇, 色戒完整版无删减158分钟hd, 无码精品国产vα在线观看DVD, 丰满少妇伦精品无码专区在线观看,艾栗栗与纹身男宾馆3p50分钟,国产AV片在线观看,黑人与美女高潮,18岁女RAPPERDISSSUBS,国产手机在机看影片

正文內(nèi)容

小甲魚(yú)匯編課件(編輯修改稿)

2025-05-04 23:07 本頁(yè)面
 

【文章內(nèi)容簡(jiǎn)介】 +偏移地址=物理地址段的概念誤認(rèn)識(shí):內(nèi)存被劃分成了一個(gè)一個(gè)的段,每一個(gè)段有一個(gè)段地址。其實(shí)是:內(nèi)存并沒(méi)有分段,段的劃分來(lái)自于CPU,由于8086CPU用“(段地址16)+偏移地址=物理地址”的方式給出內(nèi)存單元的物理地址,使得我們可以用分段的方式來(lái)管理內(nèi)存。分段的方式來(lái)管理內(nèi)存分段的方式來(lái)管理內(nèi)存以后,在編程時(shí)可以根據(jù)需要,將若干地址連續(xù)的內(nèi)存單元看作一個(gè)段,用段地址16定位段的起始地址(基礎(chǔ)地址),用偏移地址定位段中的內(nèi)存單元。 兩點(diǎn)需要注意段地址16 必然是 16的倍數(shù),所以一個(gè)段的起始地址也一定是16的倍數(shù);偏移地址為16位,16 位地址的尋址能力為 64K,所以一個(gè)段的長(zhǎng)度最大為64K。 內(nèi)存單元地址小結(jié)CPU訪問(wèn)內(nèi)存單元時(shí),必須向內(nèi)存提供內(nèi)存單元的物理地址。8086CPU在內(nèi)部用段地址和偏移地址移位相加的方法形成最終的物理地址。 思考兩個(gè)問(wèn)題1. 觀察下面的地址,讀者有什么發(fā)現(xiàn)??jī)?nèi)存單元結(jié)論:CPU可以用不同的段地址和偏移地址形成同一個(gè)物理地址。 2. 如果給定一個(gè)段地址,僅通過(guò)變化偏移地址來(lái)進(jìn)行尋址,最多可以定位多少內(nèi)存單元?結(jié)論:偏移地址16位,變化范圍為0~FFFFH,僅用偏移地址來(lái)尋址最多可尋64K個(gè)內(nèi)存單元。比如:給定段地址1000H,用偏移地址尋址,CPU的尋址范圍為:10000H~1FFFFH。 小結(jié)在8086PC機(jī)中,存儲(chǔ)單元的地址用兩個(gè)元素來(lái)描述。即段地址和偏移地址。 數(shù)據(jù)在21F60H內(nèi)存單元中?!睂?duì)于8086PC機(jī)的兩種描述:數(shù)據(jù)存在內(nèi)存2000:1F60單元中;數(shù)據(jù)存在內(nèi)存的2000段中的1F60H單元中。 可根據(jù)需要,將地址連續(xù)、起始地址為16的倍數(shù)的一組內(nèi)存單元定義為一個(gè)段。段寄存器段寄存器就是提供段地址的。8086CPU有4個(gè)段寄存器:CS、DS、SS、ES當(dāng)8086CPU要訪問(wèn)內(nèi)存時(shí),由這4個(gè)段寄存器提供內(nèi)存單元的段地址。 CS和IPCS和IP是8086CPU中最關(guān)鍵的寄存器,它們指示了CPU當(dāng)前要讀取指令的地址。CS為代碼段寄存器;IP為指令指針寄存器。 8086PC讀取和執(zhí)行指令相關(guān)部件8086PC讀取和執(zhí)行指令相關(guān)部件 8086PC讀取和執(zhí)行指令演示 8086PC工作過(guò)程的簡(jiǎn)要描述從CS:IP指向內(nèi)存單元讀取指令,讀取的指令進(jìn)入指令緩沖器;IP = IP + 所讀取指令的長(zhǎng)度,從而指向下一條指令;執(zhí)行指令。 轉(zhuǎn)到步驟 (1),重復(fù)這個(gè)過(guò)程。 在 8086CPU 加電啟動(dòng)或復(fù)位后( 即 CPU剛開(kāi)始工作時(shí))CS和IP被設(shè)置為CS=FFFFH,IP=0000H。即在8086PC機(jī)剛啟動(dòng)時(shí),CPU從內(nèi)存FFFF0H單元中讀取指令執(zhí)行。FFFF0H單元中的指令是8086PC機(jī)開(kāi)機(jī)后執(zhí)行的第一條指令。在任何時(shí)候,CPU將CS、IP中的內(nèi)容當(dāng)作指令的段地址和偏移地址,用它們合成指令的物理地址,到內(nèi)存中讀取指令碼,執(zhí)行。如果說(shuō),內(nèi)存中的一段信息曾被CPU執(zhí)行過(guò)的話,那么,它所在的內(nèi)存單元必然被CS:IP指向過(guò)。 修改CS、IP的指令 在CPU中,程序員能夠用指令讀寫(xiě)的部件只有寄存器,程序員可以通過(guò)改變寄存器中的內(nèi)容實(shí)現(xiàn)對(duì)CPU的控制。CPU從何處執(zhí)行指令是由CS、IP中的內(nèi)容決定的,程序員可以通過(guò)改變CS、IP中的內(nèi)容來(lái)控制CPU執(zhí)行目標(biāo)指令。 我們?nèi)绾胃淖僀S、IP的值呢?8086CPU必須提供相應(yīng)的指令 先回想我們?nèi)绾涡薷腁X中的值?mov 指令如:mov ax,123mov指令可以改變8086CPU大部分寄存器的值,被稱為傳送指令。 能夠通過(guò)mov 指令改變CS、IP的值嗎?mov指令不能用于設(shè)置CS、IP的值,8086CPU沒(méi)有提供這樣的功能。8086CPU為CS、IP提供了另外的指令來(lái)改變它們的值:轉(zhuǎn)移指令 同時(shí)修改CS、IP的內(nèi)容:jmp 段地址:偏移地址jmp 2AE3:3jmp 3:0B16功能:用指令中給出的段地址修改CS,偏移地址修改IP。 僅修改IP的內(nèi)容:jmp 某一合法寄存器jmp ax (類似于 mov IP,ax)jmp bx功能:用寄存器中的值修改IP。 問(wèn)題分析:CPU運(yùn)行的流程內(nèi)存中存放的機(jī)器碼和對(duì)應(yīng)匯編指令情況: (初始:CS=2000H,IP=0000H)CPU運(yùn)行的流程 問(wèn)題分析結(jié)果(1)mov ax,6622(2)jmp 1000:3(3)mov ax,0000(4)mov bx,ax(5)jmp bx(6)mov ax,0123H(7)轉(zhuǎn)到第(3)步執(zhí)行 代碼段 對(duì)于8086PC機(jī),在編程時(shí),可以根據(jù)需要,將一組內(nèi)存單元定義為一個(gè)段??梢詫㈤L(zhǎng)度為 N( N≤64KB )的一組代碼,存在一組地址連續(xù)、起始地址為 16的倍數(shù)的內(nèi)存單元中,這段內(nèi)存是用來(lái)存放代碼的,從而定義了一個(gè)代碼段。代碼段這段長(zhǎng)度為 10 字節(jié)的字節(jié)的指令,存在從123B0H~123B9H的一組內(nèi)存單元中,我們就可以認(rèn)為,123B0H~123B9H這段內(nèi)存單元是用來(lái)存放代碼的 ,是一個(gè)代碼段 ,它的段地址為123BH,長(zhǎng)度為10字節(jié)。 如何使得代碼段中的指令被執(zhí)行呢?將一段內(nèi)存當(dāng)作代碼段,僅僅是我們?cè)诰幊虝r(shí)的一種安排,CPU 并不會(huì)由于這種安排,就自動(dòng)地將我們定義得代碼段中的指令當(dāng)作指令來(lái)執(zhí)行。CPU 只認(rèn)被 CS:IP 指向的內(nèi)存單元中的內(nèi)容為指令。所以要將CS:IP指向所定義的代碼段中的第一條指令的首地址。如剛才的 CS = 123BH,IP = 0000H。 小結(jié)段地址在8086CPU的寄存器中存放。當(dāng)8086CPU要訪問(wèn)內(nèi)存時(shí),由段寄存器提供內(nèi)存單元的段地址。8086CPU有4個(gè)段寄存器,其中CS用來(lái)存放指令的段地址。CS存放指令的段地址,IP存放指令的偏移地址。8086機(jī)中,任意時(shí)刻,CPU將CS:IP指向的內(nèi)容當(dāng)作指令執(zhí)行。8086CPU的工作過(guò)程:從CS:IP指向內(nèi)存單元讀取指令,讀取的指令進(jìn)入指令緩沖器;IP指向下一條指令;執(zhí)行指令。(轉(zhuǎn)到步驟(1),重復(fù)這個(gè)過(guò)程。)8086CPU提供轉(zhuǎn)移指令修改CS、IP的內(nèi)容。 實(shí)驗(yàn)一查看CPU和內(nèi)存,用機(jī)器指令和匯編指令編程 DEBUG工具的使用R命令查看、改變CPU寄存器的內(nèi)容;D命令查看內(nèi)存中的內(nèi)容;E命令改寫(xiě)內(nèi)存中的內(nèi)容;U命令將內(nèi)存中的機(jī)器指令翻譯成匯編指令;T命令執(zhí)行一條機(jī)器指令;A命令以匯編指令的格式在內(nèi)存中寫(xiě)入一條機(jī)器指令。引言在第2章中,我們主要從 CPU 如何執(zhí)行指令的角度講解了8086CPU的邏輯結(jié)構(gòu)、形成物理地址的方法、相關(guān)的寄存器以及一些指令。這一章中,我們從訪問(wèn)內(nèi)存的角度繼續(xù)學(xué)習(xí)幾個(gè)寄存器。 內(nèi)存中字的存儲(chǔ) 在0地址處開(kāi)始存放20000(4E20H):內(nèi)存中字的存儲(chǔ)注意:0號(hào)單元是低地址單元,1號(hào)單元是高地址單元。 問(wèn)題:(1)0地址單元中存放的字節(jié)型數(shù)據(jù)是多少?(2)0地址字單元中存放的字型數(shù)據(jù)是多少?(3)2地址字單元中存放的字節(jié)型數(shù)據(jù)是多少?(4)2地址單元中存放的字型數(shù)據(jù)是多少?(5)1地址字單元中存放的字型數(shù)據(jù)是多少? 結(jié)論任何兩個(gè)地址連續(xù)的內(nèi)存單元,N號(hào)單元和 N+1號(hào)單元,可
點(diǎn)擊復(fù)制文檔內(nèi)容
公司管理相關(guān)推薦
文庫(kù)吧 www.dybbs8.com
備案圖片鄂ICP備17016276號(hào)-1