版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
1、獻(xiàn)給為這門(mén)課努力攻關(guān)的所有自考學(xué)生,微機(jī)原理與接口技術(shù)自考練習(xí),馮諾依曼計(jì)算機(jī)的結(jié)構(gòu)與原理,中央處理器,輸入設(shè)備,存儲(chǔ)器,輸出設(shè)備,運(yùn)算器和控制器,(1) 計(jì)算機(jī)的工作由程序控制,程序是一個(gè)指令序列,指令是能被計(jì)算機(jī)理解和執(zhí)行的操作命令; (2) 程序(指令)和數(shù)據(jù)均以二進(jìn)制編碼表示,均存放在存儲(chǔ)器中; (3) 存儲(chǔ)器中存放的指令和數(shù)據(jù)按地址進(jìn)行存取 ; (4) 指令是由CPU一條一條順序執(zhí)行的。,計(jì)算機(jī)系統(tǒng),硬件,主機(jī),微處理器(CPU),運(yùn)算器,控制器,外存儲(chǔ)器硬盤(pán)、軟盤(pán)、光盤(pán),外部設(shè)備,輸入設(shè)備鍵盤(pán)、鼠標(biāo)、光筆、掃描儀,輸出設(shè)備顯示器、打印機(jī)、繪圖儀,軟件,系統(tǒng)軟件,操作系統(tǒng),語(yǔ)言編譯系
2、統(tǒng),數(shù)據(jù)庫(kù)管理系統(tǒng),應(yīng)用軟件,文字處理軟件,圖形軟件,輔助設(shè)計(jì)軟件,計(jì)算機(jī)系統(tǒng)組成框圖,寄存器組,輸入輸出接口,微型計(jì)算機(jī),單片機(jī)(可沒(méi)有ROM),單板機(jī),臺(tái)式PC的物理組成,主板,機(jī)箱、電源,CPU,內(nèi)存條,輸入設(shè)備,輸出設(shè)備,外存儲(chǔ)器,I/O接口,臺(tái)式PC機(jī)(立式)的主機(jī)箱,主板,主板作用: _ ROM BIOS作用:_ CMOS作用: _ _,安裝所有的電子器件、電路與接口,存放基本輸入/輸出系統(tǒng)(BIOS),存放硬件配置信息和系統(tǒng)的基本參數(shù)(日期、時(shí)間、口令等),華碩P5Q主板,CPU插座,內(nèi)存條插座,IDE (ATA) 硬盤(pán)光驅(qū)連接器,PCI插槽,芯片組,各種I/O插口,顯卡插槽,P
3、CI-E插槽,芯片組的作用,是PC機(jī)各組成部分相互連接和通信的樞紐,控制器,寄存器組,運(yùn)算器,CPU的性能,計(jì)算機(jī)的性能主要表現(xiàn)為程序執(zhí)行速度的快慢,由許多因素決定,例如CPU、內(nèi)存、硬盤(pán)、顯卡等,但通常CPU是主要因素,CPU的性能高低主要表現(xiàn)為CPU的速度。,字長(zhǎng)(位數(shù)):指通用寄存器和定點(diǎn)運(yùn)算器的寬度; 指令系統(tǒng):指令的類(lèi)型、數(shù)目和功能等影響程序執(zhí)行速度; 邏輯結(jié)構(gòu):CPU包含的定點(diǎn)運(yùn)算器和浮點(diǎn)運(yùn)算器的數(shù)目、采用的流水線結(jié)構(gòu)和級(jí)數(shù)、指令分支預(yù)測(cè)的機(jī)制、執(zhí)行部件的數(shù)目等內(nèi)核數(shù)目; 高速緩存(cache):其的容量與結(jié)構(gòu)影響速度; 主頻(CPU內(nèi)部時(shí)鐘頻率):它決定著CPU芯片內(nèi)部數(shù)據(jù)傳輸與
4、操作速度的快慢; 總線:決定著CPU與內(nèi)存之間傳輸數(shù)據(jù)速度快慢。,提高CPU性能的3大措施,提高主頻,增加邏輯復(fù)雜度,增加內(nèi)核數(shù)目,處理器性能與其邏輯復(fù)雜性的平方根成正比,若邏輯復(fù)雜性提高1倍,至多能提高40%的性能,采用2個(gè)處理器構(gòu)成一個(gè)雙核處理器,可以提高70%80%的性能,電路與封裝技術(shù)的進(jìn)步,能把多個(gè)處理器做在單個(gè)芯片上,1._; 2 ._ ;3. _。,改進(jìn)CPU結(jié)構(gòu),提高主頻,增加CPU(核)的數(shù)目,1. ”線程“排隊(duì)等候進(jìn)入CPU處理,并行處理,(包含3個(gè)內(nèi)核),為什么“多核”可提高計(jì)算機(jī)性能,提高CPU性能的具體措施,擴(kuò)展CPU的字長(zhǎng):32位 64位 擴(kuò)充CPU指令系統(tǒng):SSE
5、指令 提高CPU主頻:目前已達(dá)4GHz; 加快CPU前端總線的數(shù)據(jù)傳輸速率; 增大cache存儲(chǔ)器容量、增加cache的級(jí)數(shù); 改進(jìn)CPU內(nèi)部的邏輯結(jié)構(gòu); 超標(biāo)量結(jié)構(gòu)(多個(gè)執(zhí)行部件) ; 指令流水線執(zhí)行技術(shù);超線程技術(shù); 采用多內(nèi)核結(jié)構(gòu);,高速緩存(cache),0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,8,9,14,3,4,4,4,10,10,10,主存中的部分信息拷貝在cache存儲(chǔ)器中,cache,主存儲(chǔ)器,CPU,CPU芯片,隨著計(jì)算機(jī)的發(fā)展。存儲(chǔ)器與CPU速度差距愈來(lái)愈大, 從內(nèi)存中存取數(shù)時(shí),CPU往往需要等待,于是出現(xiàn)了cache。它是一種小容量高
6、速緩沖存儲(chǔ)器,它由SRAM組成,直接制作在CPU芯片內(nèi),速度幾乎與CPU一樣快。當(dāng)CPU需要從內(nèi)存讀(寫(xiě))數(shù)據(jù)或指令時(shí),先檢查cache中有沒(méi)有,若有,就直接從cache中讀取,而不用訪問(wèn)主存儲(chǔ)器。,總線BUS,總線的定義: 用于在CPU、內(nèi)存、外存和各種輸入輸出設(shè)備之間傳輸信息的一個(gè)共享的信息傳輸通路及其控制部件。 總線的性能: 數(shù)據(jù)通路寬度;總線工作頻率;每秒傳輸次數(shù) 總線最高傳輸速率 (數(shù)據(jù)通路寬度/8) x 總線工作頻率 x 傳輸次數(shù),總線分類(lèi),數(shù)據(jù)總線:傳輸數(shù)據(jù)信息(雙向,取決于CPU字長(zhǎng)) 地址總線:傳輸?shù)刂沸畔ⅲ▎蜗?,決定內(nèi)存空間) 控制總線:傳輸控制信息(雙向,取決于CPU字長(zhǎng)
7、) 內(nèi)總線:計(jì)算機(jī)內(nèi)部各芯片之間互連,即片總線,沒(méi)統(tǒng)一標(biāo)準(zhǔn)。 系統(tǒng)總線:各插件板之間互連,有通用標(biāo)準(zhǔn)。 外部總線:微機(jī)與外部設(shè)備的連接,也稱(chēng)I/O總線,有通用標(biāo)準(zhǔn)。, ISA(Industry Standard Architecture) PCI(Peripheral Component Interconnect) PCI-Express AGP(Accelerated Graphics Port),系統(tǒng)總線,稱(chēng)為“工業(yè)標(biāo)準(zhǔn)體系結(jié)構(gòu)”,是針對(duì)Intel8088微處理器設(shè)計(jì)的,16位,數(shù)據(jù)傳輸率最高可達(dá)8MB/s?,F(xiàn)在基本不用。,稱(chēng)外部設(shè)備互聯(lián)總線。數(shù)據(jù)傳送寬度為32位,可以擴(kuò)展到64位,數(shù)據(jù)傳
8、輸率可達(dá)133MB/s。,2000年Intel提出了替代PCI總線的新總線技術(shù)。它可工作于各種不同的物理媒介上,從通用的銅線連接到光纖連接。,加速圖形接口, Intel公司配合Pentium處理器開(kāi)發(fā)的總線標(biāo)準(zhǔn),數(shù)據(jù)傳輸率可以達(dá)到533MB/秒以上。,PCI-E的優(yōu)點(diǎn),PCI-E即“PCI-Express” 1.傳輸速率高: x1速率可達(dá)250MB/s, x16速率可達(dá)5GB/s(2.0版速率提高為2倍,3.0版為4倍) 2.適應(yīng)性好:包括x1、x4、x8 及x16,,外部總線, USB(Universal Serial Bus)通用串行總線接口是為解決PC與周邊設(shè)備的通用連接而設(shè)計(jì)的,使所有
9、的低速設(shè)備,都可以連接到統(tǒng)一的USB接口上。允許“熱插拔”,實(shí)現(xiàn)安裝自動(dòng)化。 IEEE 1394是一種工業(yè)標(biāo)準(zhǔn)的高速串行總線,由蘋(píng)果公司率先創(chuàng)立,又稱(chēng)Firewire即火線。它的特點(diǎn)是傳輸速度快,現(xiàn)在確定為400MB/s,以后可望提高到800MB/s、1.6GB/s、3.2GB/s。所以傳送數(shù)字圖像信號(hào)也不會(huì)有問(wèn)題。 SCSI(Small Computer System Interface,小型計(jì)算機(jī)系統(tǒng)接口) 可與各種采用SCSI接口標(biāo)準(zhǔn)的外部設(shè)備相連,如硬盤(pán)驅(qū)動(dòng)器、掃描儀、光盤(pán)、打印機(jī)和磁帶驅(qū)動(dòng)器等。但它價(jià)格相對(duì)于IDE來(lái)說(shuō)也十分昂貴,因此在普通家用電腦上不常用,一般應(yīng)用于高端工作站或者服
10、務(wù)器領(lǐng)域。,2020/8/19,有專(zhuān)門(mén)的設(shè)備名COM1 和 COM2。 是電子工業(yè)協(xié)會(huì)(EIA) 所制定的異步傳輸標(biāo)準(zhǔn)接口 RS-232(外部總線) 。在TxD和RxD上:邏輯1(MARK)=-3V-15V 邏輯0(SPACE)=+315V。與TTL邏輯電平不一樣,可用TTL/EIA電平轉(zhuǎn)換器進(jìn)行,如MC1488,MC1489IC。插座分為9針或25針兩種,目前最普遍的用途是連接鼠標(biāo)和調(diào)制解調(diào)器。,串行接口,并行接口,常被稱(chēng)為打印口或并行打印機(jī)適配器,被賦予專(zhuān)門(mén)的設(shè)備名LPT,為區(qū)別同一臺(tái)計(jì)算機(jī)上的多個(gè)并行端口,依次稱(chēng)為L(zhǎng)PT1、LPT2等。并行接口可同時(shí)傳輸8路信號(hào),因此能夠一次并行傳遞完整
11、的一個(gè)字節(jié)的數(shù)據(jù)。,I/O設(shè)備接口,顯示器 接口,麥克風(fēng) 音 箱,鍵盤(pán)接口,并行口,USB 接口,以太網(wǎng) 雙絞線接口,串行口,鼠標(biāo)器 接口,(安裝在主板上的I/O設(shè)備接口),I/O接口: I/O設(shè)備與主機(jī)之間的連接器 包括:插頭/插座的形式、通訊規(guī)程和電器特性等,常用的I/O接口及其性能參數(shù),USB接口,通用串行總線式接口(Universal Serial Bus ) 高速、可連接多個(gè)設(shè)備、串行傳輸 傳輸速率: USB的1.1版:1.5 Mb/s和12 Mb/s USB2.0版:最高達(dá) 480Mb/s(60MB/s) USB3.0版:最高達(dá) 3.2Gbps(400MB/s) USB2.0使用4
12、線連接器,體積小,符合即插即用規(guī)范(Plug / + - * % START:MOV AX,DATA ; MOV DS,AX ; MOV ES,AX ; ; MOV AH,4CH ; INT 21H CODE ENDS END START,定義數(shù)據(jù)段,數(shù)據(jù)定義偽指令序列,定義堆棧段,數(shù)據(jù)定義偽指令序列,定義代碼段,說(shuō)明源程序中定義的段由哪個(gè)段寄存器尋址,取數(shù)據(jù)段基址,建立數(shù)據(jù)段的可尋址性,建立附加數(shù)據(jù)段的可尋址性,核心程序段:指令序列,返回操作系統(tǒng),段定義語(yǔ)句格式,段名 SEGMENT 定位類(lèi)型,組合類(lèi)型,字長(zhǎng)選擇,類(lèi)別 (段體) 段名 ENDS,定位類(lèi)型:指段起始地址,有四種:,組合類(lèi)型:告
13、知LINK程序本段與其它段的組合連接關(guān)系。若缺省,表示該段為獨(dú)立段。 5種類(lèi)型:, PUBLIC:該段連接時(shí)將與其它同名段連接成一連續(xù)段 STACK:將多個(gè)同名堆棧段連接成一連續(xù)段,SP設(shè)置在第一個(gè)堆棧段的開(kāi)始 COMMON:該段在連接時(shí)與其它同名段有相同的起始地址,所以會(huì)產(chǎn)生覆蓋 MEMORY 本段在同名段的最高地址處 AT 表達(dá)式 :段起始地址由表達(dá)式算出,字長(zhǎng)選擇:定義段中使用的偏移地址和寄存器的字長(zhǎng),類(lèi)別:同類(lèi)別的段在連接時(shí)按先后順序連接起來(lái)。,USE16:16位尋址方式,最大段長(zhǎng)度為64KB; USE32:32位尋址方式,最大段長(zhǎng)度為4GB。,典型段類(lèi)別有:DADTSTACKCODE
14、,2、等號(hào)語(yǔ)句 = 該語(yǔ)句功能與EQU相同, 只是它可以重新定義。,符號(hào)定義,1、等值語(yǔ)句 EQU EQU語(yǔ)句不能重新定義,必須先定義,后使用。,例如: X EQU 50 Y EQU X+10 COUNT EQU BP+2 NUM EQU CX,例如: PORT1=30H PORT1=PORT1+20H PORT1=648,數(shù)據(jù)定義偽指令,格式:符號(hào)名 DB/DW/DD/DF/DQ/DT 數(shù)據(jù)項(xiàng)序列 功能:為數(shù)據(jù)項(xiàng)分配一個(gè)字節(jié)/字/雙字/長(zhǎng)字/四字/十字節(jié)的存儲(chǔ)空間,可以賦初值,也可以用一個(gè)符號(hào)名與之聯(lián)系。,VAR1 DB ? ; STR DB ABCDE ; NUM DT 123H ; AR
15、RAY DW 20 DUP(1) ; BUFF DB 6 DUP(?) ; COUNT DB 20,30,40 ;,給出解釋,給VAR1分配一字節(jié),不賦初值,給NUM分配十字節(jié),賦初值123H,給字符串STR分配五字節(jié),賦值,給ARRAY分配20個(gè)字,初值為1,相當(dāng)于 DB ?,?,?,?,?,?,給COUNT分配三字節(jié),賦初值,數(shù)據(jù)定義偽指令,存儲(chǔ)器 低端,00H,寫(xiě)出數(shù)據(jù)定義程序 DATA SEGMENT D1 D2 D3 D4 D5 DATA ENDS,DB 10,10H,DW 100H,-5,DD 320, 0FFFDH,DB A ,B,D5 DD AB,標(biāo)號(hào)定義偽指令,格式:符號(hào)名
16、LABEL 類(lèi)型 功能:為標(biāo)號(hào)、指令單元、過(guò)程或變量建立新的符號(hào)名,建立另一種類(lèi)型屬性。 標(biāo)號(hào)意義:它指定了機(jī)器指令的起始地址,可以作為轉(zhuǎn)移指令如JMP、JZ、JNA等的轉(zhuǎn)移目標(biāo),對(duì)標(biāo)號(hào)、指令單元或過(guò)程,其類(lèi)型有: NEAR(可缺省): FAR:,對(duì)變量,其類(lèi)型有: BYTE/WORD/DWORD/FWORD/QWORD/TBYTE。,字節(jié),字,雙字,長(zhǎng)字,四字,十字節(jié),32-bit,段內(nèi)調(diào)用,段間調(diào)用,指定地址偽指令,格式:ORG 偏移地址 ORG $偏移地址 注:以給定的偏移地址或由$給出的當(dāng)前地址加上指定的偏移地址作為當(dāng)前開(kāi)始分配和使用的偏移地址。 符號(hào)$當(dāng)前位置計(jì)數(shù)器,從0F0H開(kāi)始安
17、排數(shù)據(jù),跳過(guò)10H個(gè)字節(jié)安排數(shù)據(jù),(100H)=1,(102H)=106H,ORG 0F0H ; ORG $+10H ; DW 1,$+4 ;,題:解釋下列偽指令,過(guò)程和宏命令定義偽指令,過(guò)程名 PROC NEAR / FAR RET 過(guò)程名 ENDP,過(guò)程允許嵌套,嵌套深度(層數(shù))只受堆棧的限制。,宏體是指令和偽指令序列,它決定宏的功能,宏也允許嵌套; 宏與過(guò)程相似,也可由其它程序用宏名直接調(diào)用。,過(guò)程可由其它程序用CALL指令調(diào)用,執(zhí)行完后用RET指令返回調(diào)用程序。,過(guò)程定義偽指令格式:,宏定義偽指令格式:,宏名 MACRO 形式參數(shù)表 ENDM,宏操作可以通過(guò)形式參數(shù)直接傳遞數(shù)據(jù)而過(guò)程不
18、能。編程較后者容易。 匯編時(shí),宏調(diào)用幾次,就加入幾段。而過(guò)程只在匯編時(shí)產(chǎn)生一次目標(biāo)代碼。所以宏占用存儲(chǔ)空間多。宏執(zhí)行速度稍快。宏適合于代碼較短,過(guò)程適合于調(diào)用頻繁情況。,定義一個(gè)帶3個(gè)形參的宏,SUM=AD1+AD2,宏調(diào)用,用實(shí)際參數(shù)BX、 24、DX取代對(duì)應(yīng)的形參,練習(xí)題:解釋下列宏 CODE SEGMENT ADDUP MACRO AD1,AD2,SUM ; MOV AX,AD1 ; ADD AX,AD2 MOV SUM,AX ENDM ADDUP BX,24,DX ; ,MOV 傳送指令,格式: MOV reg,reg/mem XCHG 交換指令,格式: XCHG reg,reg/me
19、m XLAT 換碼指令,格式: XLAT ;alds:bx+al LEA(load effective address) 地址傳送指令 LDS(load pointer into DS) LES (load pointer into ES) 格式:LEA/ LDS /LES r16,mem ; PUSH 進(jìn)棧指令,格式: PUSH r16/m16/seg; SPSP-2 POP 出棧指令,格式: POP r16/m16/seg; SPSP2 PUSHF 標(biāo)志進(jìn)棧指令,格式: PUSHF ;SS:SPFLAGS POPF 標(biāo)志出棧指令,格式: POPF ;FLAGSSS:SP,數(shù)據(jù)傳送指令,MO
20、V BX,OFFSET DATA LEA BX,DATA,等價(jià)于,不能內(nèi)存數(shù)據(jù)傳送或交換,mem的有效地址EA傳送到16位寄存器,指8086CPU尋找指令和操作數(shù)存放的位置的方式。,尋址方式,操作數(shù) 尋址方式,指令的 尋址方式,直接尋址,間接尋址,立即數(shù)尋址,寄存器尋址,寄存器間接尋址,相對(duì)寄存器尋址,基址-變址尋址,相對(duì)基址變址尋址,段內(nèi)尋址,段間尋址,尋址方式,基址寄存器數(shù)據(jù)段BX 、堆棧段BP ; 變址寄存器SI、DI。,物理地址(EA)=段地址16+有效地址(EA),MOV AX, 2000H; MOV AX,3000H; MOV DS,AX; MOV AX, SI ; MOV AX,
21、BP; MOV AL,BH; MOV AX,ES:2000H; MOV AX,DS:BP; MOV AX,COUNTSI; MOV AX,BXSI ; MOV AX,BX+SI;,立即數(shù)尋址,寄存器尋址,寄存器間接尋址(DS) 16+(SI),寄存器尋址,寄存器間接尋址(DS) 16+( BP ),相對(duì)寄存器尋址(DS)16+(SI)+COUNT,基址-變址尋址(DS)16+ (BX)+ (SI),同上,寄存器間接尋址(SS)16+(BP),直接尋址(DS)16+2000H,直接尋址(ES)16+2000H,mov ax,1234h ; mov bx,5678h ; xchg ax,bx ;
22、xchg ah,al ; mov bx,100h mov al,03h xlat ; mov bx,0400h mov si,3ch lea bx,bx+si+0f62h; mov word ptr 3060h,0100h mov word ptr 3062h,1450h les di,3060h; lds si,3060h;,題:給出每條指令的結(jié)果,BX0400h003ch0f62h139EH,es=1450h,di=0100h,ds=1450h,si=0100h,ax=1234h,bx=5678h,ax=5678h,bx=1234h,ax=7856h,al ds:103H,修改CS、IP的
23、指令,mov指令可以修改除CS、IP和標(biāo)志寄存器以外的寄存器的值。修改除CS、IP的值用主要用jmp轉(zhuǎn)移指令。,段內(nèi)轉(zhuǎn)移 只改IP jmp 標(biāo)號(hào),無(wú)條件轉(zhuǎn)移 條件轉(zhuǎn)移 循環(huán)指令 調(diào)用指令 中斷,轉(zhuǎn)移指令分類(lèi),段間轉(zhuǎn)移: 同時(shí)改CS和IP,JE=JZ,JS,JB,JA,JG,JL,JCXZ 0 負(fù) 低于 高于 大于 小于 CX=0,格式:LOOP 標(biāo)號(hào) 當(dāng)CX0 ,IP=標(biāo)號(hào)IP,每次循環(huán)CX-1。,直接轉(zhuǎn)移jmp far ptr 標(biāo)號(hào) 間接轉(zhuǎn)移jmp dword ptr ,格式: CALL 子程序名,返回指令 ret,短轉(zhuǎn)移jmp short ptr 標(biāo)號(hào) (IP)=(IP)+8位偏移量,近轉(zhuǎn)
24、移 jmp near ptr 標(biāo)號(hào) (IP)=(IP)+16位偏移量,格式: INT 中斷號(hào),返回指令 ret,jmp 2AE3:3 ; jmp ax ; JMP CX ; JMP WORD PTR BX; JMP DWORD PTR BX ;,(CS)=2AE3H,(IP)=3,(IP)=(ax),題:寫(xiě)出下列語(yǔ)句修改的值。,(IP)=(CX),(IP)=(BX),(CS)= BX+2 ,(IP)= BX,BX內(nèi)存單元中的雙字的低字修改IP,高字修改CS的值。,題: TABLE = 20A2H ,(BX) = 1256H,(SI) = 528EH, (DS) = 2000H, (232F8H
25、) = 3280H , (264E4H) = 2450H,寫(xiě)出下列語(yǔ)句修改的值。 JMP BX ; JMP TABLEBX ; JMP WORD PTR TABLEBX ; JMP BXSI; JMP WORD PTR BXSI ;,(IP)=1256H,(IP)=3280H,(IP)=2450H,(IP)=3280H,(IP)=2450H,code1 segment jmp far ptr next code1 ends,code2 segment next: . code2 ends,段間轉(zhuǎn)移示意圖:,題:用DEBUG查看內(nèi)存,結(jié)果如下: 2000:1000 BE 00 06 00 00
26、00 . 則此時(shí),CPU執(zhí)行指令: mov ax,2000h mov es,ax jmp dword ptr es:1000h 后, (CS)= ? (IP)= ?,06 00 00 00,BE 00,堆棧操作,進(jìn)棧PUSH一次,指針SP-2;出棧POP一次,指針SP+2;,任意時(shí)刻,SS:SP指向棧頂元素,運(yùn)算符,算術(shù)運(yùn)算:+,-,*,/,MOD, SHL, SHL 邏輯運(yùn)算:AND,OR,NOT,XOR 關(guān)系運(yùn)算:EQ,NE,LT,GT,LE,GE 取值運(yùn)算和屬性運(yùn)算:OFFSET , SEG, TYPE, LENGTH, SIZE,PTR ,THIS 其它運(yùn)算:(), ,算術(shù)運(yùn)算符,ad
27、dadcsubsbbincdeccmpmulimuldividivaaa,算術(shù)運(yùn)算指令:,加后轉(zhuǎn)換為非組合BCD,有符號(hào)乘,有符號(hào)除,比較,+1,-1,帶借位減,帶進(jìn)位減,乘法,除法,減法,加法,MOV AX , 7896H; ADD AL , AH;,(AH)=78H,(AL)=96H,(AL)=0EH,(OPRD1) (OPRD1) + (OPRD2),(DX)=0002H, (AX)=0F365H, (BX)=0005H,(CX)=0F024H 指令序列為 ADD AX,CX; ADC DX,BX;,(AX)=0D389H,SF=1, CF=1,OF=0,(DX)=0008H,SF=0,
28、 CF=0,OF=0,題1:,題2:,(OPRD1) (OPRD1)+(OPRD2)+CF,題3:,cmp ax,ax;,結(jié)果不在ax中保存,僅影響flag的相關(guān)各位。,ZF=1,PF=1,SF=0,CF=0,OF=0,題4:,mov ax,8 mov bx,3 cmp ax,bx;,(ax)=8,ZF=0,PF=1,SF=0,CF=0,OF=0。,最低位,最高位,CF,0,(a)算術(shù)/邏輯左移 SAL/SHL,最低位,最高位,CF,(b)算術(shù)右移 SAR,最低位,最高位,CF,(c)邏輯右移 SHR,0,非循環(huán)移位指令,移位指令格式:,SAL mem/reg,n/CL,移位操作代替乘除法可提
29、高運(yùn)算速度,算術(shù)移位:把操作數(shù)看做有符號(hào)數(shù); 邏輯移位:把操作數(shù)看做無(wú)符號(hào)數(shù)。,符號(hào)位不變,移位操作影響C,P,S,Z,O標(biāo)志,當(dāng)沒(méi)有溢出時(shí), 左移1位 右移1位,操作數(shù)2,操作數(shù)/2,最低位,最高位,CF,(a) ROL,最低位,最高位,CF,(c) RCL,最低位,最高位,CF,(b) ROR,最低位,最高位,CF,(d) RCR,循環(huán)移位指令,mov al,75h; and al,32h; or al,71h; xor al,0f1h; not al ;,題:寫(xiě)出每個(gè)指令的結(jié)果,AL75H,AL30H,AL71H,AL80H,AL7FH,TEST操作與AND指令類(lèi)似,但不將”與”的結(jié)果送
30、回,只影響標(biāo)志位。 如TEST AL,80H ;,雙操作數(shù)邏輯指令A(yù)ND、OR、XOR和TEST置CFOF0,根據(jù)結(jié)果設(shè)置SF、ZF和PF狀態(tài),而對(duì)AF未定義。 單操作數(shù)邏輯指令NOT不影響標(biāo)志位。,所有位置反,將某位置0,將某位置1,置反某位,檢查AL中D7=1?,邏輯運(yùn)算符,題:給出每條指令結(jié)果,mov dx,6075h;DX01100000 01110101B shl dx,1; ; sar dx,1; ; shr dx,1; ; mov cl,4; sar dx,cl; ;,DX11000000 11101010B,CF0,SF1、ZF0、PF0,DX11100000 01110101
31、B,CF0,SF1、ZF0、PF0,DX01110000 00111010B,CF1,SF0、ZF0、PF1,CL4,標(biāo)志不變,DX00000111 00000011B,CF1,SF0、ZF0、PF1,關(guān)系運(yùn)算符,注:SIZE=LENGTHTYPE,取值運(yùn)算符,屬性運(yùn)算符,movsbmovswcmpsbcmpswrep 格式:REP/REPZ/REPNZ 串操作指令 每執(zhí)行一次CX-1,CX=0時(shí)停。 串操作中由DF決定串傳送的方向,當(dāng)DF=0時(shí) 為正方向(由低地址向高地址);當(dāng)DF=1是為負(fù) 方向(由高地址向低地址)。 串操作中,源串地址默認(rèn)在DS:SI中,目的串地址默認(rèn)在ES:DI中。,串
32、處理指令,方向標(biāo)志DF 置0 _ 置1 _ 中斷標(biāo)志IF 置0 _ 置1 _ 近位標(biāo)志CF 置0 _ 置1 _ 取反 _ 空操作指令 _ 暫停機(jī)指令 _ 等待指令 _,控制指令,CLD,STD,CLI,STI,CLC,STC,CMC,NOP,HLT,WAIT,輸入輸出指令,8086用于尋址外設(shè)端口(Port)的地址線為16條,端口最多為21665536(64K)個(gè),端口號(hào)為0000HFFFFH 每個(gè)端口用于傳送一個(gè)字節(jié)的外設(shè)數(shù)據(jù) 直接尋址只用于尋址00HFFH前256個(gè)端口間接尋址可用于尋址全部64K個(gè)端口,DX寄存器的值就是端口號(hào),大于FFH的端口只能采用間接尋址方式,端口輸入IN 直接尋址
33、格式:,端口輸出OUT 直接尋址格式:,間接尋址格式:,間接尋址格式:,MOV DX,PORT OUT DX , AL/AX,OUT PORT, AL/AX,MOV DX,PORT IN AL/AX, DX,IN AL/AX, PORT,DOS 功能調(diào)用,DOS 功能包含了設(shè)備管理、目錄管理、文件管理等多個(gè)子功能的功能包,用軟中斷指令調(diào)用,中斷類(lèi)型碼固定為21H,各子功能采用功能號(hào)來(lái)區(qū)分。,調(diào)用格式: MOV AH,功能號(hào) INT 21H,常用功能號(hào):1, 2, 5, 9, 10, 4CH,鍵入字符AL中,屏幕顯示DL中字符,打印DL中字符,屏幕顯示DS:DX地址開(kāi)始的字符串,結(jié)束符。,字符串
34、鍵入開(kāi)始地址DS:DX。,程序結(jié)束,返回操作系統(tǒng),執(zhí)行以下程序: MOVAH,02 MOVDL,41H INT21H 運(yùn)行結(jié)果:,屏幕顯示A,題1,題2,題3,DAT1 DB 20 DUP(?) LEA DX,DAT1 MOV AH,0AH INT 21H 運(yùn)行結(jié)果:,輸入少于20個(gè)字的字符串,DATA SEGMENT MESS1 DB Input String: 0DH,0AH,$ DATA ENDS CODE SEGMENT MOVAH,09 MOVDX,OFFSET MESS1 INT21H,屏幕顯示 Input String:,換行,回車(chē),運(yùn)行結(jié)果:,注:優(yōu)先級(jí)相同的運(yùn)算符操作順序?yàn)橄?/p>
35、左后右。,運(yùn)算符的優(yōu)先級(jí)表,微機(jī)接口,接口(Interface) 端口 接口的功能 :數(shù)據(jù)暫存(緩沖、鎖存與驅(qū)動(dòng))、信號(hào)聯(lián)絡(luò)、地址譯碼和端口讀寫(xiě)、數(shù)據(jù)轉(zhuǎn)換和中斷管理。,CPU與外設(shè)之間起連接作用的電路。,接口電路內(nèi)的寄存器,端口的分類(lèi),控制口-存放控制信息-由CPU寫(xiě)入,端口編址方式,獨(dú)立編址。使用IN/OUT指令對(duì)端口進(jìn)行讀/寫(xiě),與存儲(chǔ)器統(tǒng)一編址。與存儲(chǔ)器一樣讀/寫(xiě),數(shù)據(jù)口-存放數(shù)據(jù)信息,狀態(tài)口-存放狀態(tài)信息-由CPU讀出,DMA批量存取,CPU與I/O,程序查詢(xún),主機(jī)與外設(shè)的信息交換方式,外設(shè)與內(nèi)存,程序控制,無(wú)條件傳送,一般外設(shè)需要查詢(xún)其狀態(tài)是否就緒后,才數(shù)據(jù)傳送.外設(shè)未準(zhǔn)備好時(shí)CPU反
36、復(fù)查詢(xún)等待,浪費(fèi)CPU資源,外設(shè)簡(jiǎn)單如開(kāi)關(guān)LED顯示器,不需要查詢(xún)外設(shè)的狀態(tài),外設(shè)具有申請(qǐng)CPU服務(wù)的主動(dòng)權(quán),當(dāng)設(shè)備準(zhǔn)備好時(shí),就可以向CPU提出中斷請(qǐng)求,使CPU暫時(shí)停下目前的工作而和外設(shè)進(jìn)行一次數(shù)據(jù)傳輸,完成后CPU繼續(xù)原來(lái)的工作。,DMA請(qǐng)求的優(yōu)先權(quán)比中斷請(qǐng)求高即CPU優(yōu)先響應(yīng)DMA請(qǐng)求。,無(wú)條件傳送方式,優(yōu)點(diǎn):簡(jiǎn)單;缺點(diǎn):數(shù)據(jù)交換雙方配合能力差、可靠性低。,輸出指令序列: Mov dx , port1 ; Mov al , data Out dx ,al,輸入指令序列: Mov dx , port2 ; In al , dx ;,外設(shè)接口提供狀態(tài),CPU通過(guò)端口讀取狀態(tài);準(zhǔn)備好,數(shù)據(jù)輸入
37、給CPU;未,再查。,查詢(xún)輸入方式,mov dx , PORT2;讀入狀態(tài) next:In al ,dx test al ,1;判READY=1? jz next ; READY=0,等待 mov dx , PORT1; In al , dx ; READY=1,輸入數(shù)據(jù),查詢(xún)程序,外設(shè)接口提供狀態(tài),CPU通過(guò)端口讀取狀態(tài);不忙,CPU輸出數(shù)據(jù)給外設(shè);忙,再查。,查詢(xún)輸出方式,C P U,輸出型外設(shè)如打印機(jī),PORT2,PORT1,mov dx , PORT2;讀入狀態(tài) next:In al ,dx test al ,1;判BUSY=1? jnz next ; BUSY=1,忙,等待 mov
38、dx , PORT1; In al , dx ; BUSY=0,輸出數(shù)據(jù),查詢(xún)程序,輸出 鎖存,DB,中斷方式,查詢(xún)方式是CPU主動(dòng),于是CPU忙;若外設(shè)主動(dòng),一旦準(zhǔn)備好就向CPU發(fā)請(qǐng)求,這樣就可以節(jié)約CPU資源。平時(shí)CPU執(zhí)行正常的程序,接到外設(shè)請(qǐng)求,就中斷當(dāng)前的操作,轉(zhuǎn)向執(zhí)行為外設(shè)服務(wù)的子程序-中斷服務(wù)子程序,結(jié)束后又回到斷點(diǎn)處繼續(xù)運(yùn)行原來(lái)的程序。,現(xiàn)場(chǎng)保護(hù) CS、IP及FR壓棧,恢復(fù)現(xiàn)場(chǎng) CS、IP及FR出棧,中斷服務(wù)程序段地址送入CS中,偏移地址送入IP中。,關(guān)中斷,開(kāi)中斷,push ax;保護(hù)現(xiàn)場(chǎng) push bx sti;開(kāi)中斷 ;中斷處理 cli;關(guān)中斷 pop bx;恢復(fù)現(xiàn)場(chǎng) p
39、op ax sti;開(kāi)中斷 reti;中斷返回,一般中斷程序,返回,中斷處理原則,CPU每執(zhí)行一條指令,其內(nèi)的中斷請(qǐng)求檢測(cè)電路都要檢測(cè)中斷請(qǐng)求輸入端的狀態(tài): 先測(cè)NMI,若NMI=1有效,則CPU進(jìn)入非屏蔽中響階段。 若NMI=0無(wú)效,則檢測(cè)INTR的狀態(tài)。 若INTR=1有效且IF=1開(kāi)中斷 ,則CPU進(jìn)入可屏蔽中響階段。 若INTR有效但 IF=0關(guān)中斷 ,則CPU執(zhí)行下一條指令。 若INTR無(wú)效,則CPU執(zhí)行下一條指令。,當(dāng)多個(gè)中斷源同時(shí)提出中請(qǐng)時(shí),CPU按優(yōu)先級(jí)的高低有高到低依次為外設(shè)服務(wù)。,CPU,ACK,D觸發(fā)器,ACK通過(guò)中斷請(qǐng)求觸發(fā)器向CPU請(qǐng)求中斷服務(wù),INTA應(yīng)答后,請(qǐng)求信
40、號(hào)撤消,CPU從三態(tài)緩沖器讀取中斷號(hào),進(jìn)行中斷服務(wù),中斷向量表,掉線或關(guān)機(jī)形成的中斷,下次能夠從上次的地方接著運(yùn)行.,TF=1時(shí),CPU在每條指令執(zhí)行后自動(dòng)產(chǎn)生中斷,INT n:由中斷指令引起的中斷。其中n是中斷號(hào)。,中斷向量中斷服務(wù)程序的入口地址 中斷向量= 中斷類(lèi)型碼 n 4,8086中斷系統(tǒng)支持256種中斷,每種中斷都一個(gè)中斷類(lèi)型碼,分別 對(duì)應(yīng) 00H0FFH,又分為兩大類(lèi):內(nèi)部中斷和外部中斷,內(nèi)部中斷: 除法錯(cuò)中斷(00H); 單步中斷(01H) 斷點(diǎn)中斷(03H) 溢出中斷(04H) 軟件中斷INT n 外部中斷: 非屏蔽中斷(NMI) (02H) 可屏蔽中斷(INTR) (08H0
41、FH),硬件方式的中斷優(yōu)先級(jí)的判斷,硬件優(yōu)先權(quán)排隊(duì)電路:又稱(chēng)菊花鏈?zhǔn)絻?yōu)先權(quán)排隊(duì)電路。它是利用外設(shè)連接在排隊(duì)電路的物理位置來(lái)決定其中斷優(yōu)先權(quán)的,排在最前面的優(yōu)先權(quán)最高,排在最后面的優(yōu)先權(quán)最低。,低電平有效,高電平有效,1#中斷請(qǐng)求,響應(yīng),返回,1#中斷 服務(wù)程序,2#中斷請(qǐng)求,響應(yīng),返回,2#中斷 服務(wù)程序,3#中斷請(qǐng)求,響應(yīng),返回,3#中斷 服務(wù)程序,原主程序,中斷優(yōu)先級(jí)3#2#1#,中斷嵌套運(yùn)行,按照中斷優(yōu)先級(jí)響應(yīng)實(shí)例,多中斷響應(yīng),注意:級(jí)數(shù)越小越高,處理機(jī)優(yōu)先級(jí)改變后響應(yīng)中斷的過(guò)程,中斷優(yōu)先級(jí)改變,中斷請(qǐng)求,主程序,中斷服務(wù)程序,時(shí)間t,I1,I2,I3,I4,I1,I2調(diào)高,I3調(diào)高,I
42、4,原優(yōu)先級(jí),高,低,數(shù)據(jù)總線緩沖器,讀/寫(xiě) 邏輯,級(jí)聯(lián)緩沖/比較器,中斷服務(wù)寄存器,中斷優(yōu)先級(jí)裁決器,中斷屏蔽寄存器,控制邏輯,8259A功能與結(jié)構(gòu),8259A是一種可編程中斷控制器, 把當(dāng)前優(yōu)先級(jí)最高的中斷請(qǐng)求送到CPU的INTR端,為CPU提供中斷類(lèi)型碼。一片Intel 8259可管理8個(gè)中斷請(qǐng)求,可以指定優(yōu)先級(jí),可以通過(guò)編程屏蔽某些中斷請(qǐng)求,或者通過(guò)編程改變中斷類(lèi)型碼。允許9片8259級(jí)聯(lián),構(gòu)成64級(jí)中斷系統(tǒng)。,(ISR),(PR),(IRR),(IMR),有兩個(gè)端口地址 A0=0主片為20H從片A0H中斷命令寄存器端口 A0=1主片為21H從片A1H中斷屏蔽寄存器端口,端口0,端口1
43、,優(yōu)先級(jí)方式,1.優(yōu)先級(jí)全嵌套方式 中斷優(yōu)先級(jí)固定:從IR0IR7依次是IR0最高,IR7最低。 2.優(yōu)先級(jí)特殊嵌套方式 主片開(kāi)放“同級(jí)”中斷; 3.優(yōu)先級(jí)自動(dòng)循環(huán)方式 如圖 4.優(yōu)先級(jí)特殊循環(huán)方式 起始優(yōu)先級(jí)由命令字設(shè)置,自動(dòng)循環(huán)。,自動(dòng)循環(huán)方式,中斷結(jié)束(EOI)方式,一般的EOI方式,中斷命令寄存器端口地址為20H,結(jié)束外中斷用下面的指令: MOV AL,20H OUT 20H,AL 8259A接收到后,將ISR中當(dāng)前最高的置1位清0。如果中斷是從片8259A的中斷輸入線產(chǎn)生的,則要同時(shí)對(duì)主片和從片的中斷命令寄存器發(fā)EOI命令。從片8259A中斷命令寄存器端口地址是A0H 。,命令OCW
44、2中指出了要清除當(dāng)前ISR的哪位。如 OCW2:EOI=1、SL=1、R=0,這是結(jié)束ISR中第二位的特殊中斷結(jié)束命令字。,8259A工作方式設(shè)定及運(yùn)行中的控制,均由8086發(fā)來(lái)的命令字(1字節(jié)代碼)決定。命令字分初始化命令字和操作命令字兩種,系統(tǒng)向8259A兩個(gè)端口之一寫(xiě)入。,初始化命令字,(Initialization Command Word,ICW),有ICW1ICW4共四個(gè),有接收順序要求。,操作命令字,(Operation Command Word,OCW),有OCW1OCW3共3個(gè),無(wú)接收順序要求。,8259A命令字,SNGL=0級(jí)聯(lián),單片,芯片控制,0則IC4不用,0為上升沿觸
45、發(fā) 1為高電平觸發(fā),中斷類(lèi)型,主從控制,方式控制,中斷類(lèi)型號(hào),1自動(dòng)結(jié)束 0其它,1主 0從,1緩存 0非緩存,對(duì)主片1為有從片,對(duì)從片決定INT連到主片哪個(gè)IRi,8259A初始化流程,若8個(gè)可屏蔽中斷IR0IR7類(lèi)型號(hào)為38H3FH,則初始化的ICW2為08H(00111000)。,1特殊全嵌套 0全嵌套,微處理器選擇,0,M2,M5,M1,M7,M6,M5,M0,M4,8259A操作命令字,Mi=1即IRi屏蔽,設(shè)置/清除中斷屏蔽,設(shè)置優(yōu)先級(jí)循環(huán)方式和中斷結(jié)束方式操作,設(shè)置特殊屏蔽和查詢(xún)讀出操作,OCW3,OCW2,OCW1,題:寫(xiě)出主8259的IR5屏蔽程序,OCW1 EQU 21H
46、IN AL,OCW1 OR AL,00100000B OUT OCW1,AL,1非自動(dòng)結(jié)束 0自動(dòng)結(jié)束,1優(yōu)先級(jí)循環(huán) 0優(yōu)先非循環(huán),1L210有效 1L210無(wú)效,編碼要結(jié)束的IRi,允許,1特殊屏蔽 0非特殊屏蔽,1查詢(xún) 0非查詢(xún),1讀寄存器 0非讀,1讀ISR 0讀IRR,OCW3 EQU 20H IRR EQU OCW3 ISR EQU OCW3 MOV AL,0BH ;OUT OCW3,AL IN AL,ISR,題:讀ISR,注: 0BH=00001011B,8259A的級(jí)聯(lián),采用非緩沖方式,主片 接+5V,從片 接地。,DMA系統(tǒng),DMA是一種外設(shè)與存儲(chǔ)器或者存儲(chǔ)器與存儲(chǔ)器之間直接傳
47、送數(shù)據(jù)的方法,適用于需要大量數(shù)據(jù)高速傳送的場(chǎng)合,如:圖像顯示、磁盤(pán)存取、磁盤(pán)間的數(shù)據(jù)傳送和高速的數(shù)據(jù)采集系統(tǒng)。,DMA=Direct Memory Access 直接存儲(chǔ)器存取,非DMA方式 (包括程序控制方式和中斷方式),DMA方式,DMA控制器,HRQ DREQ DMAC HLDA DACK,CPU,DMA工作過(guò)程,DMA操作之前,應(yīng)先對(duì)DMAC編程,把要傳送的數(shù)據(jù)塊長(zhǎng)度、數(shù)據(jù)塊在存儲(chǔ)器中的起始地址,數(shù)據(jù)傳送方向等信息發(fā)送給DMAC,8237A芯片內(nèi)部結(jié)構(gòu),地址鎖存選通,IO寫(xiě),IO讀,內(nèi)存讀,內(nèi)存寫(xiě),外設(shè)準(zhǔn)備好,復(fù)位,總線請(qǐng)求,輸出時(shí),表明內(nèi)部通道傳送結(jié)束;輸入時(shí),表明外部強(qiáng)迫DMA傳送
48、仃止。,總線響應(yīng),地址鎖存允許,外設(shè)請(qǐng)求DMA,DMA響應(yīng),8237A有四個(gè)獨(dú)立通道:通道0通道3。每個(gè)通道可獨(dú)立響應(yīng)外部DMA請(qǐng)求,完成DMA傳送。,放DMA傳送RAM地址初值,每次傳送后-1,可讀,存儲(chǔ)器到存儲(chǔ)器傳送時(shí),暫存中間數(shù)據(jù),每次傳送后-1,可讀,放DMA傳送字節(jié)數(shù)初值,16位,16位,1位,1位,6位,8位,8位,CPU控制總線,輸出AEN=0,A7A0(輸出):8237訪問(wèn)存儲(chǔ)器的地址信號(hào)的低8位。,輸入時(shí)尋址8237內(nèi)部寄存器,8位,8237A命令字,端口地址08H,控制寄存器,模式寄存器,端口地址0BH,請(qǐng)求寄存器,單通道屏蔽寄存器,端口地址09H,端口地址0AH,多通道屏
49、蔽寄存器,端口地址0FH,一次就設(shè)置4個(gè)通道,狀態(tài)寄存器,端口地址08H,對(duì)端口0EH寫(xiě)入0,可以一次清除四個(gè)通道的屏蔽觸發(fā)器,對(duì)端口0DH寫(xiě)入0,使8237復(fù)位,其功能等同于硬件復(fù)位,定時(shí)/計(jì)數(shù)器8253,計(jì)數(shù)脈沖,門(mén)控信號(hào),波形輸出,接譯碼器,00計(jì)數(shù)器0 01計(jì)數(shù)器1 10計(jì)數(shù)器2 11控制器,作用:定時(shí)和計(jì)數(shù),8位 只寫(xiě)不讀,有高8位和低8位兩個(gè)初值寄存器,內(nèi)部的各計(jì)數(shù)器的結(jié)構(gòu),OUT,(減1至0時(shí)),8253A的A1、A0:與8086CPU的地址線連接不同,端口地址不同。,A1,A1,A0,A0,8位,8088,8253,端口地址:,A1 A0,0 0,0 1,1 0,1 1,X0H
50、,X1H,X2H,X3H,8086,8253,低8位,A2,A1,A1,A0,A2 A1,A0,0 0,0 1,1 0,1 1,0,0,0,0,端口地址:,X0H,X2H,X4H,X6H,8253端口地址,8253的控制字,端口(A1 A0=11),BCD:00009999H即010000 二進(jìn)制:0000FFFFH即0 65536,對(duì)方式0、2、3、4,GATE=0時(shí)停止計(jì)數(shù),軟件定時(shí),分頻器 脈沖發(fā)生器,方波器,軟件選通,硬件選通,硬件重復(fù),不重復(fù),自動(dòng)重復(fù),自動(dòng)重復(fù),不重復(fù),不重復(fù),六種工作方式,初值N為奇數(shù)時(shí),高電位保持(N+1)/2個(gè)時(shí)鐘周期,對(duì)方式1和5,GATE上沿觸發(fā)計(jì)數(shù),工作
51、方式0詳解,控制字寫(xiě)完OUT就變低,初值寫(xiě)完CLK下沿就計(jì)數(shù)(軟定時(shí)),GATE=0停止計(jì)數(shù),重新寫(xiě)入初值就重新計(jì)數(shù),定時(shí)時(shí)間 t=nTCK; n為計(jì)數(shù)初值,TCK為時(shí)鐘周期,工作方式1詳解,控制字寫(xiě)完OUT由低變高,初值寫(xiě)完要等GATE上沿觸發(fā)下一個(gè)CLK下沿才計(jì)數(shù),工作方式3詳解,不對(duì)稱(chēng)方波,高電位長(zhǎng)于低電位,(硬定時(shí)),B6H,MOV AL,0B6H;計(jì)數(shù)器2,先低后高字節(jié) OUT 43H,AL;寫(xiě)命令字 MOV AX,533H;計(jì)數(shù)初值 OUT 41H,AL;寫(xiě)計(jì)數(shù)值低位 MOV AL,AH OUT 41H,AL;寫(xiě)計(jì)數(shù)值高位,題:將計(jì)數(shù)器2初始化為工作方式3,計(jì)數(shù)初值為533H,為二
52、進(jìn)制計(jì)數(shù)方式,設(shè)寄存器地址為40H 43H,8253編程練習(xí),控制字,解:,題: 8253工作為計(jì)數(shù)器 1,方式 3,初值為4020D,解:,77H,MOV AL,77H OUT 43H,AL MOV AL,20H OUT 41H,AL MOV AL,40H OUT 41H,AL,控制字,題:計(jì)數(shù)器0,工作在模式2,計(jì)數(shù)初值和輸出鎖存器僅使用低8位,初值為100,計(jì)數(shù)值為二進(jìn)制格式。寄存器地址為70H 73H,MOV AL,00010100B;控制字 OUT 73H,AL MOV AL,100 ;計(jì)數(shù)初值 OUT 70H,AL,控制字,解:,14H,未超過(guò)256,MOVAL,58H;控制字 O
53、UT0E3H,AL MOVAL,3;初值 OUT0E1H,AL,題:設(shè)計(jì)數(shù)器1工作于方式4,二進(jìn)制計(jì)數(shù),計(jì)數(shù)初值為3。端口地址為0E0H0E3H,解:,控制字,58H,線路連接圖:,CLK0,GATE0,OUT1,CLK2,GATE1,GATE2,CLK1,OUT0,OUT2,采用8253作定時(shí)/計(jì)數(shù)器,其接口地址為0120H0123H。 輸入8253的時(shí)鐘頻率為2MHz。 計(jì)數(shù)器0: 每10ms輸出1個(gè)CLK脈沖寬的負(fù)脈沖 計(jì)數(shù)器1: 產(chǎn)生10KHz的連續(xù)方波信號(hào) 計(jì)數(shù)器2: 啟動(dòng)計(jì)數(shù)5ms后OUT輸出高電平。 畫(huà)線路連接圖,并編寫(xiě)初始化程序。,應(yīng)用題,確定計(jì)數(shù)初值: CNT0: 10ms/
54、0.5us = 20000 CNT1: 2MHz/10KHz = 200 CNT2: 5ms/0.5us = 10000 確定控制字: CNT0:方式2,16位計(jì)數(shù)值 00110100B CNT1:方式3,低8位計(jì)數(shù)值 01010110B CNT2:方式0, 16位計(jì)數(shù)值 10110000B,解:,編程:,MOV DX, 0123H MOV AL, 34H OUT DX, AL MOV DX, 0120H MOV AX, 20000 OUT DX, AL MOV AL, AH OUT DX, AL MOV DX, 0123H MOV AL, 56H OUT DX, AL MOV DX, 012
55、1H MOV AL, 200 OUT DX, AL,MOV DX, 0123H MOV AL, 8BH OUT DX, AL MOV DX, 0122H MOV AX, 10000 OUT DX, AL MOV AL, AH OUT DX, AL,1)計(jì)數(shù)器0:方式3,OUT0輸出方波 N0= fCLK/fOUT = 1MHz /2KHz =106/2 103 = 500 控制字:00110111B=37H,2)計(jì)數(shù)器1:方式1,OUT1輸出單脈沖 N1= TOUT/TCLK = 480 s / 1 s = 480 控制字:01110011B=73H,應(yīng)用題,8253芯片,端口地址分別為310
56、H,312H,314H,316H 所用的時(shí)鐘脈沖頻率為1MHz。要求完成以下功能: 1)計(jì)數(shù)器0工作于方式3,輸出頻率為2KHz的方波; 2)計(jì)數(shù)器1產(chǎn)生寬度為480 s的單脈沖; 3)計(jì)數(shù)器2用硬件方式觸發(fā),輸出單脈沖,時(shí)間為26 s 。,線路連接圖:,解:,編程:,3)計(jì)數(shù)器2:模式5,OUT2輸出門(mén)控單脈沖, N2= 26 控制字:10011011B=9BH,MOV DX,316H MOV AL,00110111B OUT DX,AL MOV DX,310H MOV AL,00H OUT DX,AL MOV AL,05H MOV DX,316H MOV AL,01110011B OUT
57、DX,AL MOV DX,312H MOV AL,80H OUT DX,AL MOV AL,04H OUT DX,AL MOV DX,316H MOV AL,10011011B OUT DX,AL MOV DX,314H MOV AL,26H OUT DX,AL,A9A0=1100010XX0 310H316H,時(shí)鐘脈沖以2MHz輸入8253,實(shí)現(xiàn)每5秒定時(shí)中斷(設(shè)8253端口地址40H46H),按照公式計(jì)數(shù)初值n=Tout/Tclk=107,而初值計(jì)數(shù)器只有16位,最大計(jì)數(shù)次數(shù)為65536,所以一個(gè)計(jì)數(shù)器不行,所以需要兩個(gè)計(jì)數(shù)器串聯(lián)。,應(yīng)用題,線路連接圖:,解:,編程:,計(jì)數(shù)器1:方式2,OUT1每5ms輸出一個(gè)脈沖, 初值 N1=定時(shí)時(shí)間/Tc=5ms/ 0.5 s =10000 控制字:01110100B=76H,計(jì)數(shù)器0:方式2,OUT0 每5s輸出一個(gè)脈沖, 初值N2=定時(shí)時(shí)間/Tc=5s/5ms=1000 控制字:00110100B=34H,MOV AL, 01110100B MOV DX, 46H OUT DX, AL MOV AX, 10000 MOV DX, 42H OUT DX, AL MOV AL,
溫馨提示
- 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ì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 2026屆廣西南寧市馬山縣金倫中學(xué)4+N高中聯(lián)合體生物高一上期末質(zhì)量檢測(cè)模擬試題含解析
- 2025至2030云計(jì)算服務(wù)行業(yè)市場(chǎng)發(fā)展分析及未來(lái)趨勢(shì)與資本運(yùn)作策略研究報(bào)告
- 2025全國(guó)建筑安全員證書(shū)考試精準(zhǔn)題庫(kù)+答案解析
- 2026年法律職業(yè)資格考試民法分值重點(diǎn)解析測(cè)試及答案
- 河南省安陽(yáng)市滑縣第二高級(jí)中學(xué)2026屆數(shù)學(xué)高三第一學(xué)期期末學(xué)業(yè)質(zhì)量監(jiān)測(cè)模擬試題含解析
- 2025-2030全球及中國(guó)肟菌酯市場(chǎng)投資價(jià)值及未來(lái)銷(xiāo)售模式預(yù)測(cè)研究報(bào)告(-版)
- 民辦學(xué)校招生宣傳工作計(jì)劃
- 企業(yè)內(nèi)部審計(jì)業(yè)務(wù)操作指南
- 小學(xué)科學(xué)課程教學(xué)資源開(kāi)發(fā)案
- 珍惜生命安全教育課
- 棄渣場(chǎng)使用規(guī)劃方案
- 滑坡穩(wěn)定性評(píng)價(jià)
- TTSSP 045-2023 油茶果機(jī)械化爆蒲及油茶籽干制加工技術(shù)規(guī)程
- 部編版高一語(yǔ)文上冊(cè)期末復(fù)習(xí)現(xiàn)代漢語(yǔ)語(yǔ)法知識(shí)要點(diǎn)梳理
- GB/T 4074.4-2024繞組線試驗(yàn)方法第4部分:化學(xué)性能
- 關(guān)于澄清兩個(gè)公司無(wú)關(guān)聯(lián)關(guān)系的聲明
- JC∕T 940-2022 玻璃纖維增強(qiáng)水泥(GRC)裝飾制品
- 《兒科護(hù)理學(xué)》課件-兒童健康評(píng)估特點(diǎn)
- 廣東省深圳市南山區(qū)2023-2024學(xué)年六年級(jí)上學(xué)期期末科學(xué)試卷
- 臨床研究數(shù)據(jù)清洗與質(zhì)量控制
評(píng)論
0/150
提交評(píng)論