乡下人产国偷v产偷v自拍,国产午夜片在线观看,婷婷成人亚洲综合国产麻豆,久久综合给合久久狠狠狠9

  • <output id="e9wm2"></output>
    <s id="e9wm2"><nobr id="e9wm2"><ins id="e9wm2"></ins></nobr></s>

    • 分享

      匯編(一)——微處理器結(jié)構(gòu)

       shamo9966 2015-09-29
      寫程序或研究任何指令之前,必須了解微處理器的內(nèi)部配置

       

      8086的寄存器組分成8個(gè)通用寄存器、4個(gè)段寄存器、1個(gè)標(biāo)志寄存器和1個(gè)指令指針寄存器,均是16位的。8個(gè)通用寄存器中的4個(gè)數(shù)據(jù)寄存器可以分成高8位和低8位兩個(gè)獨(dú)立的寄存器,形成8個(gè)通用的8位寄存器。寄存器示意圖如下:寄存器說(shuō)明

      一、通用寄存器
      1、數(shù)據(jù)寄存器
         AX 稱為累加器,使用頻率最高,用于算術(shù)、邏輯運(yùn)算以及與外設(shè)傳遞信息等。
         BX 稱為基址寄存器,常用作存放存儲(chǔ)器地址。
         CX 稱為計(jì)數(shù)器,作為循環(huán)和串操作等指令中的隱含計(jì)數(shù)器。
         DX 稱為數(shù)據(jù)寄存器,常用來(lái)存放雙字長(zhǎng)數(shù)據(jù)的高16位,或存放外設(shè)端口地址。
      2、指針及變址寄存器
         包括SI 、DI、BP、SP四個(gè)16位寄存器,常用于存儲(chǔ)器尋址時(shí)提供地址。SI是原變址寄存器,DI是目的變址寄存器,一般與DS聯(lián)用確定數(shù)據(jù)段中某一存儲(chǔ)單元地址。在串指令中,SI與DS聯(lián)用、DI與ES聯(lián)用,分別尋址數(shù)據(jù)段和附加段,同時(shí)在串指令中,SI、DI還都具有自動(dòng)增量或減量的功能。SP為堆棧指針寄存器,指示棧頂?shù)钠频刂?;BP為基址指針寄存器,表示堆棧段中的基地址。SP和BP寄存器與SS段寄存器聯(lián)合使用以確定堆棧段中的存儲(chǔ)單元地址。SP實(shí)際上可歸類為專用寄存器,只用于堆棧操作。16位IP指令指針寄存器用來(lái)指示代碼段中指令的偏移地址,與代碼段寄存器CS聯(lián)用,確定下一條指令的物理地址,處理器利用CS:IP取得下一條要執(zhí)行的指令,然戶修改IP內(nèi)容,指向下一條指令的存儲(chǔ)器地址。計(jì)算機(jī)就是通過(guò)CS:IP寄存器來(lái)控制指令序列的執(zhí)行流程。IP寄存器是一個(gè)專用寄存器。
      二、標(biāo)志寄存器
      標(biāo)志(Flag)用于反映指令執(zhí)行結(jié)果或控制指令執(zhí)行形式。許多指令執(zhí)行之后影響有關(guān)的標(biāo)志位;不少指令的執(zhí)行要利用某些標(biāo)志。8086微處理器中各種標(biāo)識(shí)形成一個(gè)16位的標(biāo)志寄存器FLAGS,也稱為程序狀態(tài)字寄存器PSW,分為兩類:6個(gè)狀態(tài)標(biāo)志和3個(gè)控制標(biāo)志。具體如下圖:
      標(biāo)志寄存器
      1、狀態(tài)標(biāo)志
      狀態(tài)標(biāo)志用來(lái)記錄程序運(yùn)行結(jié)果的狀態(tài)信息
      CF——進(jìn)位標(biāo)志(Carry Flag)。當(dāng)運(yùn)算結(jié)果的最高有效位有進(jìn)位(加法)或借位(減法)時(shí),進(jìn)位標(biāo)志置1,即CF=1;否則CF=0。
      ZF——零標(biāo)志(Zero Flag)。若運(yùn)算結(jié)果為0,則ZF=1,否則ZF=0。
      SF——符號(hào)標(biāo)志(Sign Flag)。運(yùn)算結(jié)果的最高有效位就是符號(hào)標(biāo)志的狀態(tài)。既運(yùn)算結(jié)果最高位為1,則SF=1;否則SF=0。
      PF——奇偶標(biāo)志(Parity Flag)。運(yùn)算結(jié)果最低字節(jié)中“1”的個(gè)數(shù)為零或偶數(shù)時(shí),PF=1;否則PF=0。PF標(biāo)志進(jìn)反映最低8位中“1”的個(gè)數(shù)的奇或偶。
      OF——溢出標(biāo)志(Overflow Flag)。若算術(shù)運(yùn)算結(jié)果有溢出,則OF=1;否則OF=0。
      AF——輔助進(jìn)位標(biāo)志(Auxiliary Carry Flag)。運(yùn)算時(shí)D3位(低半字節(jié))有進(jìn)位或借位時(shí),AF=1;否則AF=0
      2、控制標(biāo)志
      控制寄存器可由程序根據(jù)需要指令設(shè)置,用來(lái)控制處理器執(zhí)行指令的方式。
      DF——方向標(biāo)志(Direction Flag)。該標(biāo)志用于串操作指令中,控制地址的變化方向。如果DF=0,每次串操作后的存儲(chǔ)器地址自動(dòng)增加,DF=1,每次串操作后的存儲(chǔ)器地址自動(dòng)減少。方向標(biāo)志可以用CLD指令復(fù)位(DF=0),STD指令置位(DF=1)。
      IF——中斷允許標(biāo)志(Interrupt-enable Flag)。該標(biāo)志用于控制外部可屏蔽中斷是否可以被處理器響應(yīng)。IF=1,允許中斷,IF=0,禁止中斷。
      TF——陷阱標(biāo)志(Trap Flag)。也常稱為單步標(biāo)志。用于控制處理器是否進(jìn)入單步操作方式。TF=1,處理器單步執(zhí)行指令:即處理器在每條指令執(zhí)行結(jié)束時(shí),產(chǎn)生一個(gè)編號(hào)為1的內(nèi)部中斷。這樣可以方便的對(duì)程序逐條指令的調(diào)試。

      微處理器從功能上可以分成兩大部分:執(zhí)行單元(Exection Unit)和總線接口單元(Bus Interface Unit),如下圖:
      微處理器結(jié)構(gòu)

      在EU中算術(shù)邏輯單元ALU用來(lái)維持MPU的狀態(tài)和標(biāo)志,管理通用寄存器和指令操作數(shù)。EU中的寄存器是16位的,數(shù)據(jù)通道也是16位的,便于數(shù)據(jù)的快速傳送(16位處理器)。EU從BIU的指令隊(duì)列中獲取指令,譯碼后開(kāi)始執(zhí)行,當(dāng)指令要求訪問(wèn)內(nèi)存或端口時(shí),EU請(qǐng)求BIU存取數(shù)據(jù)。這時(shí)EU算出的地址是相對(duì)段基的16位位移量,BIU根據(jù)指令要求選定相應(yīng)的段寄存器得到段基,由段基和位移量得出操作數(shù)的20位物理地址。BIU用來(lái)實(shí)現(xiàn)EU的所有總線操作,在EU執(zhí)行指令時(shí),BIU從存儲(chǔ)器中取出后繼指令送入指令隊(duì)列,該隊(duì)列同時(shí)能存放6個(gè)指令字節(jié)(8088處理器)。這一指令隊(duì)列能保證EU從該隊(duì)列中取出馬行要執(zhí)行的指令,而不必到內(nèi)存中直接取指令。

        本站是提供個(gè)人知識(shí)管理的網(wǎng)絡(luò)存儲(chǔ)空間,所有內(nèi)容均由用戶發(fā)布,不代表本站觀點(diǎn)。請(qǐng)注意甄別內(nèi)容中的聯(lián)系方式、誘導(dǎo)購(gòu)買等信息,謹(jǐn)防詐騙。如發(fā)現(xiàn)有害或侵權(quán)內(nèi)容,請(qǐng)點(diǎn)擊一鍵舉報(bào)。
        轉(zhuǎn)藏 分享 獻(xiàn)花(0

        0條評(píng)論

        發(fā)表

        請(qǐng)遵守用戶 評(píng)論公約

        類似文章 更多