版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
1、微處理器原理與接口技術(shù)微處理器原理與接口技術(shù)(第(第1-8章)章)課程簡(jiǎn)介課程簡(jiǎn)介 掌握微處理器、微機(jī)、單片機(jī)的基本結(jié)構(gòu)及工作原理掌握微處理器、微機(jī)、單片機(jī)的基本結(jié)構(gòu)及工作原理 掌握微機(jī)、單片機(jī)輸入輸出接口的工作原理掌握微機(jī)、單片機(jī)輸入輸出接口的工作原理掌握單片機(jī)應(yīng)用系統(tǒng)硬件及軟件設(shè)計(jì)方法掌握單片機(jī)應(yīng)用系統(tǒng)硬件及軟件設(shè)計(jì)方法課程教學(xué)目標(biāo)課程教學(xué)目標(biāo)SO1SO1課程主要內(nèi)容:課程主要內(nèi)容:一、一、8086/8088 CPU及微機(jī)系統(tǒng)工作原理及微機(jī)系統(tǒng)工作原理8086/8088內(nèi)部結(jié)構(gòu)、外部引腳、工作方式、總線時(shí)序、微機(jī)系統(tǒng)組成。內(nèi)部結(jié)構(gòu)、外部引腳、工作方式、總線時(shí)序、微機(jī)系統(tǒng)組成。二、微機(jī)接口技
2、術(shù)二、微機(jī)接口技術(shù)存儲(chǔ)器、并行接口、串行接口、定時(shí)存儲(chǔ)器、并行接口、串行接口、定時(shí)/計(jì)數(shù)器、中斷控制器。計(jì)數(shù)器、中斷控制器。三、三、80C51單片機(jī)基本工作原理單片機(jī)基本工作原理80C51內(nèi)部結(jié)構(gòu)、外部引腳、工作時(shí)序。內(nèi)部結(jié)構(gòu)、外部引腳、工作時(shí)序。四、四、80C51單片機(jī)內(nèi)部接口電路單片機(jī)內(nèi)部接口電路并口、串口、定時(shí)并口、串口、定時(shí)/計(jì)數(shù)器、中斷系統(tǒng)。計(jì)數(shù)器、中斷系統(tǒng)。五、五、80C51單片機(jī)程序設(shè)計(jì)單片機(jī)程序設(shè)計(jì)指令系統(tǒng)、匯編程序設(shè)計(jì)、指令系統(tǒng)、匯編程序設(shè)計(jì)、C51程序設(shè)計(jì)。程序設(shè)計(jì)。六、六、80C51單片機(jī)應(yīng)用系統(tǒng)設(shè)計(jì)單片機(jī)應(yīng)用系統(tǒng)設(shè)計(jì)串行擴(kuò)展總線、人機(jī)接口、模擬接口、功率接口、設(shè)計(jì)實(shí)例。
3、串行擴(kuò)展總線、人機(jī)接口、模擬接口、功率接口、設(shè)計(jì)實(shí)例。多動(dòng)手、勤思考、善總結(jié)。多動(dòng)手、勤思考、善總結(jié)。如何學(xué)好本課程:如何學(xué)好本課程:第一章第一章 微型計(jì)算機(jī)基礎(chǔ)知識(shí)微型計(jì)算機(jī)基礎(chǔ)知識(shí) 1.1 1.1 數(shù)制與編碼數(shù)制與編碼1.2 1.2 微機(jī)的基本結(jié)構(gòu)和工作特點(diǎn)微機(jī)的基本結(jié)構(gòu)和工作特點(diǎn) 1.1 1.1 數(shù)制與編碼數(shù)制與編碼一、不同數(shù)制及其相互轉(zhuǎn)換一、不同數(shù)制及其相互轉(zhuǎn)換例:例:100=100D=64H=01100100B=144Q二、計(jì)算機(jī)中的信息編碼二、計(jì)算機(jī)中的信息編碼1、無(wú)符號(hào)整數(shù)的編碼、無(wú)符號(hào)整數(shù)的編碼 普通二進(jìn)制碼普通二進(jìn)制碼 BCD碼碼例:例:123的普通二進(jìn)制碼為的普通二進(jìn)制碼為
4、7Bh,8421BCD碼為碼為123h.2、有符號(hào)整數(shù)的編碼、有符號(hào)整數(shù)的編碼 原碼原碼 反碼反碼 補(bǔ)碼補(bǔ)碼例:例:-1的的8位補(bǔ)碼為位補(bǔ)碼為FFh,16位補(bǔ)碼為位補(bǔ)碼為FFFFh.3、浮點(diǎn)數(shù)的編碼、浮點(diǎn)數(shù)的編碼IEEE-754標(biāo)準(zhǔn)格式標(biāo)準(zhǔn)格式單精度(單精度(32位)、雙精度(位)、雙精度(64位)、長(zhǎng)雙精度(位)、長(zhǎng)雙精度(80位)位)例:例:-123456.0的的32位浮點(diǎn)數(shù)形式為位浮點(diǎn)數(shù)形式為C7 F1 20 00h.4、西文字符的編碼、西文字符的編碼ASCIIASCII編碼編碼數(shù)字符號(hào)數(shù)字符號(hào)09:30H39H小寫字母:小寫字母:az:61H7AH大寫字母:大寫字母:AZ:41H5AH
5、標(biāo)點(diǎn)符號(hào):標(biāo)點(diǎn)符號(hào):控制字符:控制字符:擴(kuò)展字符:擴(kuò)展字符:例:例:HELLO字符串的字符串的ASCII編碼為編碼為48454C4C4Fh.5、漢字編碼、漢字編碼國(guó)標(biāo)碼國(guó)標(biāo)碼機(jī)內(nèi)碼機(jī)內(nèi)碼加上加上8080H例:例:“你好!你好!”的機(jī)內(nèi)碼為的機(jī)內(nèi)碼為C4E3BAC3A3A1h.C4E3BAC3A3A1h.一級(jí)常用漢字一級(jí)常用漢字37553755個(gè),個(gè),二級(jí)次常用漢字二級(jí)次常用漢字30083008個(gè)個(gè)輸入碼(鍵盤輸入)輸入碼(鍵盤輸入)字形碼(顯示、打?。┳中未a(顯示、打?。?、其它信息在計(jì)算機(jī)中的編碼表示、其它信息在計(jì)算機(jī)中的編碼表示圖片、聲音、視頻圖片、聲音、視頻編碼標(biāo)準(zhǔn)編碼標(biāo)準(zhǔn) 微型機(jī)將運(yùn)算
6、器和控制器集成在一塊芯片上,該芯片被稱為微處理器MPU(Micro Processing Unit),也就是我們習(xí)慣說(shuō)的CPU(Central Processing Unit),是計(jì)算機(jī)結(jié)構(gòu)中心的核心部分。計(jì)算機(jī)的基本結(jié)構(gòu)框圖(1)運(yùn)算器:是計(jì)算機(jī)對(duì)各種數(shù)據(jù)進(jìn)行運(yùn)算,對(duì)各種信息進(jìn)行加工、處理的部件,因此,它是數(shù)據(jù)運(yùn)算、加工和處理的中心。(2)存儲(chǔ)器:是計(jì)算機(jī)存放各種數(shù)據(jù)、信息和執(zhí)行程序的部件。存儲(chǔ)器又分主存儲(chǔ)器(又稱內(nèi)存)和輔助存儲(chǔ)器(又稱外存)。(3)輸入設(shè)備:它給計(jì)算機(jī)輸入各種原始信息,包括數(shù)據(jù)、文字、聲音、圖像和程序,并將它們轉(zhuǎn)換成計(jì)算機(jī)能識(shí)別的二進(jìn)制代碼存入存儲(chǔ)器中。常用的輸入設(shè)備有鍵
7、盤、鼠標(biāo)、掃描儀,手寫板及數(shù)碼相機(jī)等。(4)輸出設(shè)備:它將計(jì)算機(jī)中各種數(shù)據(jù)運(yùn)算的結(jié)果,各種信息加工、處理的結(jié)果以人們可識(shí)別的信息形式輸出。常用的輸出設(shè)備有顯示器、打印機(jī)等。 輸入、輸出設(shè)備是人機(jī)交互的設(shè)備,統(tǒng)稱為外部設(shè)備,簡(jiǎn)稱外設(shè)。(5)控制器:是計(jì)算機(jī)對(duì)以上各部件進(jìn)行控制、指揮,以實(shí)現(xiàn)計(jì)算機(jī)運(yùn)行過(guò)程自動(dòng)化的部件。因此,它是計(jì)算機(jī)發(fā)布操作命令的控制中心和指揮系統(tǒng)。 以上的五大基本組成是計(jì)算機(jī)的實(shí)體,統(tǒng)稱為計(jì)算機(jī)硬件(Hardware)。其中運(yùn)算器和控制器稱為計(jì)算機(jī)系統(tǒng)的主機(jī)。而把包括解題步驟在內(nèi)的各式各樣的程序叫做計(jì)算機(jī)軟件(Software)。 微處理器就是把中央處理器CPU的復(fù)雜電路,包括
8、運(yùn)算器和控制器做在一片或幾片大規(guī)模集成電路的半導(dǎo)體芯片上。把這種微縮的CPU大規(guī)模集成電路LSI(Large Scale Integration)稱為微處理器(Microprocessor),簡(jiǎn)稱MP、P或CPU。其職能是執(zhí)行算術(shù)、邏輯運(yùn)算和控制整個(gè)計(jì)算機(jī)自動(dòng)地、協(xié)調(diào)地完成操作。1.2 1.2 微機(jī)的基本結(jié)構(gòu)和工作特點(diǎn)微機(jī)的基本結(jié)構(gòu)和工作特點(diǎn) 微機(jī)基本結(jié)構(gòu)(主機(jī)部分)微機(jī)基本結(jié)構(gòu)(主機(jī)部分)微處理器微處理器微型計(jì)算機(jī)系統(tǒng)從局部到全局分為三個(gè)層次:微型計(jì)算機(jī)系統(tǒng)從局部到全局分為三個(gè)層次:微型計(jì)算機(jī)(主機(jī))微型計(jì)算機(jī)(主機(jī))微型計(jì)算機(jī)系統(tǒng)微型計(jì)算機(jī)系統(tǒng)+ +存儲(chǔ)器存儲(chǔ)器+I/O+I/O接口接口+
9、+總線總線+ +外設(shè)外設(shè)+ +電源電源+ +軟件軟件微機(jī)工作特點(diǎn)微機(jī)工作特點(diǎn)(Von NeumannVon Neumann的程序存儲(chǔ)思想)的程序存儲(chǔ)思想)首先將程序首先將程序( (指令序列指令序列) )編好,然后通過(guò)輸入設(shè)備送到存儲(chǔ)器中保存起來(lái),編好,然后通過(guò)輸入設(shè)備送到存儲(chǔ)器中保存起來(lái),接下來(lái)就可以由計(jì)算機(jī)自動(dòng)執(zhí)行存好的程序了。具體過(guò)程是:接下來(lái)就可以由計(jì)算機(jī)自動(dòng)執(zhí)行存好的程序了。具體過(guò)程是:取出指令:從存儲(chǔ)單元取出一條指令送到取出指令:從存儲(chǔ)單元取出一條指令送到CPUCPU內(nèi)部的指令寄存器暫存;內(nèi)部的指令寄存器暫存;分析指令:將指令寄存器中的指令送到指令譯碼器,譯出對(duì)應(yīng)的微操作;分析指令:
10、將指令寄存器中的指令送到指令譯碼器,譯出對(duì)應(yīng)的微操作;執(zhí)行指令:向有關(guān)部件發(fā)出控制信號(hào),完成指令規(guī)定的操作;執(zhí)行指令:向有關(guān)部件發(fā)出控制信號(hào),完成指令規(guī)定的操作;繼續(xù)執(zhí)行下一條指令,直到程序執(zhí)行完為止。繼續(xù)執(zhí)行下一條指令,直到程序執(zhí)行完為止。匈牙利數(shù)學(xué)家馮匈牙利數(shù)學(xué)家馮諾依曼諾依曼微機(jī)系統(tǒng)實(shí)例微機(jī)系統(tǒng)實(shí)例-IBM PC/XT機(jī)機(jī)主板主板總線的層次總線的層次(1)片內(nèi)總線:又稱芯片內(nèi)部總線,位于CPU芯片內(nèi)部,用來(lái)實(shí)現(xiàn)CPU內(nèi)部各功能單元電路之間的相互連接和信號(hào)的相互傳遞。(2)片總線:又稱元件級(jí)總線,是微機(jī)主板上以CPU為核心,芯片與芯片間連接的總線。(3)內(nèi)總線:通常又稱為微機(jī)系統(tǒng)總線,用來(lái)
11、實(shí)現(xiàn)計(jì)算機(jī)系統(tǒng)中的插件板與插件板間的連接。各種微計(jì)算機(jī)系統(tǒng)中都有自己的系統(tǒng)總線,如IBM PC微機(jī)的PC總線,IBM PC/XT微機(jī)的ISA總線,80386/80486微機(jī)的EISA總線以及Pentium微機(jī)的PCI,AGP總線等。(4)外總線:又稱通信總線,用于系統(tǒng)之間的連接,完成系統(tǒng)與系統(tǒng)間的通信。例如,微機(jī)系統(tǒng)與微機(jī)系統(tǒng)、微機(jī)系統(tǒng)與測(cè)量?jī)x器之間、微機(jī)系統(tǒng)與其他電子設(shè)備系統(tǒng)之間、微機(jī)系統(tǒng)與多媒體設(shè)備之間的通信。如RS-232C,IEEE-488,CAMAC和USB等。1.1 1.1 數(shù)制與編碼數(shù)制與編碼1.2 1.2 微機(jī)的基本結(jié)構(gòu)和工作特點(diǎn)微機(jī)的基本結(jié)構(gòu)和工作特點(diǎn) 本章小節(jié)本章小節(jié)作業(yè):
12、作業(yè): 1-2EO1EO1第二章第二章 8086/80888086/8088微處理器結(jié)構(gòu)及工作原理微處理器結(jié)構(gòu)及工作原理 2.1 2.1 微處理器的主要性能指標(biāo)微處理器的主要性能指標(biāo) 2.2 8086/80882.2 8086/8088的內(nèi)部結(jié)構(gòu)的內(nèi)部結(jié)構(gòu) 2.3 8086/80882.3 8086/8088的引腳功能與工作方式的引腳功能與工作方式 2.4 8086/80882.4 8086/8088的總線周期與工作時(shí)序的總線周期與工作時(shí)序 2.5 8086/80882.5 8086/8088的存儲(chǔ)器和的存儲(chǔ)器和I/OI/O端口組織端口組織 2.6 322.6 32位位80X8680X86微處
13、理器微處理器 字長(zhǎng)字長(zhǎng): :4 4位,位,8 8位,位,1616位,位,3232位位,64,64位位 指令數(shù)指令數(shù): :8086/80888086/8088有有133133條基本指令條基本指令 運(yùn)算速度運(yùn)算速度: :MIPSMIPS 可訪問(wèn)地址空間可訪問(wèn)地址空間: :n n條地址線可訪問(wèn)條地址線可訪問(wèn)2n個(gè)存儲(chǔ)單元個(gè)存儲(chǔ)單元 高速緩存高速緩存: :位于位于CPUCPU與主存儲(chǔ)器之間與主存儲(chǔ)器之間 虛擬存儲(chǔ)空間虛擬存儲(chǔ)空間: :外存用作內(nèi)存擴(kuò)展外存用作內(nèi)存擴(kuò)展 多處理器支持多處理器支持: :主處理器主處理器+ +協(xié)處理器協(xié)處理器2.12.1微處理器的主要性能指標(biāo)微處理器的主要性能指標(biāo)2.22.2
14、8086/80888086/8088微處理器的內(nèi)部結(jié)構(gòu)微處理器的內(nèi)部結(jié)構(gòu)一、一、8086/8088CPU8086/8088CPU的編程結(jié)構(gòu)的編程結(jié)構(gòu) 80868086功能:負(fù)責(zé)指令的執(zhí)行,進(jìn)行功能:負(fù)責(zé)指令的執(zhí)行,進(jìn)行8 8位及位及1616位的各種運(yùn)算。位的各種運(yùn)算。組成:組成: 運(yùn)算器運(yùn)算器:ALU(:ALU(算術(shù)邏輯單元算術(shù)邏輯單元)+)+暫存器暫存器+ +標(biāo)志寄存器標(biāo)志寄存器(FLAG)(FLAG) 通用寄存器組通用寄存器組:AX,BX,CX,DX,BP,SP,SI,DI:AX,BX,CX,DX,BP,SP,SI,DI 控制器控制器: :核心為指令譯碼器核心為指令譯碼器1. 1. 執(zhí)行部
15、件(執(zhí)行部件(EUEU)2. 2. 總線接口單元(總線接口單元(BIUBIU)功能:負(fù)責(zé)與存儲(chǔ)器及功能:負(fù)責(zé)與存儲(chǔ)器及I/OI/O接口之間的數(shù)據(jù)傳送操作。接口之間的數(shù)據(jù)傳送操作。 從程序存儲(chǔ)單元取指令送到指令隊(duì)列,供從程序存儲(chǔ)單元取指令送到指令隊(duì)列,供EUEU執(zhí)行執(zhí)行; ; 從數(shù)據(jù)存儲(chǔ)單元或從數(shù)據(jù)存儲(chǔ)單元或I/OI/O端口取操作數(shù)端口取操作數(shù); ; 將操作結(jié)果送到數(shù)據(jù)存儲(chǔ)單元或?qū)⒉僮鹘Y(jié)果送到數(shù)據(jù)存儲(chǔ)單元或I/OI/O端口。端口。組成:組成: 段寄存器(段寄存器(DSDS、CSCS、ESES、SSSS) 指令指針寄存器指令指針寄存器IPIP(指向下一條要執(zhí)行指令)(指向下一條要執(zhí)行指令) 20
16、20位地址加法器(邏輯地址位地址加法器(邏輯地址2020位物理地址)位物理地址) 6 6字節(jié)(字節(jié)(80888088為為4 4字節(jié))指令隊(duì)列緩沖器字節(jié))指令隊(duì)列緩沖器(FIFO(FIFO結(jié)構(gòu)結(jié)構(gòu)) )3. BIU3. BIU與與EUEU的協(xié)調(diào)工作的協(xié)調(diào)工作 每當(dāng)每當(dāng)80868086的指令隊(duì)列中有兩個(gè)空字節(jié),或的指令隊(duì)列中有兩個(gè)空字節(jié),或80888088的指令隊(duì)列的指令隊(duì)列 中有一個(gè)空字節(jié)時(shí),中有一個(gè)空字節(jié)時(shí),BIUBIU就會(huì)自動(dòng)進(jìn)入總線周期,把指令取就會(huì)自動(dòng)進(jìn)入總線周期,把指令取 到指令隊(duì)列中。取指的順序是按指令在程序存儲(chǔ)單元中的到指令隊(duì)列中。取指的順序是按指令在程序存儲(chǔ)單元中的 存儲(chǔ)順序。存
17、儲(chǔ)順序。每當(dāng)每當(dāng)EUEU準(zhǔn)備執(zhí)行一條指令時(shí),它會(huì)從準(zhǔn)備執(zhí)行一條指令時(shí),它會(huì)從BIUBIU部件的指令隊(duì)列部件的指令隊(duì)列 前部取出指令的代碼,然后用幾個(gè)時(shí)鐘周期去執(zhí)行指令。前部取出指令的代碼,然后用幾個(gè)時(shí)鐘周期去執(zhí)行指令。 在執(zhí)行指令的過(guò)程中,如果必須訪問(wèn)存儲(chǔ)器或者在執(zhí)行指令的過(guò)程中,如果必須訪問(wèn)存儲(chǔ)器或者I IO O端口,端口, 那么那么EUEU就會(huì)請(qǐng)求就會(huì)請(qǐng)求BIUBIU進(jìn)入總線周期,完成訪問(wèn)內(nèi)存或者進(jìn)入總線周期,完成訪問(wèn)內(nèi)存或者 I IO O端口的操作;如果此時(shí)端口的操作;如果此時(shí)BIUBIU正好處于空閑狀態(tài),會(huì)立即正好處于空閑狀態(tài),會(huì)立即 響應(yīng)響應(yīng)EUEU的請(qǐng)求。但是,如果的請(qǐng)求。但是,如
18、果BIUBIU正在將某個(gè)指令字節(jié)取到指正在將某個(gè)指令字節(jié)取到指 令隊(duì)列中,則令隊(duì)列中,則BIUBIU將首先完成這個(gè)取指令的總線周期,然后將首先完成這個(gè)取指令的總線周期,然后 再去響應(yīng)再去響應(yīng)EUEU發(fā)出的訪問(wèn)總線的請(qǐng)求。發(fā)出的訪問(wèn)總線的請(qǐng)求。當(dāng)指令隊(duì)列已滿,且當(dāng)指令隊(duì)列已滿,且EUEU又沒(méi)有總線訪問(wèn)請(qǐng)求時(shí),又沒(méi)有總線訪問(wèn)請(qǐng)求時(shí),BIUBIU便進(jìn)便進(jìn) 入空閑狀態(tài)。入空閑狀態(tài)。在執(zhí)行轉(zhuǎn)移指令、調(diào)用指令和返回指令時(shí),在執(zhí)行轉(zhuǎn)移指令、調(diào)用指令和返回指令時(shí),EUEU會(huì)將指令會(huì)將指令 隊(duì)列中已經(jīng)裝入的字節(jié)全部消除,并要求隊(duì)列中已經(jīng)裝入的字節(jié)全部消除,并要求BIUBIU開(kāi)始讀取開(kāi)始讀取 要轉(zhuǎn)向的那個(gè)程序段中
19、的指令代碼。要轉(zhuǎn)向的那個(gè)程序段中的指令代碼。不難看出,不難看出,BIUBIU與與EUEU的工作是不同步的。的工作是不同步的。EUEU在執(zhí)行指令的時(shí)候,在執(zhí)行指令的時(shí)候,BIUBIU也在進(jìn)行取指令、讀操作數(shù)或存操作結(jié)果的操作,這是一個(gè)也在進(jìn)行取指令、讀操作數(shù)或存操作結(jié)果的操作,這是一個(gè)并行工作過(guò)程,改變了以往計(jì)算機(jī)取指令并行工作過(guò)程,改變了以往計(jì)算機(jī)取指令譯碼譯碼執(zhí)行指令的執(zhí)行指令的串行工作方式,大大提高了工作效率。串行工作方式,大大提高了工作效率。圖8086/8088CPU的寄存器結(jié)構(gòu) 二、二、 8086/8088CPU8086/8088CPU內(nèi)部寄存器內(nèi)部寄存器AX,BX,CX,DX,CS,
20、DS,SS,ES,BP,SP,SI,DI,IP,F(xiàn)LAG共14個(gè)。1.1.數(shù)據(jù)寄存器數(shù)據(jù)寄存器四個(gè)四個(gè)1616位數(shù)據(jù)寄存器(位數(shù)據(jù)寄存器(AXAX、BXBX、CXCX、DXDX),可以存放),可以存放1616位位的操作數(shù),也可拆成的操作數(shù),也可拆成8 8個(gè)個(gè)8 8位的寄存器(位的寄存器(AHAH、ALAL;BHBH、BLBL;CHCH、CLCL;DHDH、DLDL)來(lái)使用。其中)來(lái)使用。其中AXAX稱為累加器,稱為累加器,BXBX稱為基稱為基址寄存器,址寄存器,CXCX稱為計(jì)數(shù)寄存器,稱為計(jì)數(shù)寄存器,DXDX稱為數(shù)據(jù)寄存器。稱為數(shù)據(jù)寄存器。2.2.指針寄存器指針寄存器兩個(gè)兩個(gè)1616位的指針寄
21、存器位的指針寄存器SPSP和和BPBP,其中,其中SPSP是堆棧指針寄存是堆棧指針寄存器,由它和堆棧段寄存器器,由它和堆棧段寄存器SSSS一起來(lái)確定堆棧在內(nèi)存中的一起來(lái)確定堆棧在內(nèi)存中的位置;位置; BPBP是基址指針寄存器,通常用于存放基地址。是基址指針寄存器,通常用于存放基地址。3.3.變址寄存器變址寄存器兩個(gè)兩個(gè)1616位的變址寄存器位的變址寄存器SISI和和DIDI,其中,其中SISI是源變址寄存器,是源變址寄存器,DIDI是目的變址寄存器,都用于指令的變址尋址方式。是目的變址寄存器,都用于指令的變址尋址方式。4.4.段寄存器段寄存器四個(gè)四個(gè)1616位段寄存器,即代碼段寄存器位段寄存器
22、,即代碼段寄存器CSCS、數(shù)據(jù)段寄存器、數(shù)據(jù)段寄存器DSDS、堆、堆棧段寄存器棧段寄存器SSSS和附加段寄存器和附加段寄存器ESES。這些段寄存器的內(nèi)容與有效。這些段寄存器的內(nèi)容與有效的地址偏移量一起,可確定內(nèi)存的物理地址。通常的地址偏移量一起,可確定內(nèi)存的物理地址。通常CSCS控制程序控制程序區(qū),區(qū),DSDS和和ESES控制數(shù)據(jù)區(qū),控制數(shù)據(jù)區(qū),SSSS控制堆棧區(qū)。控制堆棧區(qū)。5.5.指令指針寄存器指令指針寄存器IPIPIPIP和和CSCS一起可以確定下一條指令的內(nèi)存地址。順序執(zhí)行程序一起可以確定下一條指令的內(nèi)存地址。順序執(zhí)行程序時(shí),時(shí),CPUCPU每取一個(gè)指令字節(jié),每取一個(gè)指令字節(jié),IPIP
23、自動(dòng)加自動(dòng)加1 1,指向下一個(gè)要讀,指向下一個(gè)要讀取的字節(jié);當(dāng)取的字節(jié);當(dāng)IPIP單獨(dú)改變時(shí),會(huì)發(fā)生段內(nèi)的程序轉(zhuǎn)移;當(dāng)單獨(dú)改變時(shí),會(huì)發(fā)生段內(nèi)的程序轉(zhuǎn)移;當(dāng)CSCS和和IPIP同時(shí)改變時(shí),會(huì)產(chǎn)生段間的程序轉(zhuǎn)移。同時(shí)改變時(shí),會(huì)產(chǎn)生段間的程序轉(zhuǎn)移。6.6.處理器狀態(tài)字處理器狀態(tài)字FLAGFLAG(FLAGFLAG)FLAGFLAG標(biāo)志寄存器的內(nèi)容,又稱為處理器狀態(tài)字標(biāo)志寄存器的內(nèi)容,又稱為處理器狀態(tài)字PSWPSW。其中共有。其中共有9 9個(gè)標(biāo)志位,可分成兩類:個(gè)標(biāo)志位,可分成兩類:一類為狀態(tài)標(biāo)志,一類為控制標(biāo)志一類為狀態(tài)標(biāo)志,一類為控制標(biāo)志。其中狀態(tài)標(biāo)志表示前一步操作(如加、減等)執(zhí)行以后,其中狀態(tài)
24、標(biāo)志表示前一步操作(如加、減等)執(zhí)行以后,ALUALU所處的狀態(tài),后續(xù)操作可以根據(jù)這些狀態(tài)標(biāo)志進(jìn)行判斷,實(shí)現(xiàn)所處的狀態(tài),后續(xù)操作可以根據(jù)這些狀態(tài)標(biāo)志進(jìn)行判斷,實(shí)現(xiàn)轉(zhuǎn)移;控制標(biāo)志則可以通過(guò)指令人為設(shè)置,用以對(duì)某一種特定轉(zhuǎn)移;控制標(biāo)志則可以通過(guò)指令人為設(shè)置,用以對(duì)某一種特定的功能起控制作用(如中斷屏蔽等),反映了人們對(duì)微機(jī)系統(tǒng)的功能起控制作用(如中斷屏蔽等),反映了人們對(duì)微機(jī)系統(tǒng)工作方式的可控制性。工作方式的可控制性。狀態(tài)標(biāo)志:狀態(tài)標(biāo)志:6 6個(gè)個(gè)ZFZF零標(biāo)志,運(yùn)算結(jié)果為零標(biāo)志,運(yùn)算結(jié)果為0 0時(shí),時(shí),ZF=1ZF=1。CFCF進(jìn)位標(biāo)志,做加法時(shí)最高位出現(xiàn)進(jìn)位或做減法時(shí)最高位進(jìn)位標(biāo)志,做加法時(shí)最
25、高位出現(xiàn)進(jìn)位或做減法時(shí)最高位 出現(xiàn)借位,出現(xiàn)借位,CF=1CF=1。AFAF輔助進(jìn)位標(biāo)志,通常用于對(duì)輔助進(jìn)位標(biāo)志,通常用于對(duì)BCDBCD算術(shù)運(yùn)算結(jié)果的調(diào)整。算術(shù)運(yùn)算結(jié)果的調(diào)整。OFOF溢出標(biāo)志。有符號(hào)數(shù)運(yùn)算結(jié)果超出溢出標(biāo)志。有符號(hào)數(shù)運(yùn)算結(jié)果超出8/168/16位補(bǔ)碼表示范圍位補(bǔ)碼表示范圍 時(shí),時(shí),OF=1OF=1。PFPF奇偶標(biāo)志,運(yùn)算結(jié)果低奇偶標(biāo)志,運(yùn)算結(jié)果低8 8位中位中l(wèi) l的個(gè)數(shù)為偶數(shù)時(shí),的個(gè)數(shù)為偶數(shù)時(shí),PF=1PF=1。SFSF符號(hào)標(biāo)志,與運(yùn)算結(jié)果的最高位取相同的值。符號(hào)標(biāo)志,與運(yùn)算結(jié)果的最高位取相同的值。控制標(biāo)志:控制標(biāo)志:3 3個(gè)個(gè)TFTF陷阱標(biāo)志陷阱標(biāo)志( (單步標(biāo)志位、跟蹤標(biāo)
26、志單步標(biāo)志位、跟蹤標(biāo)志) )。將該位置。將該位置1 1,將,將 使使8086/80888086/8088進(jìn)入單步工作方式,通常用于程序的調(diào)試。進(jìn)入單步工作方式,通常用于程序的調(diào)試。IFIF中斷允許標(biāo)志,將若該位置中斷允許標(biāo)志,將若該位置1 1,則處理器可以響應(yīng)可,則處理器可以響應(yīng)可 屏蔽中斷,否則不響應(yīng)。屏蔽中斷,否則不響應(yīng)。DFDF方向標(biāo)志,將該位清零,則串操作指令的地址調(diào)整方方向標(biāo)志,將該位清零,則串操作指令的地址調(diào)整方 向?yàn)檫f增,否則,為遞減。向?yàn)檫f增,否則,為遞減。一、一、8086/8088CPU8086/8088CPU的兩種工作模式的兩種工作模式為了適應(yīng)各種應(yīng)用場(chǎng)合,在設(shè)計(jì)為了適應(yīng)各
27、種應(yīng)用場(chǎng)合,在設(shè)計(jì)8086/8088CPU8086/8088CPU芯片時(shí),就考慮芯片時(shí),就考慮了其可工作在兩種模式下,即最小模式與最大模式。了其可工作在兩種模式下,即最小模式與最大模式。最小模式:最小模式:系統(tǒng)中只有一個(gè)系統(tǒng)中只有一個(gè)8086/80888086/8088微處理器,所有的總線微處理器,所有的總線控制信號(hào)都由控制信號(hào)都由8086/80888086/8088直接產(chǎn)生,系統(tǒng)中的總線控制邏輯電直接產(chǎn)生,系統(tǒng)中的總線控制邏輯電路被減到最少,最小模式適用于規(guī)模較小的微機(jī)應(yīng)用系統(tǒng)。路被減到最少,最小模式適用于規(guī)模較小的微機(jī)應(yīng)用系統(tǒng)。最大模式:最大模式:系統(tǒng)中至少包含兩個(gè)微處理器,系統(tǒng)中至少包含
28、兩個(gè)微處理器, 8086/80888086/8088為主處為主處理器,其它的為協(xié)處理器,協(xié)助主處理器工作。而總線控制信理器,其它的為協(xié)處理器,協(xié)助主處理器工作。而總線控制信號(hào)由號(hào)由82888288總線控制器產(chǎn)生。最大模式用在中、大規(guī)模的微機(jī)應(yīng)總線控制器產(chǎn)生。最大模式用在中、大規(guī)模的微機(jī)應(yīng)用系統(tǒng)中。用系統(tǒng)中。2.3 8086/80882.3 8086/8088微處理器工作模式及外部結(jié)構(gòu)微處理器工作模式及外部結(jié)構(gòu)最小模式下的系統(tǒng)結(jié)構(gòu)圖最小模式下的系統(tǒng)結(jié)構(gòu)圖最大模式下的系統(tǒng)結(jié)構(gòu)圖最大模式下的系統(tǒng)結(jié)構(gòu)圖二、二、8086/8088CPU8086/8088CPU的外部引腳的外部引腳 兩種模式下名稱和功能相
29、同的引腳兩種模式下名稱和功能相同的引腳: :VCCVCC、GNDGND: 電源、接地引腳電源、接地引腳,8086/8088,8086/8088采用單一的采用單一的+5V+5V電電 源,但有兩個(gè)接地引腳。源,但有兩個(gè)接地引腳。AD15AD15AD0: AD0: 地址地址/ /數(shù)據(jù)復(fù)用的總線信號(hào)引腳數(shù)據(jù)復(fù)用的總線信號(hào)引腳, ,分時(shí)輸出低分時(shí)輸出低1616 位地址及位地址及1616位數(shù)據(jù)。位數(shù)據(jù)。A19/s6A19/s6A16/s3: A16/s3: 地址地址/ /狀態(tài)復(fù)用信號(hào)引腳狀態(tài)復(fù)用信號(hào)引腳, ,分時(shí)輸出分時(shí)輸出存儲(chǔ)器存儲(chǔ)器高高4 4位位 地址及狀態(tài)信息,其中地址及狀態(tài)信息,其中s6s6始終為
30、低電平,始終為低電平,S5S5用來(lái)用來(lái) 指示中斷允許標(biāo)志指示中斷允許標(biāo)志IFIF的狀態(tài);的狀態(tài);s4s4、s3s3共有四種組共有四種組 合,用來(lái)表示當(dāng)前使用的段寄存器,即:合,用來(lái)表示當(dāng)前使用的段寄存器,即: 00:ES00:ES,01:SS01:SS,10:CS10:CS,11:DS11:DS。 80868086的引腳功能的引腳功能NMINMI、INTR:INTR:中斷請(qǐng)求信號(hào)輸入引腳,引入中斷源向中斷請(qǐng)求信號(hào)輸入引腳,引入中斷源向CPUCPU提出的提出的 中斷請(qǐng)求信號(hào),前者為上升沿有效,后者為高電平中斷請(qǐng)求信號(hào),前者為上升沿有效,后者為高電平 有效,前者為非屏蔽中斷請(qǐng)求,后者為可屏蔽中斷有
31、效,前者為非屏蔽中斷請(qǐng)求,后者為可屏蔽中斷 請(qǐng)求信號(hào)。請(qǐng)求信號(hào)。 : :讀控制輸出信號(hào)引腳,低電平有效,用以指明要執(zhí)讀控制輸出信號(hào)引腳,低電平有效,用以指明要執(zhí) 行一個(gè)對(duì)內(nèi)存單元或行一個(gè)對(duì)內(nèi)存單元或I/OI/O端口的讀操作,具體是讀內(nèi)端口的讀操作,具體是讀內(nèi) 存單元,還是讀存單元,還是讀I/OI/O端口,取決于端口,取決于 控制信號(hào)??刂菩盘?hào)。RDCLKCLK:時(shí)鐘信號(hào)輸入引腳,時(shí)鐘信號(hào)為矩形波信號(hào),占空:時(shí)鐘信號(hào)輸入引腳,時(shí)鐘信號(hào)為矩形波信號(hào),占空 比約為比約為33%33%,即,即1/31/3周期為高電平,周期為高電平,2/32/3周期為低電平,周期為低電平, 8086/80888086/8
32、088的時(shí)鐘頻率(又稱為主頻)為的時(shí)鐘頻率(又稱為主頻)為4.77MHz4.77MHz,即,即 從該引腳輸入的時(shí)鐘信號(hào)的頻率為從該引腳輸入的時(shí)鐘信號(hào)的頻率為4.77MHz4.77MHz。 /M IORESET:RESET:復(fù)位信號(hào)輸入引腳,高電平有效。復(fù)位信號(hào)輸入引腳,高電平有效。8088/8086CPU8088/8086CPU要求復(fù)位要求復(fù)位 信號(hào)至少維持信號(hào)至少維持4 4個(gè)時(shí)鐘周期才能起到復(fù)位的效果,復(fù)位信號(hào)個(gè)時(shí)鐘周期才能起到復(fù)位的效果,復(fù)位信號(hào) 輸入之后,輸入之后,CPUCPU結(jié)束當(dāng)前操作,并對(duì)處理器的標(biāo)志寄存器、結(jié)束當(dāng)前操作,并對(duì)處理器的標(biāo)志寄存器、 IPIP、DSDS、SSSS、ES
33、ES寄存器及指令隊(duì)列進(jìn)行清零操作,而將寄存器及指令隊(duì)列進(jìn)行清零操作,而將CSCS 設(shè)置為設(shè)置為0FFFFH0FFFFH。READY:READY:準(zhǔn)備就緒信號(hào)輸入引腳,高電平有效,準(zhǔn)備就緒信號(hào)輸入引腳,高電平有效,READYREADY引腳接收來(lái)自引腳接收來(lái)自 內(nèi)存或內(nèi)存或I/OI/O端口的響應(yīng)信號(hào),為高時(shí)表明內(nèi)存單元或端口的響應(yīng)信號(hào),為高時(shí)表明內(nèi)存單元或I/OI/O端端 口已經(jīng)準(zhǔn)備好進(jìn)行讀寫操作,為低則表示還沒(méi)有準(zhǔn)備好,口已經(jīng)準(zhǔn)備好進(jìn)行讀寫操作,為低則表示還沒(méi)有準(zhǔn)備好, CPUCPU就會(huì)在總線周期中自動(dòng)插入就會(huì)在總線周期中自動(dòng)插入TwTw等待周期,直到檢測(cè)到高等待周期,直到檢測(cè)到高 電平才進(jìn)行數(shù)
34、據(jù)傳輸。電平才進(jìn)行數(shù)據(jù)傳輸。 測(cè)試信號(hào)輸入引腳,低電平有效測(cè)試信號(hào)輸入引腳,低電平有效,TEST,TEST信號(hào)與信號(hào)與WAITWAIT指令指令 結(jié)合起來(lái)使用,結(jié)合起來(lái)使用,CPUCPU執(zhí)行執(zhí)行WAITWAIT指令后,處于等待狀態(tài),指令后,處于等待狀態(tài), 當(dāng)當(dāng)TESTTEST引腳輸入低電平時(shí),系統(tǒng)脫離等待狀態(tài),繼續(xù)引腳輸入低電平時(shí),系統(tǒng)脫離等待狀態(tài),繼續(xù) 執(zhí)行執(zhí)行WAITWAIT指令后面的指令。指令后面的指令。最小最小/ /最大模式選擇輸入引腳,其高、低輸入電平?jīng)Q定最大模式選擇輸入引腳,其高、低輸入電平?jīng)Q定了了CPUCPU工作在最小模式還是最大模式,接工作在最小模式還是最大模式,接+5V+5V時(shí)
35、,時(shí),CPUCPU工工作于最小模式,接地時(shí),作于最小模式,接地時(shí),CPUCPU工作于最大模式。工作于最大模式。高高8 8位數(shù)據(jù)允許位數(shù)據(jù)允許/ /狀態(tài)復(fù)用信號(hào)輸出引腳。分時(shí)輸出有效狀態(tài)復(fù)用信號(hào)輸出引腳。分時(shí)輸出有效信號(hào),表示高信號(hào),表示高8 8位數(shù)據(jù)線位數(shù)據(jù)線D15D15D8D8上的數(shù)據(jù)有效和上的數(shù)據(jù)有效和S7S7狀態(tài)狀態(tài)信號(hào),但信號(hào),但S7S7未定義任何實(shí)際意義。未定義任何實(shí)際意義。 7/BHE S :/MN MX::TEST最小模式下的引腳最小模式下的引腳中斷響應(yīng)輸出引腳,低電平有效,該信號(hào)是中斷響應(yīng)輸出引腳,低電平有效,該信號(hào)是CPUCPU響應(yīng)中響應(yīng)中斷請(qǐng)求后向中斷源發(fā)出的認(rèn)可信號(hào),并用
36、以通知中斷源,斷請(qǐng)求后向中斷源發(fā)出的認(rèn)可信號(hào),并用以通知中斷源,提供中斷類型碼,該信號(hào)為兩個(gè)連續(xù)的負(fù)脈沖。提供中斷類型碼,該信號(hào)為兩個(gè)連續(xù)的負(fù)脈沖。地址鎖存允許輸出信號(hào),高電平有效,地址鎖存允許輸出信號(hào),高電平有效,CPUCPU通過(guò)該引腳通過(guò)該引腳向地址鎖存器向地址鎖存器8282/82838282/8283發(fā)出地址鎖存允許信號(hào),把當(dāng)發(fā)出地址鎖存允許信號(hào),把當(dāng)前地址前地址/ /數(shù)據(jù)復(fù)用總線上輸出的地址信息鎖存起來(lái)。數(shù)據(jù)復(fù)用總線上輸出的地址信息鎖存起來(lái)。:INTA:ALE數(shù)據(jù)允許輸出引腳,低電平有效,為總線收發(fā)器數(shù)據(jù)允許輸出引腳,低電平有效,為總線收發(fā)器82868286提供一個(gè)控制信號(hào),表示提供一
37、個(gè)控制信號(hào),表示CPUCPU當(dāng)前準(zhǔn)備發(fā)送或接收一個(gè)當(dāng)前準(zhǔn)備發(fā)送或接收一個(gè)數(shù)據(jù)。數(shù)據(jù)。 :DEN/:DT R/:M IO數(shù)據(jù)收發(fā)控制輸出,在使用數(shù)據(jù)收發(fā)控制輸出,在使用8286/82878286/8287作為數(shù)據(jù)總線收作為數(shù)據(jù)總線收發(fā)器時(shí)控制數(shù)據(jù)傳送的方向,高電平表示數(shù)據(jù)由發(fā)器時(shí)控制數(shù)據(jù)傳送的方向,高電平表示數(shù)據(jù)由CPUCPU經(jīng)經(jīng)總線收發(fā)器總線收發(fā)器8286/82878286/8287輸出,否則,數(shù)據(jù)傳送方向相反。輸出,否則,數(shù)據(jù)傳送方向相反。存儲(chǔ)器或存儲(chǔ)器或I/OI/O端口選擇輸出端口選擇輸出, , 低電平表示低電平表示CPUCPU要進(jìn)行要進(jìn)行I/OI/O端口的讀寫操作,低位地址總線上出現(xiàn)的是
38、端口的讀寫操作,低位地址總線上出現(xiàn)的是I/OI/O端口的端口的地址;高電平表示地址;高電平表示CPUCPU要進(jìn)行存儲(chǔ)器的讀寫操作,地址要進(jìn)行存儲(chǔ)器的讀寫操作,地址總線上出現(xiàn)的是要訪問(wèn)的存儲(chǔ)器的地址。總線上出現(xiàn)的是要訪問(wèn)的存儲(chǔ)器的地址。寫控制信號(hào)輸出,低電平有效,與寫控制信號(hào)輸出,低電平有效,與 配合配合實(shí)現(xiàn)對(duì)存儲(chǔ)單元或?qū)崿F(xiàn)對(duì)存儲(chǔ)單元或I/OI/O端口的寫操作控制。端口的寫操作控制。 :WR總線保持請(qǐng)求輸入,高電平有效。這是系統(tǒng)中的其它總線保持請(qǐng)求輸入,高電平有效。這是系統(tǒng)中的其它總線部件向總線部件向CPUCPU發(fā)來(lái)的總線請(qǐng)求信號(hào)。發(fā)來(lái)的總線請(qǐng)求信號(hào)。:HOLD:HLDA總線保持響應(yīng)輸出,高電平
39、有效,表示總線保持響應(yīng)輸出,高電平有效,表示CPUCPU認(rèn)可其它認(rèn)可其它總線部件提出的總線占用請(qǐng)求,準(zhǔn)備讓出總線控制權(quán)??偩€部件提出的總線占用請(qǐng)求,準(zhǔn)備讓出總線控制權(quán)。/M IO最大模式下的引腳最大模式下的引腳210,SSSS2S1S0總線周期000中斷響應(yīng)001讀I/O端口010寫I/O端口011暫停100取指101讀存儲(chǔ)器110寫存儲(chǔ)器111無(wú)作用10,QSQSQS1 QS0性能00無(wú)操作01從指令隊(duì)列的第一個(gè)字節(jié)取走代碼10隊(duì)列為空11除第一個(gè)字節(jié)外,還取走了后續(xù)字節(jié)中的代碼10/,/RQ GTRQ GTLOCK:多處理器系統(tǒng)中的總線請(qǐng)求:多處理器系統(tǒng)中的總線請(qǐng)求/允許線。允許線。:總線
40、封鎖信號(hào),多處理器系統(tǒng)中避免訪問(wèn)沖突。:總線封鎖信號(hào),多處理器系統(tǒng)中避免訪問(wèn)沖突。與與80878087(協(xié)處理器)或(協(xié)處理器)或80898089(I/OI/O處理器)處理器)相連接,保證系統(tǒng)中的各個(gè)處理器同步工相連接,保證系統(tǒng)中的各個(gè)處理器同步工作,實(shí)現(xiàn)總線共享。作,實(shí)現(xiàn)總線共享。2.4 8086/80882.4 8086/8088的總線周期與工作時(shí)序的總線周期與工作時(shí)序 一、一、 8086/8088CPU8086/8088CPU的時(shí)鐘的時(shí)鐘占空比為占空比為1/31/3的矩形波,由的矩形波,由82848284時(shí)鐘發(fā)生器產(chǎn)生。時(shí)鐘發(fā)生器產(chǎn)生。二、二、 8086/8088CPU8086/8088
41、CPU的總線周期的總線周期概念:概念:BIUBIU通過(guò)總線訪問(wèn)一次(讀寫一次數(shù)據(jù)或讀取一次指令)通過(guò)總線訪問(wèn)一次(讀寫一次數(shù)據(jù)或讀取一次指令) 存儲(chǔ)器或存儲(chǔ)器或I/OI/O接口所花的時(shí)間。接口所花的時(shí)間。 1 1個(gè)總線周期個(gè)總線周期=4=4個(gè)個(gè)T T狀態(tài)狀態(tài) + + 若干個(gè)可選的若干個(gè)可選的TwTw狀態(tài)狀態(tài)最小模式下的總線寫操作時(shí)序最小模式下的總線寫操作時(shí)序8086最小模式下的總線寫操作時(shí)序(2)讀總線周期時(shí)序 最小模式下的總線讀操作時(shí)序 (3)中斷響應(yīng)周期時(shí)序 典型的8086中斷時(shí)序圖指令與總線操作指令與總線操作注:注:. 8086/8088. 8086/8088采用小端字節(jié)序(采用小端字節(jié)
42、序(little endianlittle endian),),. . 字型數(shù)據(jù)低字節(jié)所在的低地址單元為偶數(shù)時(shí),稱為字型數(shù)據(jù)低字節(jié)所在的低地址單元為偶數(shù)時(shí),稱為規(guī)則字規(guī)則字(如本例),(如本例), 否則稱為否則稱為非規(guī)則字非規(guī)則字。. 8086. 8086應(yīng)用系統(tǒng)中,應(yīng)用系統(tǒng)中,ABh179BBh179B9h對(duì)于對(duì)于80868086應(yīng)用系統(tǒng):應(yīng)用系統(tǒng):. BHE. BHE與與A0A0的的0000、0101、1010組合分別對(duì)應(yīng)一個(gè)總線周期內(nèi)對(duì)偶地址的組合分別對(duì)應(yīng)一個(gè)總線周期內(nèi)對(duì)偶地址的1616位讀寫位讀寫 (如本例)、對(duì)奇地址的(如本例)、對(duì)奇地址的8 8位讀寫、對(duì)偶地址的位讀寫、對(duì)偶地址的8
43、 8位讀寫。位讀寫。. . 規(guī)則字的讀寫只需一個(gè)總線周期,規(guī)則字的讀寫只需一個(gè)總線周期,非規(guī)則字的讀寫需要兩個(gè)總線周期非規(guī)則字的讀寫需要兩個(gè)總線周期。CDh179BAh179B8hA0=0A0=0BHE=0BHE=0D0D0D7D7D8D8D15D15D0D0D15D15A1A1A19A19A1A1A19A19A0A0A19A19MEMWMEMW偶地址偶地址單元單元奇地址奇地址單元單元圖中圖中步步的操作分別對(duì)的操作分別對(duì)應(yīng)一個(gè)總線周應(yīng)一個(gè)總線周期中的期中的T1T1T4T4時(shí)鐘周期。時(shí)鐘周期。MOV AX,1234hMOV DS,AX MOV BX,0ABCDhMOV 5678h,BX MOV
44、DX, 2A8h NEXT: IN AL, DX OUT DX, AL JMP NEXT執(zhí)行效果?執(zhí)行效果?1. 1. 存儲(chǔ)容量存儲(chǔ)容量8086/80888086/8088有有2020根地址線,可以直接尋址的存儲(chǔ)器單元數(shù)為根地址線,可以直接尋址的存儲(chǔ)器單元數(shù)為1MB1MB。2. 2. 物理地址物理地址8086/80888086/8088可直接尋址可直接尋址1MB1MB的存儲(chǔ)空間,其地址區(qū)域?yàn)榈拇鎯?chǔ)空間,其地址區(qū)域?yàn)?0000H 00000H FFFFFHFFFFFH,訪問(wèn)每個(gè)存儲(chǔ)單元所需的,訪問(wèn)每個(gè)存儲(chǔ)單元所需的2020位地址,稱為存儲(chǔ)單元位地址,稱為存儲(chǔ)單元的的物理地址物理地址,也稱實(shí)際地址
45、。,也稱實(shí)際地址。2.5 8086/80882.5 8086/8088的存儲(chǔ)器和的存儲(chǔ)器和I/OI/O端口組織端口組織一、存儲(chǔ)器組織一、存儲(chǔ)器組織3. 3. 存儲(chǔ)器的分段及邏輯地址存儲(chǔ)器的分段及邏輯地址由于由于CPUCPU內(nèi)部的寄存器都是內(nèi)部的寄存器都是1616位的,為了能夠提供位的,為了能夠提供2020位的位的物理地址,系統(tǒng)中采用了存儲(chǔ)器分段的方法。物理地址,系統(tǒng)中采用了存儲(chǔ)器分段的方法。1MB1MB存儲(chǔ)器存儲(chǔ)器空間邏輯上可劃分為空間邏輯上可劃分為64K64K個(gè)段,兩個(gè)相鄰段的首地址相差個(gè)段,兩個(gè)相鄰段的首地址相差1616個(gè)字節(jié),每個(gè)段最大存儲(chǔ)量個(gè)字節(jié),每個(gè)段最大存儲(chǔ)量64KB64KB。由。
46、由CSCS、DSDS、SSSS、ESES段寄存器來(lái)指定存儲(chǔ)單元所處的段,段寄存器來(lái)指定存儲(chǔ)單元所處的段, 由由IPIP、SPSP、 BXBX、BPBP、SISI、DIDI等地址指針寄存器指定或由指令直接給出等地址指針寄存器指定或由指令直接給出存儲(chǔ)單元相對(duì)于所處段起始地址的存儲(chǔ)單元相對(duì)于所處段起始地址的1616位段內(nèi)偏移量(也位段內(nèi)偏移量(也稱偏移地址或稱偏移地址或有效地址有效地址)。)。以段值以段值: :段內(nèi)偏移量形式表示的地址稱為段內(nèi)偏移量形式表示的地址稱為邏輯地址邏輯地址。(段地址(段地址: :偏移地址)偏移地址)存儲(chǔ)器的每個(gè)段的容量為存儲(chǔ)器的每個(gè)段的容量為64KB64KB,并允許在整個(gè)存
47、儲(chǔ)空間內(nèi)浮動(dòng),并允許在整個(gè)存儲(chǔ)空間內(nèi)浮動(dòng),即段與段之間可以部分重疊、完全重疊、連續(xù)排列,非常靈活。即段與段之間可以部分重疊、完全重疊、連續(xù)排列,非常靈活。4.4.物理地址的形成物理地址的形成 物理地址物理地址= =段值段值16+16+偏移地址偏移地址例如:邏輯地址例如:邏輯地址1234H:0005H1234H:0005H對(duì)應(yīng)的物理地址為對(duì)應(yīng)的物理地址為12345H12345H。注意:注意:. . 物理地址與邏輯地址并不是一一對(duì)應(yīng)的;物理地址與邏輯地址并不是一一對(duì)應(yīng)的;. . 段寄存器與偏移地址寄存器的搭配段寄存器與偏移地址寄存器的搭配5.5.存儲(chǔ)器分段組織帶來(lái)的好處存儲(chǔ)器分段組織帶來(lái)的好處.
48、. 便于操作系統(tǒng)對(duì)應(yīng)用程序進(jìn)行有效的內(nèi)存管理(地址浮動(dòng));便于操作系統(tǒng)對(duì)應(yīng)用程序進(jìn)行有效的內(nèi)存管理(地址浮動(dòng));. . 壓縮代碼長(zhǎng)度。壓縮代碼長(zhǎng)度。 程序代碼和數(shù)據(jù)不超過(guò)程序代碼和數(shù)據(jù)不超過(guò)64KB64KB時(shí)時(shí), ,可使用同一個(gè)段空間。可使用同一個(gè)段空間。6.6.系統(tǒng)專用存儲(chǔ)空間系統(tǒng)專用存儲(chǔ)空間. .中斷矢量區(qū):中斷矢量區(qū):00000H00000H003FFH003FFH共共1K1K字節(jié),用以存放字節(jié),用以存放256256種中斷類種中斷類 型的中斷向量,每個(gè)中斷向量占用型的中斷向量,每個(gè)中斷向量占用4 4個(gè)字節(jié),共個(gè)字節(jié),共2562564=1024=1K4=1024=1K. .顯示緩沖區(qū):顯示
49、緩沖區(qū):B0000HB0F9FHB0000HB0F9FH約約4K4K字節(jié),是單色顯示器的顯示緩字節(jié),是單色顯示器的顯示緩 沖區(qū),存放文本方式下,所顯示字符的沖區(qū),存放文本方式下,所顯示字符的ASCIIASCII碼及屬性碼;碼及屬性碼; B8000HBBF3FHB8000HBBF3FH約約16K16K字節(jié),是彩色顯示器的顯示緩沖區(qū),存放字節(jié),是彩色顯示器的顯示緩沖區(qū),存放 圖形方式下,屏幕顯示象素的代碼。圖形方式下,屏幕顯示象素的代碼。. .啟動(dòng)區(qū):?jiǎn)?dòng)區(qū):FFFF0HFFFFFHFFFF0HFFFFFH共共1616個(gè)單元,用以存放一條無(wú)條件轉(zhuǎn)移個(gè)單元,用以存放一條無(wú)條件轉(zhuǎn)移 指令的代碼,轉(zhuǎn)移到
50、系統(tǒng)的初始化部分。指令的代碼,轉(zhuǎn)移到系統(tǒng)的初始化部分。7. 7. 堆棧堆棧(1) (1) 堆棧的概念堆棧的概念 堆棧是在存儲(chǔ)器中開(kāi)辟的一個(gè)臨時(shí)存儲(chǔ)區(qū),這個(gè)存儲(chǔ)區(qū)的一端堆棧是在存儲(chǔ)器中開(kāi)辟的一個(gè)臨時(shí)存儲(chǔ)區(qū),這個(gè)存儲(chǔ)區(qū)的一端固定(稱為棧底),另一端活動(dòng)(稱為棧頂),且只允許數(shù)據(jù)固定(稱為棧底),另一端活動(dòng)(稱為棧頂),且只允許數(shù)據(jù)從活動(dòng)端(棧頂)進(jìn)出。采用從活動(dòng)端(棧頂)進(jìn)出。采用“后進(jìn)先出后進(jìn)先出”的規(guī)則的規(guī)則 。(2) (2) 堆棧的組織堆棧的組織堆棧指針堆棧指針SPSP總是指向堆棧的棧頂??偸侵赶蚨褩5臈m敗?086/80888086/8088堆棧的生長(zhǎng)方向堆棧的生長(zhǎng)方向是是從大地址向小地址
51、從大地址向小地址,每次,每次入棧操作入棧操作SPSP遞減遞減2B2B(因(因8086/80888086/8088只支持對(duì)字型數(shù)據(jù)的堆棧操作)只支持對(duì)字型數(shù)據(jù)的堆棧操作) 。 (3) (3) 堆棧的功能及工作過(guò)程堆棧的功能及工作過(guò)程功能:保存斷點(diǎn)地址和重要數(shù)據(jù)。功能:保存斷點(diǎn)地址和重要數(shù)據(jù)。入棧操作:以入棧操作:以PUSH AXPUSH AX為例為例 SP SP SP-2 SP-2 (SP+1SP+1)高字節(jié)高字節(jié)AHAH (SPSP) 低字節(jié)低字節(jié)AL AL 出棧操作:以出棧操作:以POP BXPOP BX為例為例 低字節(jié)單元低字節(jié)單元BLBL(SPSP) 高字節(jié)單元高字節(jié)單元BHBH(SP+
52、1SP+1) SP SP SP+2 SP+2SPSP12h34hAHAL低地址低地址高地址高地址SSSS段段PUSH AXPUSH AX34h12hSPSP12h34hAHALSSSS段段POP BXPOP BX34h12hSPSP12h34hBHBLSSSS段段二、二、I/O端口組織端口組織I/O端口的地址編排方式:端口的地址編排方式: 與存儲(chǔ)器統(tǒng)一編址與存儲(chǔ)器統(tǒng)一編址 獨(dú)立編址獨(dú)立編址80X86采用獨(dú)立編址方式采用獨(dú)立編址方式。I/O端口有獨(dú)立的端口有獨(dú)立的64K字節(jié)或字節(jié)或32K字。采用專用的字。采用專用的IN/OUT指令來(lái)訪問(wèn)端口。指令來(lái)訪問(wèn)端口。本章小結(jié)本章小結(jié)2.1 2.1 微處理
53、器的主要性能指標(biāo)微處理器的主要性能指標(biāo) 2.2 8086/80882.2 8086/8088的內(nèi)部結(jié)構(gòu)的內(nèi)部結(jié)構(gòu)(EU+BIU,14(EU+BIU,14個(gè)個(gè)REG,FLAGREG,FLAG各位功能各位功能) ) 2.3 8086/80882.3 8086/8088的引腳功能與工作方式的引腳功能與工作方式( (最小最小/ /最大最大, ,引腳分時(shí)復(fù)用引腳分時(shí)復(fù)用, ,系統(tǒng)結(jié)構(gòu))系統(tǒng)結(jié)構(gòu)) 2.4 8086/80882.4 8086/8088的總線周期與工作時(shí)序(概念,的總線周期與工作時(shí)序(概念,4 4個(gè)個(gè)T T狀態(tài),狀態(tài),TwTw,了解時(shí)序),了解時(shí)序) 2.5 8086/80882.5 808
54、6/8088的存儲(chǔ)器和的存儲(chǔ)器和I/OI/O端口組織(分段結(jié)構(gòu),邏輯地址端口組織(分段結(jié)構(gòu),邏輯地址-物理地址)物理地址)2.6 322.6 32位位80X8680X86微處理器(不要求)微處理器(不要求) 第三章第三章 8086/80888086/8088的指令系統(tǒng)的指令系統(tǒng) 3.1 8086/80883.1 8086/8088的指令格式與尋址方式的指令格式與尋址方式 3.2 8086/80883.2 8086/8088指令系統(tǒng)詳解指令系統(tǒng)詳解3.1 8086/80883.1 8086/8088的指令格式與尋址方式的指令格式與尋址方式 一、一、8086/80888086/8088指令的基本格
55、式指令的基本格式 操作碼操作碼操作數(shù)操作數(shù)(指令長(zhǎng)度為(指令長(zhǎng)度為16B,其中操作碼其中操作碼12B)如:如:B83412hB83412h(其功能是將數(shù)據(jù)(其功能是將數(shù)據(jù)1234h1234h賦值給賦值給AXAX寄存器)寄存器)機(jī)器指令機(jī)器指令如:如:B83412hB83412h的助記符指令形式為的助記符指令形式為 MOV AX MOV AX , 1234h1234h助記符指令(便于理解和記憶)助記符指令(便于理解和記憶)助記符助記符 操作數(shù)操作數(shù),操作數(shù),操作數(shù)(可借助匯編或解釋程序?qū)⒅浄噶钷D(zhuǎn)換為機(jī)器指令)(可借助匯編或解釋程序?qū)⒅浄噶钷D(zhuǎn)換為機(jī)器指令)助記符助記符 目的操作數(shù)目的操作數(shù)
56、源操作數(shù)源操作數(shù)指令中的操作數(shù)可能是:指令中的操作數(shù)可能是:n 立即數(shù):指令中出現(xiàn)的常量型操作數(shù),與操作碼共同存放在代碼段。立即數(shù):指令中出現(xiàn)的常量型操作數(shù),與操作碼共同存放在代碼段。n 寄存器操作數(shù):存放在通用寄存器或段寄存器中。寄存器操作數(shù):存放在通用寄存器或段寄存器中。n 存儲(chǔ)器操作數(shù):存放在存儲(chǔ)器某一個(gè)單元或連續(xù)多個(gè)單元。存儲(chǔ)器操作數(shù):存放在存儲(chǔ)器某一個(gè)單元或連續(xù)多個(gè)單元。n I/OI/O端口操作數(shù):來(lái)源于或要傳送到某端口操作數(shù):來(lái)源于或要傳送到某I/OI/O端口。端口。二、二、8086/80888086/8088指令的尋址方式指令的尋址方式隱含尋址隱含尋址I/OI/O尋址尋址立即尋址
57、立即尋址寄存器尋址寄存器尋址存儲(chǔ)器尋址存儲(chǔ)器尋址直接尋址直接尋址間接尋址間接尋址相對(duì)尋址相對(duì)尋址基址變址尋址基址變址尋址相對(duì)基址變址尋址相對(duì)基址變址尋址8086/8088尋址方式尋址方式(固定尋址)(固定尋址)尋址方式:指令中操作數(shù)所在地址的表示方式。尋址方式:指令中操作數(shù)所在地址的表示方式。. . 一般討論尋址方式時(shí)多指源操作數(shù)的尋址方式。一般討論尋址方式時(shí)多指源操作數(shù)的尋址方式。. . 在轉(zhuǎn)移控制類指令中,尋址方式指的是轉(zhuǎn)移地址的表示方式在轉(zhuǎn)移控制類指令中,尋址方式指的是轉(zhuǎn)移地址的表示方式。1. 1. 隱含尋址(固定尋址)隱含尋址(固定尋址):操作數(shù)在默認(rèn)的寄存器中:操作數(shù)在默認(rèn)的寄存器中
58、指令中未出現(xiàn)操作數(shù),實(shí)際上總是對(duì)特定寄存器進(jìn)行操作。指令中未出現(xiàn)操作數(shù),實(shí)際上總是對(duì)特定寄存器進(jìn)行操作。例如:例如:DAA 指令總是對(duì)指令總是對(duì)AL中的數(shù)進(jìn)行加中的數(shù)進(jìn)行加6調(diào)整。調(diào)整。2. I/O2. I/O尋址尋址:操作數(shù)在:操作數(shù)在I/OI/O端口中端口中IN/OUTIN/OUT指令(對(duì)指令(對(duì)I/OI/O端口進(jìn)行讀端口進(jìn)行讀/ /寫操作)采用寫操作)采用I/OI/O尋址方式。尋址方式。指令中給出了要進(jìn)行輸入指令中給出了要進(jìn)行輸入/ /輸出操作的輸出操作的I/OI/O端口地址。端口地址。8 8位端口地址可直接給出,也可用位端口地址可直接給出,也可用DXDX存放;存放;1616位端口地址必
59、須用位端口地址必須用DXDX存放。存放。例例1 1:IN ALIN AL,50H ; 50H ; 將將50H50H端口的數(shù)據(jù)讀入端口的數(shù)據(jù)讀入ALAL。例例2 2:MOV AXMOV AX,1234H1234H MOV DX MOV DX,5678H5678H OUT DX, AX ; OUT DX, AX ; 將將AXAX中的數(shù)據(jù)中的數(shù)據(jù)1234H1234H輸出到輸出到 ; 5678H; 5678H端口和端口和5679H5679H端口。端口。3. 3. 立即尋址立即尋址:操作數(shù)在存儲(chǔ)器代碼段:操作數(shù)在存儲(chǔ)器代碼段操作數(shù)本身直接出現(xiàn)在指令中(操作數(shù)本身直接出現(xiàn)在指令中(立即數(shù)立即數(shù))。)。例例
60、1 1:MOV CXMOV CX,1234H ; 1234H ; 將將1616位立即數(shù)位立即數(shù)1234H1234H存入存入CXCX例例2 2:MOV ALMOV AL,255 ; 255 ; 將將8 8位立即數(shù)位立即數(shù)255255存入存入ALAL立即數(shù)只能用作指令的源操作數(shù)。立即數(shù)只能用作指令的源操作數(shù)。4. 4. 寄存器尋址寄存器尋址:操作數(shù)在寄存器中:操作數(shù)在寄存器中指令中給出已存放了操作數(shù)的寄存器。指令中給出已存放了操作數(shù)的寄存器。例例1 1:MOV DSMOV DS,AX AX ;將;將AXAX中的中的1616位數(shù)傳送給(存入)位數(shù)傳送給(存入)DSDS。例例2 2:INC BX IN
溫馨提示
- 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫(kù)網(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ì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 英語(yǔ)話劇課的課程設(shè)計(jì)
- 薄荷種植課程設(shè)計(jì)
- 鉆井地球物理課程設(shè)計(jì)
- 香薰臘片制作課程設(shè)計(jì)
- 音樂(lè)品牌課程設(shè)計(jì)理念
- 高級(jí)路由課程設(shè)計(jì)
- 帽子和鳥窩的課程設(shè)計(jì)
- 粗銅精煉課程設(shè)計(jì)
- 防塵面具課程設(shè)計(jì)
- 網(wǎng)購(gòu)課程設(shè)計(jì)軟工
- 大型活動(dòng)聯(lián)合承辦協(xié)議
- 工程項(xiàng)目采購(gòu)與供應(yīng)鏈管理研究
- 2024年吉林高考語(yǔ)文試題及答案 (2) - 副本
- 拆除電纜線施工方案
- 搭竹架合同范本
- Neo4j介紹及實(shí)現(xiàn)原理
- 焊接材料-DIN-8555-標(biāo)準(zhǔn)
- 工程索賠真實(shí)案例范本
- 重癥醫(yī)學(xué)科運(yùn)用PDCA循環(huán)降低ICU失禁性皮炎發(fā)生率品管圈QCC持續(xù)質(zhì)量改進(jìn)成果匯報(bào)
- 個(gè)人股權(quán)證明書
- 醫(yī)院運(yùn)送工作介紹
評(píng)論
0/150
提交評(píng)論