




版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領
文檔簡介
1、2.2.3 微處理器的功能結構從應用角度(不是從內部工作原理)展開1 8088/8086的內部結構2 8088/8086的內部寄存器(重點)織8/20/2022微處理器的結構特點 相同點: 1)20條地址線,可直接尋址(220)1MB存儲單元; 2)內部結構基本相同,指令系統相同; 3)DIP40,單一5V供電,5MHz的時鐘頻率; 4)16位內部數據總線。不同點: 8086指令隊列是6字節,外部數據總線是16位 8088指令隊列是4字節,外部數據總線是8位8/20/20221、CPU的內部結構P43(16位)1 2 3 4 IP ES SS DS CS總線控制邏輯總線EU控制部件ALU標志寄
2、存器 AH AL BH BLCH CL DH DL SP BP SI DI通用寄存器地址加法器指令隊列執行部件 (EU)總線接口部件 (BIU)16位20位8位8位(8086是6字節)8/20/20221)執行單元EU(16位)1 2 3 4 IP ES SS DS CS輸入/輸出控制電路總線執行部分控制電路ALU標志寄存器 AH AL BH BLCH CL DH DL SP BP SI DI通用寄存器地址加法器指令隊列執行部件 (EU)總線接口部件 (BIU)16位20位8位8位8086是6字節(1) 組 成:(2) 功 能:負責指令的譯碼、 執行和數據的運算 從指令隊列中取指,譯碼,執行
3、計算:算術邏輯運算,EA計算 數據暫存 EU控制8/20/20222) 總線接口單元BIU(16位)1 2 3 4 IP ES SS DS CS輸入/輸出控制電路總線執行部分控制電路ALU標志寄存器 AH AL BH BLCH CL DH DL SP BP SI DI通用寄存器地址加法器指令隊列執行部件 (EU)總線接口部件 (BIU)16位20位8位8位(8086是6字節)(1) 組 成(2) 功 能 管理CPU與系統總線的接口;負責CPU對存儲器和外設的訪問。 取指令,裝入指令隊列 讀寫操作數 (相應的內存區或I/O端口 EU ) 生成20位物理地址 總線控制8/20/20223)工作過程
4、及其特點并行8088的指令執行過程優點:減少等待取指令的時間,提高CPU的利用率; 加快程序的運行速度。8/20/20222 8088/8086的內部寄存器 14個16位的寄存器 按照用途分:通用寄存器 (8個)指令指針標志寄存器段寄存器 (4個) 匯編語言程序員看到的處理器,就是寄存器 所以,一定要熟悉這些寄存器的名稱和作用P448/20/2022P458/20/20221)數據寄存器(1)AX累加器(Accumulator) 用于算術、邏輯運算以及與外設傳送信息等(2)BX基址寄存器(Base ) 存放 存儲器地址(3)CX計數器(Count) 作為循環和串操作等指令中的隱含計數器(4)D
5、X數據寄存器(Data Register) 存放雙字長數據的高16位, 存放外設端口地址8/20/20222)變址寄存器(16位)SI:源變址寄存器(Source Index)DI:目的變址寄存器(Destination Index) 現在不必完全理解,以后會詳細展開8/20/20223)指針寄存器功能:幫助尋找堆棧內的數據信息;堆棧(Stack):主存中一個特殊的區域, 采用“先進后出”或“后進先出”存取操作方式。堆棧指針寄存器(Stack Pointer) SP 指示堆棧段棧頂的位置(偏移地址)基址指針寄存器(Base Pointer) BP 表示數據在堆棧段中的偏移地址8/20/2022
6、4) 指令指針寄存器IP(Instruction Pointer)(1)作用:指示主存儲器指令的位置, 隨著指令的執行,IP自動修改。(2)使用:專用寄存器 IP與段寄存器(CS)聯合使用, 以確定下一條指令的存儲單元地址。8/20/20225) 標志寄存器(FLAGS)(16位)狀態標志控制標志 程序設計需要利用標志的狀態反映指令執行結果或控制指令執行形式。OF1115 12DF10IF9TF8SF7ZF65AF43PF21CF0標志寄存器FLAGS8/20/20225) 標志寄存器(FLAGS)(16位)狀態標志 CF ZF SF PF OF AF 用來記錄程序運行結果的狀態信息 許多指令
7、的執行都將相應地設置它控制標志 DF IF TF 可由程序根據需要用指令設置 用于控制CPU執行指令的方式8/20/2022(1)進位標志CF(Carry Flag) 置位(CF1)條件 運算結果的最高有效位有進位(加法) 或借位(減法) 3AH + 7CH0B6H, 無進位:CF = 0 AAH + 7CH(1)26H, 有進位:CF = 18/20/2022(2)溢出標志OF(Overflow Flag)置位:算術運算的結果有溢出例如: 3AH + 7CHB6H,產生溢出:OF1AAH + 7CH(1)26H,沒有溢出:OF08/20/2022(3)符號標志SF(Sign Flag)置位:
8、運算結果最高位為1注意:有符號數據的最高有效位就是符號標志的狀態例如: 3AH7CH0B6H,最高位D71:SF1 84H7CH(1)00H,最高位D70:SF08/20/2022(4)零標志ZF(zero Flag)置位:若運算結果為0,則ZF1注意:ZF為1表示結果是0例如: 3AH7CHB6H, 結果不是零:ZF0 84H7CH(1)00H,結果是零:ZF18/20/2022(5)奇偶標志PF(Parity Flag)置位:運算結果最低字節中“1”的個數為零或偶數時注意:僅反映最低8位中“1”的個數例如: 3AH7CH0B6H10110110B 結果中有5個“1” :PF08/20/20
9、22(6)輔助進位標志AF(Auxiliary Carry Flag)置位:運算時D3位(低半字節)有進位或借位時例如:3AH7CH0B6H D3有進位:AF1應用:主要由CPU內部使用, 用于十進制算術運算調整指令中 用戶一般不必關心8/20/2022(7)方向標志DF(Direction Flag)功能:串操作指令中,控制地址的變化方向 設置DF0,存儲器地址自動增加; 設置DF1,存儲器地址自動減少實現: CLD指令 復位方向標志:DF0 STD指令 置位方向標志:DF18/20/2022(8)中斷允許標志IF(Interrupt-enable Flag)功能:控制可屏蔽中斷是否可以被C
10、PU響應 IF1,允許中斷 STI指令 IF0,禁止中斷 CLI指令 8/20/2022(9)陷阱標志TF(Trap Flag)功能:控制處理器是否進行單步操作TF0,處理器正常工作;TF1,處理器單步執行指令用于:程序調試處理器在每條指令執行結束時,產生一個編號為1的內部中斷單步中斷8/20/20226) 段寄存器作用:存放三類信息 代碼(指令):指示微處理器執行何種操作 數據(字符/數值):程序處理的對象 堆棧信息:被保存的返回地址和中間結果4個段寄存器(1) 代碼段寄存器CS :所在段的首地址(2) 數據段寄存器DS :所用操作數所在的數據段的首地址(3) 堆棧段寄存器SS :所用堆棧段
11、的首地址(4) 附加段寄存器ES (Extra Segment):所用操作數的段地址存放當前被執行的程序8/20/20222.2.4 8088/8086的存儲器組織存儲器作用:計算機存儲信息的地方學習要求: 掌握數據存儲格式掌握存儲器的分段管理學習目的:對匯編程序設計非常重要!8/20/20221存儲器組織存儲單元的編號:存儲器地址(20位)存儲單元的內容:一個字節(8位)例 如: 00000H單元存放有數據78H 即 (00000H)78H多字節數據存放方式:高高低低原則 低字節存入低地址 高字節存入高地址P800003H0011010000002H0001001000001H0101011
12、000000H01111000高地址D7 D0低地址8/20/2022多字節數據存放原則:高高低低 低字節存入低地址 高字節存入高地址 多字節數據占據的地址空間:低地址例如:00002H“字”單元:(00002H) = 7856H00000H“雙字”單元:(00000H) = 78564512H00003H78H00002H56H00001H45H00000H12H高地址低地址8/20/20222. 存儲器的分段管理1) 分段的必要性 一個寄存器( 16位)無法形成 尋址1M (220)存儲器空間所需的地址碼; 如:要測量100米的鐵皮,只有一把10米量程的尺。 怎么辦? P44,468/20
13、/20222. 存儲器的分段管理2) 分段的方法:1M空間分成若干個邏輯段 如:將100米的鐵皮,用粉筆分成若干截能不能隨意劃? 每截不能超過10米; 每截不能小于10厘米; (100米=1000厘米) 每段長度不大于64K(216),段內尋址用16位尋址方法; 段地址的低4位為0000B。 各段之間可以是連續、分開、部分重疊或完全重疊。 重疊原因:各個段在實際應用時可小于64KB, 其未用空間可再定義為其它段的空間。P41,468/20/20223) 分段后的地址(1)每個段由連續的字節單元組成,最大長度為64K;(2)20位地址(段首地址)的低4位必須為0, 高16位地址(段基址)存放在段
14、寄存器中。 重點、難點:(稍后)段首地址段基址8/20/20224) 存儲器的分段使用代碼段:CS存放代碼段的起始地址 CS:IP指明下一條要執行的指令堆棧段:SS存放堆棧段的起始地址 SS:SP指明操作堆棧頂的數據數據段:DS存放數據段的起始地址 DS:EA指明數據段中的數據附加段:ES存放附加段的起始地址 ES:EA指明附加段中的數據8/20/20225)物理地址和邏輯地址(1)物理地址:存儲單元的一個唯一的20位地址編號。 00000H FFFFFH(2)邏輯地址:分段后用戶在編程時所采用的地址 。 段基址 : 段內偏移地址分隔符8/20/2022(3)物理地址和邏輯地址的轉換物理地址段
15、基址左移4位 偏移地址 段首地址(20位)偏移地址(16位) +段基址16位偏移量16位物 理 地 址20位4位0000P47段首地址8/20/2022(3)物理地址和邏輯地址的轉換舉例:邏輯地址1460H:100H,1380H:F00H說明:一個物理地址可以有多個邏輯地址。14600H 100H14700H13800H F00H14700H段基址左移4位加上偏移地址得到物理地址8/20/2022段寄存器的使用規定(P47)8/20/2022小結(1):1)8個8位通用寄存器、8個16位通用寄存器(4地址+4數據) 6個狀態標志和3個控制標志;2)1M存儲空間分段管理,4個段寄存器,對應4種邏輯段 邏輯段要求: 段首地址低4位均為0(各段獨立); 每段最大不超過64K (各段重疊)。 邏輯段并不要求: 必須是64K, 各段之間完全分開(即可以重疊)8/20/2022小結(2):3)每隔16個存儲單元就開始一個段,1M最多可以有: 2201621664K 個段4)1M空間最少能分成多少個段? 每隔64K個存儲單元開始一個段
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯系上傳者。文件的所有權益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經權益所有人同意不得將文件中的內容挪作商業或盈利用途。
- 5. 人人文庫網僅提供信息存儲空間,僅對用戶上傳內容的表現方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
- 6. 下載文件中如有侵權或不適當內容,請與我們聯系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 腳手架公司管理制度
- 藥品原料藥管理制度
- 營銷子公司管理制度
- 蓄電池各項管理制度
- 論水電安全管理制度
- 設備維護員管理制度
- 城管情景面試題及答案
- 大專餐飲考試題及答案
- 銷售支撐面試題及答案
- 運力管理面試題及答案
- JGJ100-2015 車庫建筑設計規范
- 2024年承包建設工程合同
- 2024年江蘇省無錫市中考地理試卷(附真題答案)
- 河南省鄭州市金水區2023-2024學年七年級(下)期末數學試卷(含答案)
- DBJ∕T 15-120-2017 城市軌道交通既有結構保護技術規范
- 免拆底模鋼筋桁架樓承板應用技術規程
- 文化墻設計制作安裝合同范本版
- 安恒信息:2024體育賽事網絡安全保障實踐藍皮書
- 擴大基礎重力式橋臺綜合標準施工核心技術專業方案修改
- 大學生安全教育(共31張課件)
- DL-T800-2018電力企業標準編寫導則
評論
0/150
提交評論