版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
第2章寄存器與存儲(chǔ)器【本章提要】本章將著重講解Intel系列CPU內(nèi)部寄存器的組織結(jié)構(gòu)、命名、功能及其常見的用途,還要介紹存儲(chǔ)器的分段管理模式、存儲(chǔ)單元地址的表示法以及其物理地址的形成方式。【學(xué)習(xí)目標(biāo)】熟練掌握CPU內(nèi)部寄存器的組織結(jié)構(gòu)熟練掌握標(biāo)志寄存器各定義位的功能掌握存儲(chǔ)器的分段管理方案19十一月20232.1寄存器組織寄存器是CPU內(nèi)部重要的數(shù)據(jù)存儲(chǔ)資源,是匯編程序員能直接使用的硬件資源之一。Intel系列微處理器從早期的16位8086開始,到Pentium系列,以至于現(xiàn)在的CORE(酷睿)系列,雖然CPU內(nèi)部結(jié)構(gòu)和功能變化很大,但其寄存器的組織情況卻是有規(guī)律的。寄存器類型IA-32寄存器IA-32E寄存器字節(jié)寄存器(8位)AH,BH,CH,DH,AL,BL,CL,DLAL,BL,CL,DL,DIL,SIL,BPL,SPL,R8L-R15L字寄存器(16位)AX,BX,CX,DX,DI,SI,BP,SPAX,BX,CX,DX,DI,SI,BP,SP,R8W-R15W雙字寄存器(32位)EAX,EBX,ECX,EDX,EDI,ESI,EBP,ESPEAX,EBX,ECX,EDX,EDI,ESI,EBP,ESP,R8D-R15D四字寄存器(64位)無RAX,RBX,RCX,RDX,RDI,RSI,RBP,RSP,R8-R1519十一月202319十一月202319十一月2023Debug簡(jiǎn)介在受控環(huán)境中測(cè)試程序;裝入,顯示或修改任何文件;執(zhí)行DOS程序;完成磁盤實(shí)際讀/寫操作;建立或匯編匯編語言程序。19十一月2023啟動(dòng)DEBUG段寄存器CS、DS、ES和SS置為DEBUG程序后的第一個(gè)段。指令指針寄存器IP置為100H(程序段前綴PSP后的第一個(gè)語句)。堆棧指針SP置為段末或COMMAND.COM暫駐部分的結(jié)束地址(其中較小的那個(gè)地址)。其余通用寄存器均置為0,標(biāo)志寄存器置為下述狀態(tài)。
NV
UP
EI
PL
NE
NA
PO
NC
如果DEBUG命令行含有文件名,段寄存器DS和ES指向PSP。寄存器BX和CX含有程序長度。19十一月2023各標(biāo)志位在計(jì)算機(jī)上的表示19十一月2023Debug命令:1.顯示和修改某個(gè)寄存器內(nèi)容R命令
-R
registername如RaxRF等2.匯編命令A(yù)(Assemble)
-A[address]3.逐條指令跟蹤
-T[=address]
從指定地址起執(zhí)行一條指令后停下來,顯示所有寄存器內(nèi)空及標(biāo)志位的值。如未指定則從當(dāng)前的CS:IP開始執(zhí)行。
4.退出命令Q(quit)19十一月20232.1.2標(biāo)志寄存器Intel的16位CPU中設(shè)置了16位的標(biāo)志寄存器FLAGS,其中定義了9個(gè)標(biāo)志位,主要用來反映CPU的狀態(tài)和運(yùn)算結(jié)果的特征。后來在32位和64位環(huán)境下,F(xiàn)LAGS又分別被擴(kuò)展到了32位和64位(即EFLAGS和RFLAGS),同時(shí)又增加一些新的標(biāo)志位定義。1514131211109876543210OFDFIFTFSFZFAFPFCF圖2.2FLAGS定義示意圖19十一月20231、進(jìn)位標(biāo)志CF(CarryFlag)如果運(yùn)算結(jié)果的最高位產(chǎn)生了一個(gè)進(jìn)位或借位,其值為1,否則其值為0。2、奇偶標(biāo)志PF(ParityFlag)運(yùn)算結(jié)果中最低8位中“1”的個(gè)數(shù)為偶數(shù),則PF的值為1,否則其值為0。3、輔助進(jìn)位標(biāo)志AF(AuxiliaryCarryFlag)在字操作時(shí),發(fā)生低字節(jié)向高字節(jié)進(jìn)位或借位,或者在字節(jié)操作時(shí),發(fā)生低4位向高4位進(jìn)位或借位,則AF的值被置為1,否則其值為0。4、零標(biāo)志ZF(ZeroFlag)如果運(yùn)算結(jié)果為0,則其值為1,否則其值為0。5、符號(hào)標(biāo)志SF(SignFlag)符號(hào)標(biāo)志SF用來反映運(yùn)算結(jié)果的符號(hào)位,它與運(yùn)算結(jié)果的最高位相同。6、溢出標(biāo)志OF(OverflowFlag)如果運(yùn)算結(jié)果超過當(dāng)前運(yùn)算位數(shù)所能表示的范圍,則稱為溢出,OF的值被置為1,否則,OF的值被清為0。1514131211109876543210OFDFIFTFSFZFAFPFCF圖2.2FLAGS定義示意圖19十一月20237、追蹤標(biāo)志TF(TrapFlag)當(dāng)追蹤標(biāo)志TF被置為1時(shí),CPU進(jìn)入單步執(zhí)行方式,即每執(zhí)行一條指令,產(chǎn)生一個(gè)單步中斷請(qǐng)求。8、中斷允許標(biāo)志IF(Interrupt-enableFlag)中斷允許標(biāo)志IF是用來決定CPU是否響應(yīng)CPU外部的可屏蔽中斷發(fā)出的中斷請(qǐng)求。(1)當(dāng)IF=1時(shí),CPU可以響應(yīng)CPU外部的可屏蔽中斷發(fā)出的中斷請(qǐng)求;(2)當(dāng)IF=0時(shí),CPU不響應(yīng)CPU外部的可屏蔽中斷發(fā)出的中斷請(qǐng)求。9、方向標(biāo)志DF(DirectionFlag)方向標(biāo)志DF用來決定在串操作指令執(zhí)行時(shí)有關(guān)指針寄存器發(fā)生調(diào)整的方向。1514131211109876543210OFDFIFTFSFZFAFPFCF圖2.2FLAGS定義示意圖19十一月20232.2存儲(chǔ)器的管理模式Intel的80X86系列CPU基本上采用內(nèi)存分段的管理模式。它把內(nèi)存和程序分成若干個(gè)段,每個(gè)段的起點(diǎn)用一個(gè)段寄存器來保存。2.2.1實(shí)地址方式內(nèi)存管理目前的Intel系列CPU都能工作在實(shí)地址方式或保護(hù)地址方式下。實(shí)地址方式下只能訪問1MB的內(nèi)存空間,只能單任務(wù)運(yùn)行,8086只有這一種工作方式,80286以后的系列CPU的可以運(yùn)行在保護(hù)地址方式。如果工作在實(shí)地址模式,則任何高檔處理器只相當(dāng)于快速的8086,因此尋址方法與8086一樣,在這種方式下處理器沒有充分發(fā)揮處理器的性能。只有在保護(hù)方式下,處理器才真正發(fā)揮應(yīng)有的作用。19十一月202319十一月20231.段地址與偏移地址在實(shí)地址方式下,段地址定義了段起始地址的高16位,并存放在段寄存器中。邏輯段的起始地址(通常簡(jiǎn)稱為:段地址)必須是16的倍數(shù),即最低4位二進(jìn)制必須全為0。1M內(nèi)存最多可分成64K個(gè)段,即65536個(gè)段(段之間相互重疊),至少可分成16個(gè)相互不重疊的段。偏移地址描述目的地址在該段中的相對(duì)位置,即離段基址的偏移量,它指示在64KB段內(nèi)任何一個(gè)單元。偏移地址保存在16位寄存器中,因此段的大小最大為64KB。2.默認(rèn)段地址與偏移地址寄存器訪問存儲(chǔ)器類型默認(rèn)段地址寄存器可指定段地址寄存器段內(nèi)偏移地址來源取指令CS無IP堆棧操作SS無SP字符串操作源地址DSCS,SS,ESSI字符串操作目的地址ES無DIBP用作基址寄存器時(shí)SSCS,DS,ES據(jù)尋址方式得偏移地址一般數(shù)據(jù)存取DSCS,ES,SS據(jù)尋址方式得偏移地址19十一月20233.邏輯地址與物理地址邏輯地址是段地址與偏移地址的合稱,用“段地址:偏移地址”表示,如1234H:1200H表示段地址為1234H,段內(nèi)偏移地址為1200H。物理地址是存儲(chǔ)器的實(shí)際地址,在實(shí)地址方式下物理地址通過段地址乘以16加上偏移地址得到。而16位的段地址乘以16等同于左移4位二進(jìn)制位,這樣變成20位的段基地址,最后段基地址加上段內(nèi)偏移地址就是物理地址?!纠?.1】有一邏輯地址為1200H:0340H,求物理地址。解:由邏輯地址知段地址=1200H,偏移地址=0340H,因此物理地址=12000H+0340H=12340H?!纠?.2】已經(jīng)DS=1000H,CS=2200H,指令MOV[2000H],AX在代碼段中的偏移量是IP=0150H,求(1)該指令所在的物理地址。(2)目的操作數(shù)對(duì)應(yīng)的物理地址。解:(1)指令對(duì)應(yīng)的物理地址=CS*16+IP=22000H+0150H=22150H。(2)該指令指示的目的操作數(shù)對(duì)應(yīng)段地址默認(rèn)存在DS中,偏移地址已由指令給出2000H,因此該指令指示的目的操作數(shù)所在物理地址=DS*16+2000H=10000H+2000H=12000H。19十一月2023Debug命令二:內(nèi)存單元的訪問和修改1.顯示存儲(chǔ)單元的命令D(Dump)
-D[address]或2.修改存儲(chǔ)單元內(nèi)容的命令E(Enter)-E
address
[list]
如,-E
DS:100
F3'XYZ'8D
-E
address3.填寫命令F(Fill),其格式為:
-F
range
list
例如,-F
4BA:0100
5
F3'XYZ'8D
19十一月20234.存儲(chǔ)單元的內(nèi)容存儲(chǔ)單元是按照地址進(jìn)行訪問的,相鄰兩個(gè)單元的地址編號(hào)是連續(xù)的,一般以無符號(hào)數(shù)表示,Intel系列CPU都以字節(jié)為單位分配地址編號(hào)的。1)一個(gè)字節(jié)的內(nèi)容占用一個(gè)存儲(chǔ)單元并分配一個(gè)地址編號(hào);2)一個(gè)字的內(nèi)容是該字地址所指向的單元及其后繼1個(gè)單元的內(nèi)容拼接而成;3)一個(gè)32位的內(nèi)容是該字地址所指向的單元及其后繼3個(gè)單元的內(nèi)容拼接而成;4)一個(gè)64位的內(nèi)容是該字地址所指向的單元及其后繼7個(gè)單元的內(nèi)容拼接而成。在拼接多個(gè)內(nèi)存單元時(shí),按“高對(duì)高低對(duì)低”的原則來處理,即:高存儲(chǔ)單元(地址大的存儲(chǔ)單元)的值是高數(shù)據(jù)位,低存儲(chǔ)單元(地址小的存儲(chǔ)單元)的值是低數(shù)據(jù)位。內(nèi)容地址12H
溫馨提示
- 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ì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 2024某音像制品出版合同
- 二零二五年度房地產(chǎn)項(xiàng)目資料編制及審核合同3篇
- 二零二五年度照明燈具采購安裝合同(含照明系統(tǒng)優(yōu)化與節(jié)能減排)3篇
- 2024版閉路電視監(jiān)控系統(tǒng)安裝工程協(xié)議范本版B版
- 2024年銷售合同具體內(nèi)容
- 二零二五年度油氣田打井工程專項(xiàng)施工合同細(xì)則2篇
- 2024年法律咨詢服務(wù)協(xié)議
- 智能科技產(chǎn)業(yè)園區(qū)合作框架協(xié)議
- 2025貿(mào)易采購產(chǎn)品主合同
- 2025大學(xué)生暑假安全保證書與大學(xué)生暑假實(shí)習(xí)“勞動(dòng)就業(yè)合同”匯編
- 安徽省蕪湖市2023-2024學(xué)年高一上學(xué)期期末考試 生物 含解析
- 通用電子嘉賓禮薄
- GB/T 3280-2015不銹鋼冷軋鋼板和鋼帶
- 錢素云先進(jìn)事跡學(xué)習(xí)心得體會(huì)
- 四年級(jí)上冊(cè)科學(xué)全冊(cè)知識(shí)點(diǎn)(2022年新教科版)
- 施工機(jī)械施工方案
- 哈爾濱市城市規(guī)劃管理技術(shù)規(guī)定
- 加拿大——文化ppt
- 100以內(nèi)不進(jìn)位不退位加減法200道
- 小學(xué)期末班級(jí)頒獎(jiǎng)典禮動(dòng)態(tài)課件PPT
- 開展創(chuàng)新型課題QC小組活動(dòng)實(shí)施指導(dǎo)意見
評(píng)論
0/150
提交評(píng)論