第一篇:微型計(jì)算機(jī)原理與接口技術(shù)期末總結(jié)(全能版)
0~9的ASCⅡ碼為30H ~ 39H A~F的ASCⅡ碼為41H ~ 46H 回車符的ASCⅡ碼為0DH 換行符的ASCⅡ碼為0AH
①機(jī)器數(shù)比真值數(shù)多一個(gè)符號(hào)位。②正數(shù)的原、反、補(bǔ)碼與真值數(shù)相同。
③負(fù)數(shù)原碼的數(shù)值部分與真值相同;負(fù)數(shù)反碼的數(shù)值部分為真值數(shù)按位取反;負(fù)數(shù)補(bǔ)碼的數(shù)值部分為真值數(shù)按位取反末位加1。
④沒有負(fù)零的補(bǔ)碼,或者說負(fù)零的補(bǔ)碼與正零的補(bǔ)碼相同。
一個(gè)計(jì)量器的最大容量稱為該計(jì)量器的“模”
計(jì)算機(jī):硬件:中央處理器CPU、(運(yùn)算器、控制器)、存儲(chǔ)器系統(tǒng)、I/O接口、電源系統(tǒng)、I/O設(shè)備軟件:系統(tǒng)軟件、應(yīng)用軟件
總線是CPU與存儲(chǔ)器、I/O接口交換信息的公共通道
地址總線:傳輸CPU訪問存儲(chǔ)器,訪問I/O端口的地址信號(hào)。數(shù)據(jù)總線:傳輸CPU讀/寫內(nèi)存,讀寫I/O端口時(shí)的數(shù)據(jù)。控制總線:CPU發(fā)出的控制命令,或外部向CPU提出的請(qǐng)求 地址總線通常是單向總線,數(shù)據(jù)總線通常是雙向總線,大部分控制線是單向,少數(shù)是雙向。
尋址能力:指CPU能直接存取數(shù)據(jù)的內(nèi)存地址的范圍,它由CPU的地址總線的數(shù)目決定。
在實(shí)模式下,486只能訪問第一個(gè)1M內(nèi)存(00000H~FFFFFH)存儲(chǔ)管理部件對(duì)存儲(chǔ)器只進(jìn)行分段管理,沒有分頁功能,每一邏輯段的最大容量為64K。在實(shí)模式下,段寄存器中存放段基址。
486有32條地址線,內(nèi)存最大容量4G。這4G字節(jié)稱為物理存儲(chǔ)器,每一單元的地址稱為物理地址,其地址范圍:0000,0000H~FFFF,FFFFH為物理存儲(chǔ)空間。
486利用低16位地址線訪問I/O端口,所以I/O端口最多有216=64K,I/O地址空間為0000H~FFFFH。(從PC/XT~Pentium,基于Intel微處理器的系統(tǒng)機(jī),實(shí)際上只使用低10位地址線,尋址210=1024個(gè)I/O端口)
邏輯地址——程序中編排的地址,由段基址和段內(nèi)偏移地址組成; 物理地址——信息、數(shù)據(jù)在存儲(chǔ)器中實(shí)際存放的地址。
物理地址是唯一的,不同的邏輯地址可得到相同的物理地址。
CS、IP的初值:由操作系統(tǒng)賦值
DS/ES的初值:由程序員賦值。
SS、SP的初值:①由程序員賦值
②由操作系統(tǒng)自動(dòng)賦值
存儲(chǔ)器的拓展:64k×8 64k決定地址線 8決定數(shù)據(jù)線
間址寄存器和約定訪問的邏輯段: BX,SI,DI 數(shù)據(jù)段 16位尋址方式 BP 堆棧段
EAX~EDX,ESI,EDI 數(shù)據(jù)段 32位尋址方式 EBP,ESP 堆棧段
基址寄存器和約定訪問的邏輯段 BX 數(shù)據(jù)段 BP 堆棧段 16位尋址方式
EAX~EDX,ESI,EDI 數(shù)據(jù)段 EBP,ESP 堆棧段 32位尋址方式
變址寄存器與約定訪問的邏輯段 SI,DI 數(shù)據(jù)段
無比例因子,16位尋址
EAX~EDX,ESI,EDI數(shù)據(jù)段 EBP 堆棧段
有比例因子,32位尋址
在實(shí)模式下,一個(gè)邏輯段的體積最大為64K,存儲(chǔ)單元的有效地址為16位,不可能超過FFFFH,∴在實(shí)模式下運(yùn)行的程序通常采用16位尋址
用EQU定義的符號(hào)常數(shù),其值在后繼語句中不能更改 用“=”定義的符號(hào)常數(shù),其值在后繼語句中可以重新定義
SEG運(yùn)算符 格式: SEG 段名或變量名或標(biāo)號(hào)名 功能: 計(jì)算某一邏輯段的段基址 OFFSET運(yùn)算符 格式:OFFSET 變量名或標(biāo)號(hào)名 功能:算出某個(gè)變量或標(biāo)號(hào)名所在單元的偏移地址(有效地址)。
BUF DB ‘THE QUICK BROWN FOX’;字符串長(zhǎng)度19 LLL EQU $-BUF 匯編后符號(hào)常數(shù)LLL的值即為19
1.立即數(shù)不能直接送段寄存器MOV DS, 3000H 2.目標(biāo)操作數(shù)不允許用立即數(shù)方式MOV 2000H, AL 3.不允許在兩個(gè)存儲(chǔ)單元間傳送數(shù)據(jù)MOV[2000H],[3000H] 4.不允許在兩個(gè)段寄存器之間傳送數(shù)據(jù)MOV DS, ES 5.源、目屬性要一致
在程序控制傳送方式中,中斷傳送可以提高系統(tǒng)的工作效率。
I/O設(shè)備與CPU之間交換信息,其狀態(tài)信息是通過數(shù)據(jù)總線傳送給CPU的。8086/8088微機(jī)系統(tǒng)中可訪問的I/O端口地址范圍為0000H~FFFFH。8086微處理器可訪問的最大I/O空間為64K。CPU對(duì)外設(shè)的訪問實(shí)質(zhì)上是對(duì)I/O端口的訪問。CPU與I/O設(shè)備交換信息,無需傳送地址信息。
非屏蔽中斷(包括軟件中斷)的中斷類型碼由硬件預(yù)先規(guī)定。
溢出、斷點(diǎn)、單步都屬于內(nèi)部中斷。INTR是可屏蔽中斷,NMI是非屏蔽中斷。中斷優(yōu)先級(jí):INT n(軟件中斷)->INTO->NMI->INTR->單步
8254計(jì)數(shù)器的最大初值是0000H最小值是0001H.8254是基于減1計(jì)數(shù)的工作原理
8254方式2、3既可以軟件啟動(dòng)也可以硬件啟動(dòng)。
方式2輸出一個(gè)時(shí)鐘周期的負(fù)脈沖 方式3輸出的方波周期是N個(gè)時(shí)鐘周期之和。8254有6種工作方式4個(gè)I/O地址。
8254有三個(gè)通道,每個(gè)通道都有三條引線跟外部聯(lián)系,它們是:CLK,GATE,OUT。方式2減到1時(shí)輸出一個(gè)負(fù)脈沖。
N?TOUT+ TCLK三個(gè)計(jì)數(shù)器既可以作為計(jì)數(shù)器也可以作為定時(shí)器。先寫控制字再寫初值。方式2;
① GATE為高電平②自動(dòng)重裝③改變GATE恢復(fù)后從初值開始計(jì)數(shù)④改變初值,待原周期結(jié)束后開始新周期
方式3;① 1:1的方波(N為偶數(shù))②先輸出正半周期再輸出負(fù)半周期③每半周期結(jié)束后都要重裝④減2計(jì)數(shù)⑤N為偶數(shù):N……0(正半周期),N……0(負(fù)半周期)⑥N為奇數(shù):N-1……-2(正半周期),N-1…..0(負(fù)半周期)。
初始化:口地址8位可以直接尋址,超八位只能DX間址。初值8用AL,超8位用AX裝初值,用AL依次寫低高。(先低后高)。
單工方式:只允許數(shù)據(jù)按照一個(gè)固定的方向傳送。半雙工方式:雙方均可發(fā)送和接收,但不能同時(shí)。全雙工方式:可以同時(shí)發(fā)送和接收。
調(diào)制與解調(diào):數(shù)字信號(hào)—>模擬信號(hào)—>數(shù)字信號(hào) RS-232C標(biāo)準(zhǔn)采用負(fù)邏輯。程序:8250初始化(B98B9C),查詢方式和中斷方式接收和發(fā)送數(shù)據(jù)。
計(jì)算機(jī)與外界的串行通信實(shí)際是CPU與I/O接口并行,I/O接口與外設(shè)串行。
8255與CPU連接的引腳,與外設(shè)連接的引腳(見書)
無論A、B口工作在什么方式,C口中尚未用過的引腳線均可作為一般I/O使用。方式1下,用中斷傳送方式時(shí),要用C口置1/置0命令將中斷允許位INTE置1。C口置1/置0命令一次只能使一位置1或置0。1.接口電路的作用是什么?I/O接口應(yīng)具備哪些功能? 答:接口是CPU和外設(shè)交換信息的中轉(zhuǎn)站。
⑴數(shù)據(jù)緩沖功能 ⑵聯(lián)絡(luò)功能 ⑶尋址功能 ⑷數(shù)據(jù)轉(zhuǎn)換功能 ⑸中斷管理功能
2.什么是端口?端口有幾類?
答:能與CPU交換信息的寄存器成為I/O寄存器,簡(jiǎn)稱“端口”。
按端口的寄存器存放信息的物理意義來分,端口可分為3類:
1)數(shù)據(jù)端口 2)狀態(tài)端口3)控制端口
3.I/O接口有哪兩種編程方式? PC系列機(jī)中采用哪種編程方式? 答:⑴端口和存儲(chǔ)單元統(tǒng)一編址 ⑵I/O端口獨(dú)立編址
在PC系列機(jī)中,I/O端口采用獨(dú)立編址方式。
4.說明定時(shí)/計(jì)數(shù)器8254的GATE信號(hào)在6種工作方式下的作用以及與時(shí)鐘信號(hào)CLK的關(guān)系。答:(老師答復(fù))這道題超出范圍了,只要求掌握方式2和3,只要知道計(jì)數(shù)過程中GATE信號(hào)必須是高電平即可。
5.系統(tǒng)機(jī)定時(shí)/計(jì)數(shù)器的一個(gè)通道定時(shí)周期最長(zhǎng)是多少?要實(shí)現(xiàn)長(zhǎng)時(shí)間定時(shí),應(yīng)采取什么措施?如果采用外擴(kuò)8253定時(shí)/計(jì)數(shù)器實(shí)現(xiàn)長(zhǎng)時(shí)間定時(shí),應(yīng)采取哪些措施? 答:①Tmax?65536?TCLK?65536?1?55ms
1193182K ②軟件計(jì)數(shù)
③⑴減小輸入信號(hào)的頻率 ⑵級(jí)聯(lián) 1.?dāng)⑹隹善帘沃袛嗵幚淼娜^程。
答:①首先由中斷請(qǐng)求寄存器寄存加到引腳IR0~IR7 上的 ②在中斷屏蔽寄存器的管理下,沒有被屏蔽的中斷請(qǐng)求被送到優(yōu)先權(quán)電路判優(yōu)。
③經(jīng)過優(yōu)先權(quán)電路的判別,選中當(dāng)前級(jí)別最高的中斷源,然后從引腳INT向CPU發(fā)出中斷請(qǐng)求信號(hào)。
④CPU滿足一定條件后,向8259A發(fā)出2個(gè)中斷響應(yīng)信號(hào)(負(fù)脈沖)。⑤8259A從引腳INTA收到第1個(gè)中斷響應(yīng)信號(hào)之后,立即使中斷服務(wù)寄存器中與被選中的中斷源對(duì)應(yīng)的那一位置1,同時(shí)把中斷請(qǐng)求寄存器中的相應(yīng)位清零。⑥從引腳INTA收到第2個(gè)中斷響應(yīng)信號(hào)后,8259A把選中的中斷源類型碼n,通過數(shù)據(jù)線送往CPU。
⑦在實(shí)地址模式下,CPU從4?n~4?n?3單元取出該中斷源的中斷向量→IP、CS,從而引導(dǎo)CPU執(zhí)行該中斷源的中斷服務(wù)程序。
2.什么是中斷向量和中斷向量表?中斷類型碼和中斷向量的關(guān)系是什么? 答:①實(shí)地址模式下,中斷服務(wù)程序的入口地址就是中斷向量。
中斷類型碼通過一個(gè)地址指針表與中斷服務(wù)程序的入口地址相聯(lián)系,實(shí)模式下,該表稱為中斷向量表。
②微機(jī)系統(tǒng)中,為了區(qū)別,給每一個(gè)中斷分配一個(gè)中斷號(hào),又稱中斷類型碼。對(duì)應(yīng)每一個(gè)中斷,都有一個(gè)中斷向量。即一個(gè)中斷類型碼對(duì)應(yīng)一個(gè)中斷向量。
3.CPU響應(yīng)可屏蔽中斷的條件是什么?☆
答:①INTR引腳有中斷請(qǐng)求,NMI引腳沒有中斷請(qǐng)求,系統(tǒng)沒有DMA請(qǐng)求。
②CPU當(dāng)前指令執(zhí)行完畢。③CPU處于開中斷狀態(tài),即標(biāo)志寄存器的中斷允許標(biāo)志置1.4.CPU響應(yīng)非屏蔽中斷的條件是什么?☆
答:①NMI引腳有中斷請(qǐng)求,系統(tǒng)沒有DMA請(qǐng)求。②CPU當(dāng)前指令執(zhí)行完畢。5.鍵盤硬中斷和鍵盤軟中斷的關(guān)系是什么? 答:鍵盤硬中斷即9型中斷(硬件可屏蔽中斷)。
鍵盤軟中斷即INT 16H軟中斷。
硬中斷和軟中斷利用鍵盤緩沖區(qū)傳遞信息。鍵盤緩沖區(qū)中的鍵代碼由9型中斷服務(wù)程序負(fù)責(zé)寫入,用戶程序調(diào)用INT 16H可以讀取鍵盤緩沖區(qū)中的信息。1.異步通信一幀字符的格式是什么?
答:⑴起始位 ⑵數(shù)據(jù)位 ⑶奇偶校驗(yàn)位 ⑷停止位
考點(diǎn):①起始位為一位邏輯0,題目一般不給出 ②數(shù)據(jù)位從最低位開始傳送 ③奇偶校驗(yàn)看邏輯1的個(gè)數(shù)是奇是偶 ④停止位一定是邏輯1信號(hào)
2.設(shè)異步通信一幀字符有八個(gè)數(shù)據(jù)位,無校驗(yàn),一個(gè)停止位,如果波特率為9600,則每秒能傳輸多少個(gè)字符?
答:一幀字符數(shù) = 1位起始位 + 8位數(shù)據(jù)位 + 1位停止位 = 10位 則一秒傳輸?shù)淖址麛?shù)N?9600bit/s?960/s
10bit(通信速率又稱波特率,表示每秒鐘傳送0、1代碼的位數(shù))
3.單工、半雙工、全雙工通信方式的特點(diǎn)是什么?
答:①單工方式只允許數(shù)據(jù)按照一個(gè)固定的方向傳送。②半雙工方式要求收發(fā)雙方均具備接收和發(fā)送數(shù)據(jù)的能力,由于只有一條信道,數(shù)據(jù)不能在兩個(gè)方向上同時(shí)傳送。③在全雙工方式中,收發(fā)雙發(fā)可以同時(shí)進(jìn)行數(shù)據(jù)傳送。
4.分別敘述TTL和RS-232C的電平標(biāo)準(zhǔn),通常采用什么器件完成兩者之間的電平轉(zhuǎn)換? 答:①TTL采用正邏輯,規(guī)定邏輯“0”為0V左右,規(guī)定邏輯“1”為+3V~+5V.RS-232C采用負(fù)邏輯,規(guī)定邏輯“1”為―3V~-15V,規(guī)定邏輯“0”為+3V~+15V。
②通常采用MC1488和MC1489電平轉(zhuǎn)換器。MC1488可接收TTL電平,輸出RS-232C電平。MC1489可輸入RS-232C電平,輸出TTL電平。
5.用系統(tǒng)機(jī)串行口采用中斷方式完成字符發(fā)送和接收,編程時(shí)應(yīng)采取哪些措施? 答:⑴中斷允許寄存器相應(yīng)位置1 ⑵MODEM控制寄存器D3?1,即OUT2?0打通8250的中斷請(qǐng)求通道。⑶8259相應(yīng)中斷屏蔽位置0(主8259IR3、IR4)— 8259 ⑷CPU處于開中斷(STI)— CPU
2.當(dāng)CPU用查詢方式和8255A交換信息時(shí),應(yīng)查詢哪些信號(hào)?當(dāng)CPU用中斷方式和8255A交換信息時(shí),利用哪些端子提中斷請(qǐng)求? 答:①CPU采用查詢方式從8255A讀取數(shù)據(jù)之前,應(yīng)查詢IBF;CPU采用查詢方式向8255A輸出數(shù)據(jù)之前,應(yīng)先查詢OBF。
②當(dāng)CPU用中斷方式和8255A交換信息時(shí),利用INTR端子提中斷請(qǐng)求。
3.8255A的方式選擇控制字和C口置0/置1控制字都是寫入控制端口的,8255A是怎樣識(shí)別的?
答:兩個(gè)控制字共用一個(gè)端口地址,用特征位D7位來區(qū)分。若D7位=1,該控制字為方式選擇控制字;D7位=0,該控制字為C端口按位置0/置1控制字。
第二篇:微型計(jì)算機(jī)原理與接口技術(shù)復(fù)習(xí)重點(diǎn)
題型:
填空題30-35分左右
簡(jiǎn)答題30-35分左右
讀程序題 12分左右
兩個(gè)大題 23分左右
1、第三代16位微處理器的特點(diǎn)
2、補(bǔ)碼的計(jì)算
3、微型計(jì)算機(jī)硬件系統(tǒng)的主要構(gòu)成4、CPU的基本功能、特點(diǎn)及意義
5、總線的概念及分類,各種分類的基本特點(diǎn)
6、第三、四章指令系統(tǒng)及匯編,這是這門課的核心,如果時(shí)間允許應(yīng)該全部掌握。
重點(diǎn)理解MOV, PUSH/POP, IN/OUT, ADC, ADD, INC, DEC, XOR, CMP, 及LOOP指令、JNC/JNZ等條件轉(zhuǎn)移指令的含義及應(yīng)用。
重點(diǎn)理解偽指令中的數(shù)據(jù)定義偽指令和段定義偽指令。
7、存儲(chǔ)器系統(tǒng)的概念及分類
8、重點(diǎn)掌握用指定芯片構(gòu)成指定地址范圍的存儲(chǔ)器系統(tǒng),畫出存儲(chǔ)器連接圖并指出各存儲(chǔ)器芯片的地址范圍。
9、Cache的概念、原理、作用及操作。
以上是前五章的主要內(nèi)容,我在最后一次上課時(shí)都重點(diǎn)提到過的。
前五章約占50分。
后面三章主要由嚴(yán)老師答疑及劃重點(diǎn),約占50分
按照我的理解,大致可以如下歸類:
第六、第八章主要是基本概念,即填空和簡(jiǎn)答為主。
第七章包括一些基本概念,重點(diǎn)掌握幾種可編程接口芯片的應(yīng)用,如8255芯片等,請(qǐng)結(jié)合嚴(yán)老師的課件進(jìn)行復(fù)習(xí)。
第三篇:微型計(jì)算機(jī)接口技術(shù) 課程設(shè)計(jì)題目
計(jì)算機(jī)接口技術(shù) 課程設(shè)計(jì)題目
課程設(shè)計(jì)采用專用課程設(shè)計(jì)本(從教材科購(gòu)買),手寫,要求書寫工整、畫圖規(guī)范。各班收齊于第14周周4下午2:30~3:10交科技樓501,過期恕不受理。
要有如下內(nèi)容:
一、設(shè)計(jì)目的二、設(shè)計(jì)要求
三、完整的原理圖
四、設(shè)計(jì)分析
五、程序流程框圖
六、源程序
七、程序說明
八、心得體會(huì)
九、參考文獻(xiàn)
學(xué)號(hào)為1~12做第1題;13~24做第2題;25及以上做第3題。
題目1:基于ADC0809的數(shù)據(jù)采集器
主要器件:ADC0805,8253,74LS138
設(shè)系統(tǒng)可以提供4MHz時(shí)鐘,要求由8253構(gòu)成定時(shí)電路,產(chǎn)生周期為1秒的定時(shí)脈沖,定時(shí)時(shí)間到,啟動(dòng)AD,對(duì)8個(gè)輸入通道依次進(jìn)行一次AD采樣,將數(shù)據(jù)依次存入到10000H開始處,共進(jìn)行1000次。要由74LS138構(gòu)成完整的譯碼電路,定時(shí)采用中斷方式,AD轉(zhuǎn)換結(jié)束采用查詢方式。
題目2:十字路口交通燈控制器
主要器件:8255,8253,74LS138,LED二極管(紅黃綠各若干),LED數(shù)碼管(若干)
設(shè)系統(tǒng)可以提供4MHz時(shí)鐘,要求由8253構(gòu)成定時(shí)電路,產(chǎn)生定時(shí)時(shí)間,每30秒鐘修改一次燈的狀態(tài);采用8255控制個(gè)方向指示燈(不考慮驅(qū)動(dòng)能力),用LED數(shù)碼管顯示剩余時(shí)間,要由74LS138構(gòu)成完整的譯碼電路。
[題目3:智力競(jìng)賽搶答器
74LS38,8255,LED二極管7個(gè),LED數(shù)碼管1個(gè),開關(guān)8個(gè)
7個(gè)選手,每人一搶答開關(guān),主持人有一開關(guān),若主持人開關(guān)未按下而選手按下,則選手違規(guī),對(duì)應(yīng)的燈閃爍,下一輪時(shí)該選手的搶答權(quán)被剝奪;若無人犯規(guī),則用LED數(shù)碼管顯示最先按下的選手號(hào);直到主持人按下開關(guān),清除顯示,進(jìn)入下一輪搶答。。
要由74LS138構(gòu)成完整的譯碼電路,有8255接開關(guān)、LED二極管、LED數(shù)碼管
第四篇:?jiǎn)纹⑿陀?jì)算機(jī)原理及接口技術(shù)第三版復(fù)習(xí)總結(jié)
單片機(jī)復(fù)習(xí)總結(jié)
O、計(jì)算機(jī)的基本原理
計(jì)算機(jī)數(shù)值表示(原碼、反碼、補(bǔ)碼)中斷
存儲(chǔ)器(堆棧)
一、緒論
要求:熟悉,不作為考試內(nèi)容
二、MCS-51單片機(jī)系統(tǒng)結(jié)構(gòu)
1、硬件結(jié)構(gòu) 了解
2、引腳功能 熟悉,掌握在外部功能擴(kuò)展中的應(yīng)用
3、中央處理器 熟悉各個(gè)寄存器的基本功能
掌握振蕩周期、機(jī)器周期及指令周期的概念 時(shí)鐘,復(fù)位的定義
三、存儲(chǔ)器結(jié)構(gòu)
1、四個(gè)物理空間:內(nèi)、外程序存儲(chǔ)器,內(nèi)、外數(shù)據(jù)存儲(chǔ)器
三個(gè)邏輯空間:程序存儲(chǔ)器,內(nèi)、外數(shù)據(jù)存儲(chǔ)器
2、程序存儲(chǔ)器地址空間
重點(diǎn)掌握:低地址段的保留單元
3、數(shù)據(jù)存儲(chǔ)器地址空間
重點(diǎn)掌握:內(nèi)部數(shù)據(jù)存儲(chǔ)器,地址范圍,特點(diǎn),SFR 外部數(shù)據(jù)存儲(chǔ)器,尋址范圍及尋址方式
4、位處理器
熟悉位處理器組成及位存儲(chǔ)器地址范圍
四、指令系統(tǒng)
1、指令的尋址方式(掌握)
7種尋址方式,名稱、格式、尋址范圍
2、指令系統(tǒng)(五大類)
要求:指令的格式,尋址方式,執(zhí)行操作,對(duì)標(biāo)志位影響,程序段編寫。
五、定時(shí)/ 計(jì)數(shù)器
要求:初始化程序,中斷或非中斷情況下的應(yīng)用編程
定時(shí)計(jì)數(shù)器特點(diǎn):16位加1計(jì)數(shù)器,計(jì)數(shù)初值為計(jì)數(shù)長(zhǎng)度的補(bǔ)碼;可程控為4種不同工作方式。
初始化程序:
1、計(jì)數(shù)常數(shù)的計(jì)算
2、置工作方式字
3、置THX,TLX
4、置TRX啟動(dòng)計(jì)數(shù)
5、置EA、ETX開中斷
六、中斷系統(tǒng)
1、中斷的概念
2、與中斷有關(guān)的寄存器
3、中斷源:外部及內(nèi)部中斷源,中斷觸發(fā)方式,如何設(shè)置
4、MCS-51中斷優(yōu)先級(jí)的處理原則,同級(jí)中斷申請(qǐng)的查詢次序。
5、中斷處理過程(了解),各個(gè)中斷源對(duì)應(yīng)中斷矢量(掌握),中斷響應(yīng)條件(掌握)。
6、中斷程序編寫的步驟
七、串行通訊口
1、串行通訊概述(熟悉,了解)重點(diǎn):異步串行通訊的幀格式
2、MCS-51的串行通訊口
SCON串行控制寄存器,PCON(SMOD位作用)
串行通訊工作方式(熟悉了解),掌握不同工作方式的特點(diǎn)及幀格式,如何啟動(dòng)發(fā)送及接收。
串行通訊波特率,常用波特率的獲得(掌握)。
串行通訊編程,初始化程序、簡(jiǎn)單應(yīng)用程序
八、功能擴(kuò)展
1、A/D、D/A轉(zhuǎn)換的原理,逐次比較式AD轉(zhuǎn)換的原理
給出接口芯片,畫接口電路圖;
根據(jù)接口電路圖,寫轉(zhuǎn)換程序
2、鍵盤(行掃描法、反轉(zhuǎn)掃描法)以及LED顯示(靜態(tài)顯示、動(dòng)態(tài)顯示)的工作原理 習(xí)題示例:
請(qǐng)將(1)~(5)的詞匯和A~J的說明聯(lián)系起來(1)CPU ——()(2)PC ——()(3)SP ——()(4)指令 ——()(5)堆棧 ——()
(A)總線接口單元,負(fù)責(zé)與存儲(chǔ)器、I/O接口傳送信息(B)存放下一條要執(zhí)行的指令的地址
(C)保存各個(gè)邏輯段的起始地址的寄存器(D)保存當(dāng)前棧頂即堆棧指針的寄存器
(E)微型計(jì)算機(jī)的核心,包括運(yùn)算器、控制器和寄存器3個(gè)主要部分(F)以后進(jìn)先出方式工作的存儲(chǔ)空間
(G)告訴CPU要執(zhí)行什么操作,在程序運(yùn)行時(shí)執(zhí)行(H)執(zhí)行單元,功能是執(zhí)行指令
(6)斷電后存儲(chǔ)的資料會(huì)丟失的存儲(chǔ)器是()
A.RAM B.ROM C.CD-ROM D.(7)若內(nèi)存容量為64KB,則訪問內(nèi)存所需地址線()A.16 B.20 C.18 D.19(8).不需要訪問內(nèi)存的尋址方式是()
A.立即尋址 B.直接尋址 C.間接尋址 D.變址尋址
讀程序
ORG 2000H MOV SP, #50H MOV A, #50H LCALL 2500H ADD A, #10H MOV B, A L1: SJMP L1 ORG 2500H
MOV DPTR, #200AH PUSH DPL
PUSH DPH
RET
上述程序執(zhí)行后,SP= _________ A= _________ B=_________
ORG 0000h MOV DPTR,#2100H MOVX A,@DPTR ANL A,#0FH
SWAP A MOV B,A
INC DPTRMOVX A,@DPTR ANL A,#0FH ORL A,B INC DPTR MOVX @DPTR,A LOOP: SJMP LOOP
END
已知2100H,2101H單元中的數(shù)均為0FH,則程序執(zhí)行后2102H中的數(shù)為______________ A=_________ B=_________
MOV DPTR,#2314H ……__________ MOV R0,DPH … … … …__________ MOV 14H,#22H … … …__________ MOV R1,DPL … … … …__________ MOV 23H,#56H … … …__________ MOV A,@R0 … … … … __________ XCH A,DPH … … … … __________
執(zhí)行以上指令后A=_______ DPTR= _______
請(qǐng)寫出下圖中Y6,Y7引腳所對(duì)應(yīng)的地址
匯編語言程序編寫:
雙字節(jié)與單字節(jié)無符號(hào)數(shù)相乘,設(shè)被乘數(shù)存于41H,40H單元中,乘數(shù)存于R4單元中,乘積存于52H、51H、50H單元中(前者為高字節(jié),后者為低字節(jié))。請(qǐng)編寫此乘法程序段 ?MOV ?MOV ?MUL ?MOV ?MOV ? MOV ?MOV ?MUL ?MOV ?MOV ?MOV ?CLR ?ADD ?MOV ?MOV ?ADDC ?MOV ?
B, 40H A R4 AB 50H, A 40H, B B, 41H A R4 AB 51H, A 52H, B A, 40H C A, 51H 51H,A A, 52H A, #0 52H,A 試計(jì)算片內(nèi)RAM區(qū)40H~47H八個(gè)單元中數(shù)的算術(shù)平均值,結(jié)果存放在4AH中 ?MOV R0, #40H ?
MOV 4AH,#0 ?
MOV 4BH,#0 ?LOOP: CLR C ?
MOV A, @R0 ?
ADD A, 4AH ?
MOV 4AH,A ?
MOV A, 4BH ?
ADDC A, #0H ?
MOV 4BH,A ?
INC R0 ?
CJNZ R0, #48H,LOOP ?
MOV R2,#3
;右移三次,相當(dāng)于除8 ?
ACALL RR_LOOP ?
RET ?;雙字節(jié)(4BH,4AH)右移子程序
?;右移的次數(shù)在R2中 ? ? RR_LOOP: CLR C ?
MOV A, 4BH ?
RRC A ?
MOV 4BH,A ?
MOV A, 4AH ?
RRC A ?
MOV 4AH,A ?
DJNZ R2, RR_LOOP ?
RET
?試編寫計(jì)算1234H+0FE7的程序,將和的高8位存入41H單元中,低8位存入40H單元中。?MOV A, #34H ?ADD A, #0E7H ?MOV 40H, A ?MOV A, #12H ?ADDC A, #0FH ?MOV 41H, A
?試編寫程序,將內(nèi)部RAM的20H、21H、22H、23H、和24H連續(xù)5個(gè)單元的內(nèi)容一次存入2FH、2EH、2DH、2CH、2BH單元 MOV R7, #05H
MOV R0, #20H
MOV R1, #2FH LOOP: MOV A, @R0
MOV @R1, A
INC R0
DEC R1
DJNZ R7, LOOP
第五篇:微機(jī)原理與接口技術(shù)實(shí)驗(yàn)總結(jié)
微機(jī)原理與接口技術(shù)實(shí)驗(yàn)總結(jié)
11107108
徐寒黎
一、實(shí)驗(yàn)內(nèi)容以及設(shè)計(jì)思路
1、①試編寫一程序,比較兩個(gè)字符串STRING1、STRING2 所含字符是否相同,若相同輸出“MATCH”,若不相同輸出 “NO MATCH”。設(shè)計(jì)思路:定義一個(gè)數(shù)據(jù)段,在數(shù)據(jù)段中定義兩個(gè)字符串作為STRING1、STRING2以及幾個(gè)用于輸入提示的和輸出所需內(nèi)容的字符串,定義一個(gè)堆棧段用于存放,定義代碼段。關(guān)鍵步驟以及少量語句:第一步將STRING1和STRING2都實(shí)現(xiàn)用鍵盤輸入,方法是
MOV DX,OFFSET STRING2 MOV AH,0AH INT 21H 并且顯示在顯示器上,顯示方法將0AH改成09H,語句與上面類似。然后進(jìn)行比較第一個(gè)單元,MOV AL,[STRING1+1] CMP AL,[STRING2+1] JNZ NOMATCH 若字符串長(zhǎng)度不等,則直接跳轉(zhuǎn),輸出輸出 “NO MATCH”; 若長(zhǎng)度相等再逐個(gè)比較 LEA SI,[STRING1+2] LEA DI,[STRING2+2] MOV CL,[STRING1+1] MOV CH,0 CLD REPE CMPSB JCXZ MATCH,意思是全部相同就跳轉(zhuǎn)MATCH,輸出“MATCH”;不然進(jìn)入下面的NOMATCH。退出。
②試編寫求級(jí)數(shù)1^3+2^3 +3^3 …..前幾項(xiàng)和剛大于10000的程序。
設(shè)計(jì)思路:原先編寫的程序,設(shè)定和為10000,結(jié)果是14。但要求高一點(diǎn)的話,可以自己設(shè)置,實(shí)現(xiàn)用鍵盤輸入和的值。
一個(gè)難點(diǎn)是將輸入的ASCII碼字符串,轉(zhuǎn)換成與之相同的十進(jìn)制數(shù)的數(shù)值。關(guān)鍵的思路部分是:從1開始求級(jí)數(shù),將和的值存在AX里,要加下一項(xiàng)級(jí)數(shù)前,比如這時(shí)已經(jīng)加到4,PUSH一下AX,然后將5乘三遍,將乘積MOV到BX里,再POP AX,然后將BX的值加到AX里,然后將AX與N比較,如果比N小就繼續(xù)上述步驟,知道剛比N大就輸出數(shù)字。
③試編寫一程序,完成字符串中各字符出現(xiàn)頻度的統(tǒng)計(jì),統(tǒng)計(jì)結(jié)果在屏幕上輸出。
設(shè)計(jì)思路:因?yàn)檫@個(gè)程序需要統(tǒng)計(jì)所有的字符,所以首先要定義一個(gè)存儲(chǔ)區(qū),用來存放26個(gè)字符以及每個(gè)字符出現(xiàn)的個(gè)數(shù)。用鍵盤控制輸入字符串以后,將字符串的第一個(gè)字符與這二十六個(gè)字符逐個(gè)比較,若有相同,在存放相應(yīng)次數(shù)的存儲(chǔ)單元的值上加1。然后比較第二個(gè)字符,依次類推,將字符串里的字符全部比較完。將個(gè)數(shù)大于1的字符以及字符的個(gè)數(shù)都輸出到屏幕上。退出語句。缺點(diǎn)和不足:這樣需要定義一個(gè)非常繁的存儲(chǔ)區(qū)。可以根據(jù)輸入的字符,然后進(jìn)行比較和統(tǒng)計(jì)。
④設(shè)計(jì)一個(gè)動(dòng)畫程序。
設(shè)計(jì)思路:這個(gè)程序參考了網(wǎng)上的資料,沒有什么新意,是小鳥的圖形,可以用上下左右鍵進(jìn)行移動(dòng),可以退出。
步驟:首先設(shè)置堆棧段,數(shù)據(jù)段,代碼段,設(shè)置顯示方式等一些屬性,設(shè)置背景色,設(shè)置小鳥的初始位置以及寫出小鳥圖形的像素的點(diǎn)。功能性的語句是,用鍵盤接受一個(gè)輸入,將其與1bh比較,用JZ語句跳轉(zhuǎn)到退出。若不是便與48h比較,看是否為向上,是則跳轉(zhuǎn)到相應(yīng)語句,不是則繼續(xù)與50h比較;,看是否向下,是則跳轉(zhuǎn)到關(guān)于向下移動(dòng)的相關(guān)語句,否則再與4bh比較,看是否向左,依次類推,根據(jù)鍵盤輸入的上下左右跳轉(zhuǎn)到不同的語句。再將小鳥的位置進(jìn)行與上下左右鍵的輸入相應(yīng)的移動(dòng)。
最后編寫好退出語句。
2、硬件接口主要是了解8255與8253的功能,以及控制字。①I/O地址譯碼
只要對(duì)硬件概念清晰,很簡(jiǎn)單的。基本上沒有什么創(chuàng)造性。收獲:熟悉實(shí)驗(yàn)箱結(jié)構(gòu),了解每部分元件和標(biāo)注的意義。掌握I/O地址譯碼電路的工作原理。②可編程定時(shí)器8253 1,對(duì)照實(shí)驗(yàn)電路圖,將計(jì)數(shù)器0設(shè)置為方式0,即數(shù)初值設(shè)為N(N<0fh),用手動(dòng)逐個(gè)輸入單脈沖,編程使計(jì)數(shù)值在屏幕上顯示,并用邏輯筆觀察OUT0點(diǎn)平變化。
2,將計(jì)數(shù)器0、計(jì)數(shù)器1分別設(shè)置為方式3,計(jì)數(shù)初值設(shè)為1000用邏輯筆觀察out1輸出電平的變化。
收獲:掌握8253的基本工作原理和編程方法
③并行接口8255 1,試驗(yàn)電路如圖所示,8255C口接邏輯電平開關(guān)K0~K7,A口接LED顯示電路L0~L7。3,數(shù)碼管靜態(tài)顯示:按下圖接好電路,將8255A口PA0~PA6分別與七段數(shù)碼管的段碼驅(qū)動(dòng)輸入端a~g相連,位碼驅(qū)動(dòng)輸入端S1接5V(選中),S0和dp接地(關(guān)閉)。編程從鍵盤輸入一位十進(jìn)制數(shù)(0-9),在七段數(shù)碼管上顯示。
4,數(shù)碼管動(dòng)態(tài)顯示:按下圖接好電路,七段數(shù)碼管的連接不變,位碼驅(qū)動(dòng)輸入端S1、S0接8255 C口的PC1和PC0。編程在兩個(gè)數(shù)碼管上顯示“56”。
動(dòng)態(tài)顯示時(shí),先送“5”的段碼送A口,再送02h到C口為位碼;經(jīng)一定延時(shí)后,送“6”的段碼送A口,再送01h到C口為位碼。循環(huán)完成,可以顯示數(shù)碼。5,數(shù)碼管動(dòng)態(tài)顯示(選做):同圖接好電路,編程在兩個(gè)數(shù)碼管上顯示循環(huán)顯示“00-99”。只要搞清楚各個(gè)口的地址,以及選擇適當(dāng)?shù)目刂谱郑鋵?shí)很簡(jiǎn)單的。
收獲:掌握8255的基本工作原理和編程方法,對(duì)方式0的認(rèn)識(shí)加深了。
二、試驗(yàn)中遇到的問題 1在編寫程序時(shí),我深深體會(huì)到,畫程序框圖的重要性,每一步跳轉(zhuǎn)的條件一定要搞清楚,Y和N不能搞反了,否則就錯(cuò)了。
2實(shí)驗(yàn)2,里面涉及的寄存器很多,很容易就會(huì)用亂了,還是很需要注意的。3比如那個(gè)小鳥動(dòng)畫的題目,當(dāng)時(shí)在控制左右移動(dòng)的時(shí)候,選擇的起始位置的語句沒寫對(duì)位置,每次按一個(gè)移位的鍵以后,都從最初的初始位置向某個(gè)方向移動(dòng)。
4硬件方面的,一開始沒搞懂地址什么意思,所以連線時(shí)很懵懂,后來清楚了,發(fā)現(xiàn)就沒什么了。
三、心得感受
微機(jī)原理與接口技術(shù)的課程實(shí)驗(yàn)歷時(shí)大半個(gè)學(xué)期,通過自己編寫、運(yùn)行程序,不僅可以鞏固了以前所學(xué)過的知識(shí),而且學(xué)到了很多在書本上所沒有學(xué)到過的知識(shí)。以前對(duì)于編程工具的使用還處于一知半解的狀態(tài)上,但是經(jīng)過一段上機(jī)的實(shí)踐,對(duì)于怎么去排錯(cuò)、查錯(cuò),怎么去看每一步的運(yùn)行結(jié)果,怎么去了解每個(gè)寄存器的內(nèi)容以確保程序的正確性上都有了很大程度的提高。
前四個(gè)簡(jiǎn)單程序設(shè)計(jì),加深了我們對(duì)初學(xué)的匯編語言指令的熟悉和理解,匯編語言直接描述機(jī)器指令,比機(jī)器指令容易記憶和理解。通過學(xué)習(xí)和使用匯編語言,向上為理解各種軟件系統(tǒng)的原理,打下技術(shù)理論基礎(chǔ);向下為掌握硬件系統(tǒng)的原理,打下實(shí)踐應(yīng)用基礎(chǔ)。不僅鞏固了書本所學(xué)的知識(shí),還具有一定的靈活性,發(fā)揮了我們的創(chuàng)造才能。
后面幾個(gè)實(shí)驗(yàn)是并行輸入輸出接口8255和計(jì)數(shù)器8253的功能的操作,加深了我們對(duì)硬件的熟悉,鍛煉了動(dòng)手能力,發(fā)揮創(chuàng)造才能。
通過這次課程設(shè)計(jì)使我懂得了理論與實(shí)際相結(jié)合是很重要的,只有理論知識(shí)是遠(yuǎn)遠(yuǎn)不夠的,只有把所學(xué)的理論知識(shí)與實(shí)踐相結(jié)合起來,從理論中得出結(jié)論,才能真正提高自己的實(shí)際動(dòng)手能力和獨(dú)立思考的能力。在設(shè)計(jì)的過程中遇到問題,可以說得是困難重重,這畢竟第一次做的,難免會(huì)遇到過各種各樣的問題,同時(shí)在設(shè)計(jì)的過程中發(fā)現(xiàn)了自己的不足之處,對(duì)以前所學(xué)過的知識(shí)理解得不夠深刻,掌握得不夠牢固。這次課程設(shè)計(jì)終于順利完成了,在設(shè)計(jì)中遇到了很多編程問題,最后在自己的思考以及和同學(xué)的討論中,終于迎刃而解。