第一篇:微機原理與接口技術(shù)小結(jié)
微機原理與接口技術(shù)基礎(chǔ)
1.為什么在流水CPU中,將一條指令從取指到執(zhí)行結(jié)束的任務(wù)分割為一系列子任務(wù),并使各子任務(wù)在流水線的各個過程段并發(fā)地執(zhí)行,從而使流水CPU具有更強大的數(shù)據(jù)吞吐能力?
這里可以使用時空圖法證明結(jié)論的正確性。
假設(shè)指令周期包含四個子過程:取指令(IF)、指令譯碼(ID)、取操作數(shù)(EX)、進行運算(WB),每個子過程稱為過程段(Si),這樣,一個流水線由一系列串連的過程段組成。在統(tǒng)一時鐘信號控制下,數(shù)據(jù)從一個過程段流向相鄰的過程段。
2.譯碼器是如何譯碼的?尋址空間是如何確定的?譯碼器與尋址空間是怎么聯(lián)系的?
譯碼器實際上是由許多與門、或門、非門和它們的組合構(gòu)成的。它有若干個輸入端和若干個輸出端(也可能只有一個輸出端)。對某一個輸出端來說,它的電平高低必然與輸入的某一種狀態(tài)相對應(yīng)。
例如,具有4個輸入端的與非門就是一個簡單的譯碼器,只有四個輸入端為1111時,它的輸出端才為0。如果將地址總線的A9、A8、A7、A6與它的四個輸入連接起來,并把它的輸出連到存儲器芯片或某個需要尋址的外設(shè)接口的片選端(假定低電平有效),那么,只有當(dāng)A9、A8、A7、A6為1111時,存儲器芯片或外設(shè)才會被選中。
譯碼器的尋址空間取決于地址總線的哪幾根線接到譯碼器的輸入端,例如上例,地址總線的A9、A8、A7、A6與譯碼器的輸入連接,那么其尋址空間應(yīng)該是11 1100 0000~11 1111 1111,即3C0H~3F0H。
注意,沒有參與譯碼的低位地址線必然要參與存儲器芯片或外設(shè)接口的內(nèi)部譯碼。也就是說,內(nèi)部譯碼地址范圍是0--2n11 0000。
可以說,譯碼器的譯碼輸出決定了尋址空間的起始地址,內(nèi)部譯碼決定了尋址空間的大小。由于上一條指令的四個子過程全部執(zhí)行完畢后才能開始下一條指令,因此每隔4個單位時間才有一個輸出結(jié)果,即一條指令執(zhí)行結(jié)束。表示非流水CPU的時空圖。由于上一條指令與下一條指令的四個過程在時間上可以重疊執(zhí)行,因此,當(dāng)流水線滿載時,每一個單位時間就可以輸出一個結(jié)果,即執(zhí)行一條指令。
比較后發(fā)現(xiàn):流水CPU在八個單位時間中執(zhí)行了5條指令,而非流水CPU僅執(zhí)行了2條指令,因此流水CPU具有更強大的數(shù)據(jù)吞吐能力。
3.書本上講的是若是計算結(jié)果中1的個數(shù)為偶數(shù)時,則PF=1;但我又在另外的輔導(dǎo)書上看到的說如果計算結(jié)果的低8位中1的個數(shù)為偶數(shù),PF=1.請問老師是否是低八位?
答:對,PF只與結(jié)果的低8位有關(guān)。
4.80386 CPU包含哪些寄存器?各有什么主要用途?
80386共有7類34個寄存器。它們分別是通用寄存器、指令指針和標(biāo)志寄存器、段寄存器、系統(tǒng)地址寄存器、控制寄存器、調(diào)試和測試寄存器。
(1)通用寄存器(8個)
EAX,EBX,ECX,EDX,ESI,EDI,EBP和ESP。每個32位寄存器的低16位可單獨使用,同時AX、BX、CX、DX寄存器的高、低8位也可分別當(dāng)作8位寄存器使用。它們與8088/8086中相應(yīng)的16位通用寄存器作用相同。
(2)指令指針和標(biāo)志寄存器。
指令指針EIP是一個32位寄存器,存放下一條要執(zhí)行的指令的偏移地址。
標(biāo)志寄存器EFLAGS也是一個32位寄存器,存放指令的執(zhí)行狀態(tài)和一些控制位。
(3)段寄存器(6個)
CS,DS,SS,ES,F(xiàn)S和GS。在實方式下,它們存放內(nèi)存段的段地址。在保護方式下,它們被稱為段選擇符。其中存放的是某一個段的選擇符。當(dāng)選擇符裝入段寄存器時,80386中的硬件章自動用段寄存器中的值作為索引從段描述符表中取出一個8個字節(jié)的描述符,裝入到與該段寄存器相應(yīng)的64位描述符寄存器中。
(4)控制寄存器(4個)
CR0、CRl、CR2和CR3。它們的作用是保存全局性的機器狀態(tài)。
(5)系統(tǒng)地址寄存器(4個)
GDTR、IDTR、LDTR和TR。它們用來存儲操作系統(tǒng)需要的保護信息和地址轉(zhuǎn)換表信息、定義目前正在執(zhí)行任務(wù)的環(huán)境、地址空間和中斷向量空間。
(6)調(diào)試寄存器(8個)
DR0~DR7。它們?yōu)檎{(diào)試提供硬件支持。
(7)測試寄存器(8個)
TR0~TR7,其中TR0~TR5由Intel公司保留,用戶只能訪問TR6、TR7。它們用于控制對TLB中的RAM和CAM相連存儲器的測試。TR6是測試控制寄存器,TR7是測試狀態(tài)寄存器,保存測試結(jié)果的狀態(tài)
5.什么是外部中斷源?什么是中斷向量碼?什么是讀選通信號?
答:外部中斷源就是在CPU外部能夠產(chǎn)生中斷請求的設(shè)備/器件;通俗地說,中斷向量碼就是中斷的編號,其值為0-FFH;選通信號就是打開邏輯門的控制信號,或用來鎖存信息(類似D觸發(fā)器的CP或CLK)的控制信號。讀選通信號就是用來打開總線緩沖器,以便把的數(shù)據(jù)送到總線上的控制信號。
6.CPU處于單步執(zhí)行指令的工作方式(課本49頁),請問什么是單步執(zhí)行指令工作方式? 答:在這種方式下,CPU每執(zhí)行一條指令,就產(chǎn)生一次特殊的中斷,以便可以停下來檢查執(zhí)行的結(jié)果。主要用于各類程序的調(diào)試。
7.片選信號(CS)到底是起使數(shù)據(jù)有效或無效的作用還是起選擇芯片的作用???若是前者,干嗎叫片選?
片選信號就是選擇芯片的信號。前者不叫片選信號,應(yīng)該叫允許信號。
8.書本上講的是若是計算結(jié)果中1的個數(shù)為偶數(shù)時,則PF=1;但我又在另外的輔導(dǎo)書上看到的說如果計算結(jié)果的低8位中1的個數(shù)為偶數(shù),PF=1.請問老師是否是低八位?
微型計算機基礎(chǔ)
1.為什么在流水CPU中,將一條指令從取指到執(zhí)行結(jié)束的任務(wù)分割為一系列子任務(wù),并使各子任務(wù)在流水線的各個過程段并發(fā)地執(zhí)行,從而使流水CPU具有更強大的數(shù)據(jù)吞吐能力?
這里可以使用時空圖法證明結(jié)論的正確性。
假設(shè)指令周期包含四個子過程:取指令(IF)、指令譯碼(ID)、取操作數(shù)(EX)、進行運算(WB),每個子過程稱為過程段(Si),這樣,一個流水線由一系列串連的過程段組成。在統(tǒng)一時鐘信號控制下,數(shù)據(jù)從一個過程段流向相鄰的過程段。
2.譯碼器是如何譯碼的?尋址空間是如何確定的?譯碼器與尋址空間是怎么聯(lián)系的?
譯碼器實際上是由許多與門、或門、非門和它們的組合構(gòu)成的。它有若干個輸入端和若干個輸出端(也可能只有一個輸出端)。對某一個輸出端來說,它的電平高低必然與輸入的某一種狀態(tài)相對應(yīng)。
例如,具有4個輸入端的與非門就是一個簡單的譯碼器,只有四個輸入端為1111時,它的輸出端才為0。如果將地址總線的A9、A8、A7、A6與它的四個輸入連接起來,并把它的輸出連到存儲器芯片或某個需要尋址的外設(shè)接口的片選端(假定低電平有效),那么,只有當(dāng)A9、A8、A7、A6為1111時,存儲器芯片或外設(shè)才會被選中。
譯碼器的尋址空間取決于地址總線的哪幾根線接到譯碼器的輸入端,例如上例,地址總線的A9、A8、A7、A6與譯碼器的輸入連接,那么其尋址空間應(yīng)該是11 1100 0000~11 1111 1111,即3C0H~3F0H。
注意,沒有參與譯碼的低位地址線必然要參與存儲器芯片或外設(shè)接口的內(nèi)部譯碼。也就是說,內(nèi)部譯碼地址范圍是0--2n11 0000。
可以說,譯碼器的譯碼輸出決定了尋址空間的起始地址,內(nèi)部譯碼決定了尋址空間的大小。由于上一條指令的四個子過程全部執(zhí)行完畢后才能開始下一條指令,因此每隔4個單位時間才有一個輸出結(jié)果,即一條指令執(zhí)行結(jié)束。表示非流水CPU的時空圖。由于上一條指令與下一條指令的四個過程在時間上可以重疊執(zhí)行,因此,當(dāng)流水線滿載時,每一個單位時間就可以輸出一個結(jié)果,即執(zhí)行一條指令。
比較后發(fā)現(xiàn):流水CPU在八個單位時間中執(zhí)行了5條指令,而非流水CPU僅執(zhí)行了2條指令,因此流水CPU具有更強大的數(shù)據(jù)吞吐能力。
3.書本上講的是若是計算結(jié)果中1的個數(shù)為偶數(shù)時,則PF=1;但我又在另外的輔導(dǎo)書上看到的說如果計算結(jié)果的低8位中1的個數(shù)為偶數(shù),PF=1.請問老師是否是低八位?
答:對,PF只與結(jié)果的低8位有關(guān)。
4.80386 CPU包含哪些寄存器?各有什么主要用途?
80386共有7類34個寄存器。它們分別是通用寄存器、指令指針和標(biāo)志寄存器、段寄存器、系統(tǒng)地址寄存器、控制寄存器、調(diào)試和測試寄存器。
(1)通用寄存器(8個)
EAX,EBX,ECX,EDX,ESI,EDI,EBP和ESP。每個32位寄存器的低16位可單獨使用,同時AX、BX、CX、DX寄存器的高、低8位也可分別當(dāng)作8位寄存器使用。它們與8088/8086中相應(yīng)的16位通用寄存器作用相同。
(2)指令指針和標(biāo)志寄存器。
指令指針EIP是一個32位寄存器,存放下一條要執(zhí)行的指令的偏移地址。
標(biāo)志寄存器EFLAGS也是一個32位寄存器,存放指令的執(zhí)行狀態(tài)和一些控制位。
(3)段寄存器(6個)
CS,DS,SS,ES,F(xiàn)S和GS。在實方式下,它們存放內(nèi)存段的段地址。在保護方式下,它們被稱為段選擇符。其中存放的是某一個段的選擇符。當(dāng)選擇符裝入段寄存器時,80386中的硬件章自動用段寄存器中的值作為索引從段描述符表中取出一個8個字節(jié)的描述符,裝入到與該段寄存器相應(yīng)的64位描述符寄存器中。
(4)控制寄存器(4個)
CR0、CRl、CR2和CR3。它們的作用是保存全局性的機器狀態(tài)。
(5)系統(tǒng)地址寄存器(4個)
GDTR、IDTR、LDTR和TR。它們用來存儲操作系統(tǒng)需要的保護信息和地址轉(zhuǎn)換表信息、定義目前正在執(zhí)行任務(wù)的環(huán)境、地址空間和中斷向量空間。
(6)調(diào)試寄存器(8個)
DR0~DR7。它們?yōu)檎{(diào)試提供硬件支持。
(7)測試寄存器(8個)
TR0~TR7,其中TR0~TR5由Intel公司保留,用戶只能訪問TR6、TR7。它們用于控制對TLB中的RAM和CAM相連存儲器的測試。TR6是測試控制寄存器,TR7是測試狀態(tài)寄存器,保存測試結(jié)果的狀態(tài)
5.什么是外部中斷源?什么是中斷向量碼?什么是讀選通信號?
答:外部中斷源就是在CPU外部能夠產(chǎn)生中斷請求的設(shè)備/器件;通俗地說,中斷向量碼就是中斷的編號,其值為0-FFH;選通信號就是打開邏輯門的控制信號,或用來鎖存信息(類似D觸發(fā)器的CP或CLK)的控制信號。讀選通信號就是用來打開總線緩沖器,以便把的數(shù)據(jù)送到總線上的控制信號。
6.CPU處于單步執(zhí)行指令的工作方式(課本49頁),請問什么是單步執(zhí)行指令工作方式? 答:在這種方式下,CPU每執(zhí)行一條指令,就產(chǎn)生一次特殊的中斷,以便可以停下來檢查執(zhí)行的結(jié)果。主要用于各類程序的調(diào)試。
7.片選信號(CS)到底是起使數(shù)據(jù)有效或無效的作用還是起選擇芯片的作用啊?若是前者,干嗎叫片選?
片選信號就是選擇芯片的信號。前者不叫片選信號,應(yīng)該叫允許信號。
8.書本上講的是若是計算結(jié)果中1的個數(shù)為偶數(shù)時,則PF=1;但我又在另外的輔導(dǎo)書上看到的說如果計算結(jié)果的低8位中1的個數(shù)為偶數(shù),PF=1.請問老師是否是低八位?對,PF只與結(jié)果的低8位有關(guān)
第二篇:微機原理與接口技術(shù)每章小結(jié)
第一章
微型計算機概述
課程知識總結(jié):
本章的主要內(nèi)容為計算機的基本結(jié)構(gòu)、微型計算機系統(tǒng)的組成和主要性能指標(biāo)、不同進位計數(shù)制計數(shù)方法、不同進位制數(shù)之間相互轉(zhuǎn)換的方法、數(shù)和字符在計算機中的表示方法、簡單的算術(shù)運算以及計算機中的數(shù)據(jù)表示與編碼。
知識要點:
一、微型計算機的基本構(gòu)成:1.微型計算機的結(jié)構(gòu)特點 2.微處理器 3.內(nèi)存儲器:① 內(nèi)存單元的地址和內(nèi)容 ② 內(nèi)存操作 ③ 內(nèi)存分類 3.輸入輸出設(shè)備和輸入輸出接口 4.總線: ① 地址總線 ② 數(shù)據(jù)總線 ③ 控制總線。
二、微型計算機系統(tǒng):1.微型計算機系統(tǒng)的組成:①軟件.② 硬件: 主機、微處理器:控制器和運算器、內(nèi)存處理器:ROM和 RAM、I/O接口:串行接口和并行接口 ③ 外部設(shè)備:輸入設(shè)備、外儲存器、其他設(shè)備和輸出設(shè)備。④ 電源。2.軟件: ① 系統(tǒng)軟件:操作系統(tǒng)、語言處理器如匯編、解釋、編譯等軟件 ② 支持軟件
③ 應(yīng)用軟件:工程計算軟件、數(shù)據(jù)計算軟件和過程計算軟件。
三、數(shù)制運算基礎(chǔ):二進制數(shù)(B)、八進制數(shù)(Q)、十六進制數(shù)(H)、十進制數(shù)(D)。
三、碼制:1.帶符號數(shù)編碼:原碼、反碼、補碼
2.數(shù)的編碼:ASCII:碼數(shù)字編碼規(guī)則和字母編碼規(guī)則。BCD碼:壓縮BCD碼和非壓縮BCD碼。
第二章 微處理器
課程知識總結(jié):
本章要以Intel系列微處理器為例,從應(yīng)用理解8086微處理器的功能結(jié)構(gòu)、工作模式和引用腳本特性、定性的總線操作時序。存儲器組織和I/O組織等概念。然后介紹微處理器的發(fā)展史歷程和新技術(shù)。
知識要點:
一、8086微處理器的結(jié)構(gòu):1.8086的功能結(jié)構(gòu):執(zhí)行單元EU(AX、BX、CX、DX、SP、BP、SI、DI、標(biāo)志寄存器)2.總線接口單元BIU(CS、DS、SS、ES、IP)功能及特點。
二、8086的寄存器結(jié)構(gòu):1.通用數(shù)據(jù)寄存器:一般用法和隱含用法 2.地址指針和編制寄存器:一般用法和隱含用法及特點 3.段寄存器:數(shù)據(jù)段寄存器、堆棧段寄存器、附加段寄存器 4.指令指針寄存器和標(biāo)記寄存器:指令指針寄存器IP和標(biāo)志寄存器FR。
三、8086的工作模式及引腳功能:1.地址/數(shù)據(jù) 2.地址/狀態(tài) 3.控制:① 負(fù)責(zé)地址BHE/S7、ALE ② 數(shù)據(jù)允許和收發(fā) DEN、DT/R ③ 負(fù)責(zé)讀寫RD、WR、M/IO ④ 負(fù)責(zé)中斷INTR、NMI、INTA ⑤ 負(fù)責(zé)總線HOLD、HLDA ⑥協(xié)調(diào)CLK、READY、TEST ⑦ 模式選擇MN/MX=5V。
四、系統(tǒng)配置(最小模式):1.時鐘發(fā)生器(8284)2.8086CPU 的系統(tǒng)組成 3.地址鎖存器
(74LS373、8282)4.數(shù)據(jù)收發(fā)器(8286、74LS245)此為三總線(DB、AB、CB)。
五、時序:1.時鐘周期(T狀態(tài))------------總線周期-----------指令周期
2.① 基本讀總線周期
② 基本寫總線周期 ③ 復(fù)位操作時序------寄存器的復(fù)位值 ④ 中斷響應(yīng)時序。
六、Intel 8086微處理器的發(fā)展歷程:第一代微處理器------第二代微處理器------第三代微處理器------第四代微處理器------第五代微處理器------第六代微處理器等。
第三章 尋址方式與指令系統(tǒng)
課程知識總結(jié):
本章討論指令格式和尋址方式的基礎(chǔ)上,只要介紹8086CPU的指令系統(tǒng),并簡單介紹80x86、Pentium擴充和增加的指令,詳細(xì)解析各類指令的功能和用法,以便進一步學(xué)習(xí)會變語言程序設(shè)計。
知識要點:
一、指令格式:1.標(biāo)號:英文字母、數(shù)字、特殊字符 2.操作碼 3.操作數(shù) 4.注釋
二、尋址方式:1.立即數(shù)尋址2.寄存器尋址 3.存儲器尋址:① 直接尋址 ② 寄存器間接尋址 ③ 寄存器相對尋址 ④ 基址變址相對址 ⑤ 寄存器比例尋址。
三、指令功能:1.數(shù)據(jù)傳送類(通用數(shù)據(jù)傳送指令、堆棧操作令、交換指令XCHG、換碼指令、有效地址傳送指令、標(biāo)志傳送指令、輸入輸出指令、輸出指令OUT)2.算術(shù)運算類指令(加法指令,減法指令, 乘法指令,除法指令,BCD碼調(diào)整指令)3.邏輯類指、令移位指令(AND、OR、NOT、XOR、TEST、SAL、SHL、SAL、ROR)4.串操作類指令(MOVS、LODS、STOS、CMPS、SCAS、REP、REPE/REPZ)5.控制轉(zhuǎn)移類指令(條件和無條件轉(zhuǎn)移、子程序調(diào)用和返回指令、子程序調(diào)用和返回、中斷)6.處理器控制類指令(標(biāo)志操作指令、外部同步指令)7.BCD碼調(diào)整指令。
第四章 匯編程序設(shè)計
課程知識總結(jié):
本章圍繞匯編語言程序的結(jié)構(gòu)展開,主要內(nèi)容是匯編語言的語句格式、匯編語言的數(shù)據(jù)和表達(dá)式、匯編語言的偽指令語句格式和作用與宏指令,再次基礎(chǔ)上具體討論順序結(jié)構(gòu)、分支結(jié)構(gòu)、循環(huán)結(jié)構(gòu)及子程序的匯編語言程序設(shè)計方法,調(diào)用程序和被調(diào)用程序之間數(shù)據(jù)傳遞途徑以及匯編源程序上機調(diào)試過程。
知識要點:
一、匯編語言程序格式:1.匯編語言程序結(jié)構(gòu):① 源程序的一般結(jié)構(gòu) ② 源程序的結(jié)構(gòu)特點
2.匯編語言語句類型及格式:① 語句結(jié)構(gòu) ② 語句格式。
二、匯編語言的數(shù)據(jù)表達(dá)式:1.常量、變量與標(biāo)號:① 常量:數(shù)值常量、字符常量、符號常量 ② 變量 ③ 標(biāo)號 2.匯編表達(dá)式與運算符:① 算術(shù)運算符 ② 邏輯運算符 ③ 關(guān)系運算符 ④ 數(shù)值運算符 ⑤ 修改運算符 3.常量、變量與標(biāo)號:① 常量:數(shù)值常量、字符串常量、符號常量 ② 變量:段屬性、編移量屬性、類型屬性 ③ 標(biāo)號:段屬性、編移量屬性、距離屬性。
三、指令:1.符號定義偽指令
EQU 2.段定義偽指令
SEGMENT……ENDS 3.段尋址偽指令4 過程定義偽指令
PROC、ENDP 4.模塊定義與連接 5.其他偽指令…….6.宏命令偽指令:① 宏定義
② 宏調(diào)用 ③ 宏展開 ④ 宏取消 7.數(shù)據(jù)定義偽指令
DB、DW、DD……8.段定義偽指令 9.段尋址偽指令10.過程定義偽指令。
四、程序設(shè)計:1.程序設(shè)計步驟 2.基本結(jié)構(gòu)程序設(shè)計 3.子程序設(shè)計 4.程序設(shè)計舉例。
五、匯編語言與C語言的接口:1.匯編語言與高級語言接口
2.混合編程:① C語言調(diào)用匯編 ② C語言嵌入?yún)R編。
第五章 輸入輸出接口
課程知識總結(jié):
本章討論輸入/輸出接口的基本概念,包括輸入/輸出接口的作用、內(nèi)部結(jié)構(gòu)、傳送信息的分析、I/O端口編址以及主機通過接口與外設(shè)之間數(shù)據(jù)傳送的方式和CPU外設(shè)之間的數(shù)據(jù)傳輸方式。
知識要點:
一、I微機接口與接口技術(shù)::1.接口的基本功能:① 數(shù)據(jù)緩沖功能
② 端口選擇功能 ③
信號轉(zhuǎn)換功能
④
接受和執(zhí)行CPU命令功能 ⑤ 中斷管理功能 ⑥ 可編程功能
2.端口的基本結(jié)構(gòu):① 端口 ② 地址譯碼電路 ③ 數(shù)據(jù)緩沖器與鎖存器 3.接口電路中的信息:① 數(shù)據(jù)信息 ② 狀態(tài)信息 ③ 控制信息。
二、I/O端口編址方式:統(tǒng)一編制方式、獨立編制方式。
三、端口地址譯碼:1.門電路譯碼 2.譯碼器譯碼 3.比較器譯碼。
四、CPU與外設(shè)之間的數(shù)據(jù)傳送方式:1.程序控制方式:① 無條件傳送方式 ② 查詢傳送方式
2.中斷傳送方式 3.直接存儲器傳送方式。
第六章 存儲器
課程知識總結(jié):
微型計算機系統(tǒng)鐘的內(nèi)存通常由半導(dǎo)體構(gòu)成。半導(dǎo)體存儲器是用半導(dǎo)體器件作為存儲介質(zhì)的存儲器。本章討論半導(dǎo)體存儲器芯片的類型、存儲原理、引腳功能、如何與CPU(或系統(tǒng)總線)連接等問題。將重點討論RAM和ROM的工作原理、結(jié)構(gòu)、特點,并介紹高速存儲器和虛擬存儲器。
知識要點:
一、半導(dǎo)體存儲器的分類和性能特點:1.半導(dǎo)體存儲器的分類:① 按制造工藝分類:雙極性、金屬氧化半導(dǎo)體 ② 按存儲方向分類:隨機存取存儲器、只讀存儲器 2.半導(dǎo)體存儲器的組成:① 存儲器 ② 地址譯碼器 ③ 控制邏輯電路 ④ 數(shù)據(jù)緩沖器 3.半導(dǎo)體存儲器的戶主要性能指標(biāo):① 存儲容量 ② 存取速度 ③ 功耗
④ 可靠性
⑤ 性能 / 價格比。
二、隨機存取存儲器:1.靜態(tài)RAM:① SRAM 的基本存儲電路 ② SRAM的讀寫過程:讀出過程、寫入過程 ③ 典型SRAM芯片 2.動態(tài)ROM:①
DRAM的基本存儲電路 ②
DRAM的特點:DRAM芯片的結(jié)構(gòu)特點、DRAM的刷新 ③ 典型DRAM芯片:芯片的引腳、內(nèi)部結(jié)構(gòu) 3.PC機內(nèi)存條:① FPM DRAM ② EDO DRAM ③ SDRAM ④ DDR ⑤ DDR2 ⑥ DRDRAM。
三、只讀存儲器:1.可擦除可編程EPROM:①基本存儲電路和工作原路 ② 編程和查處過程 ③ 典型的ERROM芯片的介紹 2.電可擦除可編程E2PROM:①芯片特性 ② 工作方式3.快速擦寫存儲器:① 閃存的特點 ② 閃存的應(yīng)用。
四、半導(dǎo)體存儲器接口技術(shù):1.存儲器與CPU接口的一般問題 2.存儲器與地址總線的連接 3.存儲器與控制總線、數(shù)據(jù)總線的連接
五、高速緩沖存儲器:1.Cache系統(tǒng)基本結(jié)構(gòu)與原理 2.地址印象方式 3.替換算法等
六、虛擬存儲器:1.頁式虛擬存儲器 2.段式虛擬存儲器 3.段頁式虛擬存儲器。
第七章 中斷系統(tǒng)
課程知識總結(jié):
本章主要內(nèi)容:中斷的基本概念、CPU響應(yīng)中斷的條件、中斷響應(yīng)過程、中斷服務(wù)程序的執(zhí)行;8086中斷系統(tǒng);可編程中斷控制器8259A的引腳功能、編程結(jié)構(gòu)以及工作工程。知識要點:
一、中端的基本概念:1.中斷概念的基本概念:中斷、中斷源(中斷源的中斷優(yōu)先級別)及中斷系統(tǒng) 2.中斷處理過程:中斷請求、中斷判優(yōu)、中斷響應(yīng)、中斷服務(wù)、中斷返回 3.中斷嵌套。
二、8086的中斷系統(tǒng):1.8086中斷類型:①外部中斷:非屏蔽中斷、課屏蔽中斷 ② 內(nèi)部中斷:專用中斷、指令中斷 2.中斷向量和中斷向量表 3.中斷向量的裝入 4.8086中斷響應(yīng)過程 :外部中斷響應(yīng)過程、內(nèi)部中斷響應(yīng)過程:非屏蔽中斷、課屏蔽中斷響應(yīng)。
三、課編程中斷控制器8257A:1.8257A的內(nèi)部結(jié)構(gòu)和引腳特點:① 8257A的內(nèi)部結(jié)構(gòu) ② 中斷服務(wù)寄存器 ③ 中斷屏蔽寄存器 ④ 優(yōu)先權(quán)分析器 ⑤ 讀寫邏輯等 2.8257A的工作過程 3.8257A的工作方式 4.8257A的級聯(lián)電路 5.8257A的編程命令。
四、中斷調(diào)用:DOS和BIOS中斷的調(diào)用方法及DOS和BIOS中斷的調(diào)用例子。
第八章 計數(shù)器/定時器與DMA控制器
課程知識總結(jié):
本章主要內(nèi)容是定時器/計算器的應(yīng)用場合;如何實現(xiàn)可編程計時器/定時器8253;可編程計數(shù)器/定時器8253芯片的內(nèi)部結(jié)構(gòu)、引腳功能、計數(shù)原理、6種工作方式下的工作條件和輸出波形特征。
知識要點:
一、定時器/計算器的工作原理:1.微機系統(tǒng)的定時 2.外部定時方法::軟件定時、硬件定時 3.可編程計數(shù)器/定時器的工作原理
二、可編程計時器/定時器8253:1.8253內(nèi)部結(jié)構(gòu)及引腳功能:8253內(nèi)部結(jié)構(gòu)、8253引腳功能 2.8253的工作方式及特點:方式0:計數(shù)結(jié)束中斷方式、方式1:可重新觸發(fā)單穩(wěn)態(tài)輸出方式、方式2:分頻器方式、方式3:方波發(fā)生器方式、方式4:軟件選通觸發(fā)方式、方式5:硬件選通觸發(fā)方式
3.8253編程:設(shè)置方式控制字、設(shè)定計數(shù)初值或定時常數(shù) 4.8253的應(yīng)用:硬件、軟件編程。
三、DAR傳送的基本原理:1.DAM傳送的特點 2.DAM傳送的機制:① 周期挪用 ② 桌旗擴展 ③ CPU停機 3.DAM傳送的模式 :① 單字節(jié)傳送模式 ② 數(shù)據(jù)塊傳送模式③ 請求傳送模式。
四、DAM控制器的8237A :1.8237A的內(nèi)部結(jié)構(gòu)及引腳功能:① 8237A的內(nèi)部結(jié)構(gòu):模
式寄存器、基地寄存器、當(dāng)前地址寄存器、基本字節(jié)計數(shù)器、當(dāng)前字節(jié)計數(shù)器 ② 8237A 的引腳功能: DREQ3—DREQ0、DACK3—DACK0、HRQ、HLDA、A7—A4、A3—A0、RESET、READY、CLK、AEN 等 ③ 8237A的端口地址 2.8237A的工作過程與工作方式:① 8237A的工作過程 :S1、S2、S3、S4 ② 8237A的工作方式:通道的優(yōu)先級問題、工作模式、操作類型、DAM效驗 3.8237A的編程:① 方式控制寄存器② 命令寄存器③ 狀態(tài)寄存器④ 請求寄存器 ⑤ 屏蔽寄存器 ⑥ 綜合寄存器 ⑦ 軟件命令:清楚高/地觸發(fā)器、軟件復(fù)位命令、清屏蔽寄存器命令 4.8237A的應(yīng)用舉例。
第九章 并行接口與串行接口
課程知識總結(jié):
本章主要內(nèi)容:串并行接口的基本概念,介紹可編程并行接口芯片8255A和可編程串行接口芯片8251A的功能、結(jié)構(gòu)、工作方式、編程及應(yīng)用,能根據(jù)實際需要編寫8251的程序及其初始化設(shè)置。
知識要點:
一、并行接口概述:1.并行接口的特點 2.并行接口的類型。
二、可編程并行接口8255A:1.8255A內(nèi)部結(jié)構(gòu)及引腳功能:① 8255A的內(nèi)部結(jié)構(gòu):數(shù)據(jù)總線緩沖器、讀/寫控制邏輯、輸入/輸出端口 ② A組和B組控制電路 ② 8255A的引腳功能:與外設(shè)連接的引腳、與CPU煉焦的引腳:D7—D0、REDET、A1—A0等 2.8255A的編程:① 方式控制字 ② 端口C位置/復(fù)位控制字 3.8255A的工作方式:① 工作方式0 ② 工作方式1 ③ 工作方式2 4.8255A的應(yīng)用舉例。
三、串行通信的基本概念:1.串行數(shù)據(jù)傳輸方式: ① 全雙工 ② 半雙工 2.波特率和發(fā)送/接收時鐘:① 波特率 ② 發(fā)送/接收時鐘 3.串行通信的基本方式:① 異步通信 ② 同步通信 4.信號調(diào)制與解調(diào) 5.串行接口任務(wù):① 進行串并轉(zhuǎn)換 ② 實現(xiàn)串行數(shù)據(jù)格式化 ③ 可靠性檢驗 ④ 實施接口與通信設(shè)備之間的聯(lián)絡(luò)控制。
四、可編程串行接口8251A:1.8251A的基本性能 2.8251A內(nèi)部結(jié)構(gòu)與引用功能:① 8251A內(nèi)部結(jié)構(gòu):接收器、發(fā)送器、數(shù)據(jù)總線緩沖器、讀/寫控制盒調(diào)解控制 2.8251A的引腳功能:① 與CPU的接口信號:DB7-0、CLK、TxRDY、TxE、RxRDY、SYNDET等 ② 與裝置的接口信號 3.8251A的控制字和狀態(tài)字:① 方式控制字 ② 操作控制字 ③ 狀態(tài)字 4.8251A的初始化編程 5.8251A應(yīng)用舉例:① 分析 ② 設(shè)計:硬件連接、軟件編程:接收程序、發(fā)送部分。
總結(jié)
微機的最基礎(chǔ)語言——計算機語言的一個最基礎(chǔ)最古老的匯編語言。俗話說的好,越基礎(chǔ)的東西越重要,因此它在重大的編程項目中應(yīng)用的最為廣泛。就我個人的理解,匯編是對寄存的地址,以及數(shù)據(jù)單元進行最直接的修改。不過它有兩面性,有優(yōu)點,也有缺點,最重要的一點就是它本身較為復(fù)雜:對某個數(shù)據(jù)進行修改時,本來很簡單一個操作會用比較煩瑣的語句來解決,而這些語句本身在執(zhí)行和操作的過程中,占用大量的時間和成本。因此,在一些講求效率的場合,這種語言并不可取,所以可以適當(dāng)對它進行取舍。
匯編語言對學(xué)習(xí)其他計算機高級語言起到一個比較、對照參考的作用。因為學(xué)習(xí)總是從最簡單最原始最基礎(chǔ)的知識點開始,而匯編語言就是比較原始的一種計算機語言,故而學(xué)習(xí)高級語言也當(dāng)然可以從匯編開始。而學(xué)了高級計算機語言C以后,我經(jīng)常將C與匯編進行對比。也發(fā)現(xiàn)其中的差異,以及各自的特點,優(yōu)缺點,從而讓我對計算機語言又有了更深一層次的了解。由此,可以擴展的學(xué)習(xí)C++,JAVA等高級語言,這實際上是掌握了學(xué)習(xí)計算機各種語言的能力和素養(yǎng)。所以掌握匯編語言對以后其他語言的學(xué)習(xí)有極大的幫助和促進作用。
第三篇:微機原理與接口技術(shù)試題答案
微機原理與接口技術(shù)試題答案
一、填空題(20*1)
1、微機系統(tǒng)由(硬件系統(tǒng))和(軟件系統(tǒng))兩部分組成。2、8086有(20)位地址線,存儲器容量為(1M)B。3、8086CPU 內(nèi)部組成結(jié)構(gòu)從功能上講,可分為(BIU)和(EU)兩部分。4、8086/8088的四個段寄存器為(DS)、(ES)、(SS)、(CS)
5、用來存放CPU狀態(tài)信息的寄存器是(FLAGS)。
6、用來存放指令地址的寄存器是(IP)。7、8086的16位標(biāo)志寄存器FLAGS中OF=1表示運算結(jié)果(溢出),ZF=1表示運算結(jié)果為零。PF=0表示運算結(jié)果的低8位中1的個數(shù)為(奇數(shù))。
8、8086的16位標(biāo)志寄存器FLAGS中IF=1表示CPU(允許)中斷,TF=1表示CPU進入(單步)工作方式。
9、地址4000H:0300H,其物理地址是(40300H),段地址是(4000H),偏移地址是(0300H)。
11、I/O端口的尋址方式有兩種,分別是(直接尋址),(間接尋址)。
12、指令JO NEXT 表示OF=(1)時轉(zhuǎn)移。
13、將I/O設(shè)備端口內(nèi)容讀入AL中的指令助記符是(IN)。14、8086CPU的 I/O指令采用間接尋址時,使用的間接寄存器是(DX)。
15、設(shè)置DF=1的指令為(STD)。
16、清除CF標(biāo)志的指令為(CLC)。
17、一對操作堆棧的指令為(POP)和(PUSH)。
18、LOOPNZ的循環(huán)條件為(CX≠0且ZF=0)。
19、實現(xiàn)無符號數(shù)乘2的指令的助記符是(SHL),實現(xiàn)有符號數(shù)除2的指令的助記符是(SAR)。22、8086CPU引腳信號中中斷請求兩個信號名稱為(INT)和(NMI)。
26、I/O端口的編址方式一般有(存儲器統(tǒng)一編址)和(獨立編址)兩種
29.1片8259A中斷控制器可管理(8)級中斷,用9片8259A可構(gòu)成(64)級主從式中斷管理系統(tǒng)。
二: 填空題(每題2分, 共20分)1.8086CPU復(fù)位時, 寄存器 CS值為(FFFFH), 寄存器 IP的值為(0000H)2.8086CPU的8個8位通用寄存器名為(AL),(AH),(BL),(BH),(CL),(CH),(DL),(DH).3.若SS = 3240H, SP = 2000H, 棧頂?shù)膶嶋H地址為(34400H).4.指令 MOV AX, [BX] 的機器碼為 8BH, 07H , 指令 MOV [BX], AX的機器碼為(89H),(07H).5.8255A的工作方式有方式0功能為(基本輸入輸出), 方式1功能為(選通輸入輸出), 方式2功能為(雙向數(shù)據(jù)傳送).6.執(zhí)行指令 PUSH AX有 SP =(SPBUF DATA ENDS CODE SEGMENT ASSUME CS:CODE, DS:DATA STAR PROC FAR PUSH DS MOV AX, 0 PUSH AX MOV AX, DATA MOV DS, AX LEA BX, BUF1 MOV CX , COUNT-1 MOV AL, [BX] AG: INC BX CMP AL, [BX] JAE BIG MOV AL, [BX] BIG: DEC CX JNZ AG MOV BUF2, AL RET STAR ENDP CODE ENDS END STAR 問: 該程序執(zhí)行后BUF2中的值為(9).四、程序設(shè)計題(2*10)
1、編寫一個匯編語言程序,要求從鍵盤輸入一個小寫字母,將其轉(zhuǎn)換成大寫字母在屏幕上顯示出來。
DATA SEGMENT BUF DB 0DH,0AH,“PLEASE INPUT A CHAR:$” DATAENDS
STACK SEGMENT
DB 20 DUP(?)STACKENDS
CODESEGMENT
ASSUME DS:DATA,CS:CODE ,SS:STACK BEGIN: MOV AX,DATA
MOV DS,AX
LEA DX,BUF;9號調(diào)用顯示PLEASE INPUT A CHAR:
MOV AH,9
INT 21H
MOV AH,1;1號調(diào)用,從鍵盤接收1字符
INT 21H
CMP AL,61H /41H;若比“a”/A小轉(zhuǎn)PEND
JB PEND
CMP AL,7AH /5BH;若比“z”/Z大轉(zhuǎn)PEND
JA PEND;
ADD/SUB AL,20H;如在“a”與“z”之間則減去20變?yōu)榇髮懽址?/p>
MOV DL,AL
MOV AH,2;2號功能調(diào)用顯示一個字符
INT 21H
PEND: MOV AH,4CH;程序結(jié)束運行,返回DOS
INT 21H CODE ENDS
END BEGIN
2、已知芯片8253的端口地址為4F0H~4F3H,設(shè)計數(shù)器1工作在方式1,計數(shù)器初值為3060H,采用二進制計數(shù),請設(shè)計實現(xiàn)上述功能的8253初始化程序。8253控制字格式如下:
因為計數(shù)器初值為3060H,即為16位的,所以讀/寫格式為11 因此控制字為:01110010 =72 控制字:MOV AL, 72H OUT 4F3H, AL
低8位:MOV AL, 60H OUT 4F1H, AL
高8位:MOV AL, 30H
OUT 4F1H, AL
六: 編程題(7分)編一個完整的程序, 數(shù)據(jù)段有10個符號的ASCII碼值數(shù)據(jù)塊 BUF , 若數(shù)據(jù)為0到 9的ASCII碼值, 在屏上顯示 Y , 否則顯示 N 解: DATA SEGMENT BUF DB 10 DUP(?)DATA ENDS CODE SEGMENT ASSUME CS:CODE, DS:DATA NAIN PROC FAR PUSH DS MOV AX, 0 PUSH AX MOV AX, DATA MOV DS, AX MOV CX, 10 LEA BX, BUF AG: MOV AL, [BX] CMP AL, 30H JL DISNO CMP AL, 39H JG DISNO MOV AH, 02H MOV DL, ‘Y’ INT 21H JMP NEXT DISNO: MOV AH, 02H MOV DL, ‘N’ INT 21H NEXT: INC CX DEC CX JNZ AG RET MAIN ENDP CODE ENDS END MAIN 七: 接口編程(7分, 僅編程序段)8255A的A口,B口均工作于方式0, 從A口輸出數(shù)據(jù)30H, 將B口輸入的數(shù)據(jù)放入寄存器BL中.(注:8255A口地址為60H到63H)解: 1 0 0 0 X 0 1 X 方式控制字= 82H MOV AL, 82H OUT 63H, AL MOV AL, 30H OUT 60H, AL IN AL, 61H MOV BL, AL
第四篇:微機原理與接口技術(shù)試題及答案
一、填空題(每空 1 分,共 15 分)得分 評閱人
1.RESET信號到來后8088/86的CS和IP 分別為 _FFFF_H 和_0000_H。2.在特殊全嵌套方式下,8259可響應(yīng) 同級或高級 中斷請求。3.CPU與外設(shè)接口通過? 數(shù)據(jù) 總線傳送狀態(tài)信號與命令信號。4.8255有3種工作方式, 其中 方式2 只允許A口使用。5.有地址重迭現(xiàn)象的譯碼方式為 部分譯碼 和 線選法。
6.外設(shè)端口的編址方式有 I/O端口獨.立編址 和 I/O端口與存儲器統(tǒng)一編址。7.INT8253采用BCD碼計數(shù)時,其最大計數(shù)值為__10000__,此時的計數(shù)初值為__0000__。
8.8088/8086的AD7-AD0是地址數(shù)據(jù)復(fù)用引腳,在T1時傳送__地址信號__。9.8259A作為主片時其引腳CAS0-CAS2的信息傳送方向是_向外_。
10.RS-232C是適用于__數(shù)據(jù)終端設(shè)備DTE__和__數(shù)據(jù)通信設(shè)備DCE__間的接口。
二、單項選擇題(每小題1分,共20分)得分 評閱人
1.8086CPU尋址I/O端口最多使用(4)條地址線。(1)8(2)10(3)12(4)16 2.CPU執(zhí)行IN指令時有效的信號組合是(1)。(1)=0, =1(2)=0, =0(3)=0, =1(4)=0, =0
3.某計算機的字長是16位,它的存儲器容量是64KB,若按字編址那么它的最大尋址范圍是(2)。
(1)64K字(2)32K字(3)64KB(4)32KB 4.某一SRAM芯片的容量是512×8位,除電源和接地線外,該芯片的其他引腳最少應(yīng)為(4)根。
(1)25(2)23(3)21(4)19 5.8088/8086的基本總線周期由(2)個時鐘周期組成。(1)2(2)4(3)5(4)6 6.在8086系統(tǒng)中中斷號為0AH,則存放中斷向量的內(nèi)存起始地址為(2)。(1)0AH(2)28H(3)4AH(4)2AH 7.采用兩片8259A可編程中斷控制器級聯(lián)使用,可以使CPU的可屏蔽中斷擴大到(1)。
(1)15級(2)16級(3)32級(4)64級
8.當(dāng)IF=0,8088/8086CPU不響應(yīng)(2)中斷請求。(1)INT N(2)INTR(3)NMI(4)INTO 9.8253可編程定時器/計數(shù)器中,其二進制的最大計數(shù)初值為(3)。(1)65536(2)7FFFH(3)0000H(4)FFFFH 10.8086/88CPU在響應(yīng)中斷時要執(zhí)行(2)個中斷響應(yīng)周期。(1)1個(2)2個(3)3個(4)4個
11.中斷向量表是存放(2)的存儲區(qū)域.(1)中斷類型號(2)中斷服務(wù)程序入口處地址(3)中斷斷點地址(4)程序狀態(tài)字
12.INT8255中可用置位/復(fù)位控制字對(3)的各位進行按位操作以實現(xiàn)某些控制功能。
(1)A口(2)B口(3)C口(4)數(shù)據(jù)總線緩沖器
11.RS-232C標(biāo)準(zhǔn)規(guī)定信號“0”和“1”的電平是(3)。(1)0V和+3V~+15V(2)-3V~-15V和0V(3)+3V至+15V和-3V~-15V(4)+3V~+15V和-0V 12.對于開關(guān)型設(shè)備的控制,適合采用的I/O傳送方式是(1)。(1)無條件(2)查詢(3)中斷(4)DMA 13.傳送數(shù)據(jù)時,占用CPU時間最長的傳送方式是(1)。(1)查詢(2)中斷(3)DMA(4)IOP 14.既然是在數(shù)據(jù)傳輸率相同的情況下,那么,又說同步字符傳輸速度要高于 異步字符傳輸其原因是(2)。
(1)發(fā)生錯誤的概率少(2)附加位信息總量少(3)雙方通信同步(4)字符之間無間隔
15.巳知DRAM2118芯片容量為16K×1位, 若組成64KB的系統(tǒng)存儲器,則組成的芯片組數(shù)和每個芯片組的芯片數(shù)為(4).(1)2和8(2)1和16(3)4和16(4)4和8 16.INT 8259中斷屏蔽寄存儲器的作用是(2).(1)禁止CPU響應(yīng)外設(shè)的中斷請求(2)禁止外設(shè)向CPU發(fā)中斷請求(3)禁止軟中斷請求(4)禁止NMI中斷請求
17.在正常EOI方式下, 中斷結(jié)束命令是清除(2)中的某一位.(1)IRR(2)ISR(3)IMR(4)程序狀態(tài)字
18.軟中斷INT N的優(yōu)先級排列原則是(3).(1)N值愈小級別愈高(2)N值愈大級別愈高(3)無優(yōu)先級別(4)隨應(yīng)用而定
19.串行異步通信傳輸?shù)闹饕攸c是(2).(1)通信雙方不必同步(2)每個字符的發(fā)送是獨立的
(3)字符之間的傳送時間長度應(yīng)相同(4)字符發(fā)送速率由波特率決定 20.8位D/A轉(zhuǎn)換器的分辨率能給出滿量程電壓的(4).(1)1/8(2)1/16(3)1/32(4)1/256
三、判斷說明題(正者在括號內(nèi)打“√”,誤者在括號內(nèi)打“×”,均需說明理由。每小題2分,共10分)得分 評閱人
1.8086CPU在讀/寫總線周期的T3狀態(tài)結(jié)束對READY線采樣,如果READY為低電平,則在T3與T4狀態(tài)之間插入等待狀態(tài)TW。(×)應(yīng)改為:8086CPU在讀/寫總線周期的T3狀態(tài)開始對READY線采樣,如果READY為低電平,則在T3與T4狀態(tài)之間插入等待狀態(tài)TW。
2.在8253的方式控制字中,有一項計數(shù)鎖存操作,其作用是暫停計數(shù)器的計數(shù)。(×)
應(yīng)改為:鎖存計數(shù)器的當(dāng)前值到鎖存器,但不影響對計數(shù)器的計數(shù)工作。
3.8250的溢出錯誤指示CPU還未取走前一個數(shù)據(jù),接收移位寄存器又將接收到的一個新數(shù)據(jù)送至輸入緩沖器。(√)
4.在8088系統(tǒng)(最小組態(tài))中,執(zhí)行指令”MOV [2000H],AX”需1個總線周期。(×)
應(yīng)改為:需2個總線周期
5.DMA控制器8237A現(xiàn)行字節(jié)數(shù)寄存器的值減到0時,終止計數(shù)。(×)應(yīng)改為:DMA控制器8237A現(xiàn)行字節(jié)數(shù)寄存器的值減到0,再由0減到0FFFFH時,終止計數(shù)。
四、簡答題(每小題5分,共20分)得分 評閱人
1.試述8250的數(shù)據(jù)接收時鐘RCLK使用16倍比特率的時鐘信號接收異步通信信號的原因以及接收過程。
答:主要是為了確定起始位避免傳輸線上的干擾。
其接收過程為:接收器檢測到串行數(shù)據(jù)輸入引腳SIN由高電平變低后,連續(xù)測試8個RCLK時鐘周期,若采樣到的都是低電平,則確認(rèn)為起始位;若低電平的保持時間不足8個RCLK時鐘周期,則認(rèn)為是傳輸線上的干擾。
2.8255A工作于方式2,采用中斷傳送,CPU如何區(qū)分輸入中斷還是輸出中斷? 答:CPU響應(yīng)8255A的中斷請求后,在中斷服務(wù)程序的開始可以查詢8255A的狀態(tài)字,判斷~OBFA(PC7)和IBFA(PC5)位的狀態(tài)來區(qū)分是輸入中斷還是輸出中斷,并據(jù)此轉(zhuǎn)向相應(yīng)的輸入或輸出操作。
3.用2K×4位RAM構(gòu)成64KB的存儲系統(tǒng),需要多少RAM芯片?需要多少位地址作為片外地址譯碼?設(shè)系統(tǒng)為20位地址線,采用全譯碼方式。答:64片。
9位。其中A16~A19固定,A10~A15譯碼形成組選信號。
4.請說明Intel8253各個計數(shù)通道中三個引腳信號CLK,OUT和GATE的功能。答:CLK為計數(shù)時鐘輸入引腳,為計數(shù)器提供計數(shù)脈沖。
GATE為門控信號輸入引腳,用于啟動或禁止計數(shù)器操作,如允許/禁止計數(shù)、啟
動/停止計數(shù)等。
OUT為輸出信號引腳以相應(yīng)的電平或脈沖波形來指示計數(shù)的完成、定時時間到。
五、簡單應(yīng)用題(每小題5分,共15分)得分 評閱人
1.Intel8253的通道0按方式3工作,時鐘CLK0的頻率為1兆,要求輸出方波的頻率為40KHz,采用BCD碼計數(shù),設(shè)通道0的地址為PORT0,請對它寫入計數(shù)值。解:n(計數(shù)初值)=1MHz/40KHz=25 寫入計數(shù)值的程序段: MOV AL,25H OUT PORT0,AL
2.若8086系統(tǒng)采用單片8259A,其中斷類型碼為46H,則其中斷矢量表的地址指針是多少?這個中斷源應(yīng)連向8259A的哪一個IR輸入端? 解:中斷矢量表的地址指針是46H×4=118H 應(yīng)連向8259A的IR6
第五篇:微機原理與接口技術(shù) 實驗報告一
評
閱
微機原理與接口技術(shù)
實驗報告一
姓名
匡越
學(xué)號
1715211016
時間
地點
實驗題目
一、實驗?zāi)康?.熟悉Keil軟件使用
2.熟悉MCS-51指令
3.學(xué)習(xí)簡單程序的調(diào)試方法
二、實驗說明
通過實驗了解單片機內(nèi)部存儲器的結(jié)構(gòu)和分配及讀寫存儲器的方法,熟悉MCS-51指令同時,學(xué)習(xí)單片機程序編程、調(diào)試方法。
三、實驗內(nèi)容及步驟
1.啟動PC機,打開Keil軟件,軟件設(shè)置為模擬調(diào)試狀態(tài)。在所建的項目文件中輸入源程序1,進行編譯,如有錯誤按提示找到該行并糾錯,重新編譯直到通過。
2.編譯無誤后,打開CPU窗口,選擇單步或跟蹤執(zhí)行方式運行程序,觀察CPU窗口各寄存器的變化并將觀察到的結(jié)果記錄到預(yù)習(xí)報告。
3.新建另一個項目輸入源文件2,打開CPU窗口,選擇單步或跟蹤執(zhí)行方式運行程序,觀察存儲塊數(shù)據(jù)變化情況記錄到預(yù)習(xí)報告。點擊復(fù)位按鈕,改變存儲塊數(shù)據(jù),點擊全速執(zhí)行快捷按鈕,點擊暫停按鈕,觀察存儲塊數(shù)據(jù)變化情況,記錄到預(yù)習(xí)報告。點擊復(fù)位按鈕,改變存儲塊數(shù)據(jù),分別LOOP、LOOP1設(shè)置斷點,點擊全速執(zhí)行快捷按鈕,在斷點處觀察寄存器及存儲塊數(shù)據(jù)變化情況。
WAVE軟件使用方法參考其幫助文件。
四、實驗程序流程框圖、實驗程序
1、源程序1
ORG
0000H
AJMP
MAIN
ORG
0030H
MAIN:
MOV
R0,#30H;
(R0)=
(00H)=
MOV
A,#40H;
(A)=
MOV
R6,A;
(A)=,(R6)=
MOV
A,@R0;
(R0)=
(A)=
MOV
40H,A;
(A)=
(40H)=
MOV
30H,40H;
(30H)=
(40H)=
MOV
R1,#40H;
(R1)=
MOV
@R1,#0AAH;(R1)=
(40H)=
MOV
SP,#60H;
(SP)=
PUSH
ACC;
(SP)=
(61H)=
PUSH
30H;
(SP)=
(62H)=
MOV
A,#0FFH;
(SP)=
(A)=
MOV
30H,#30H;
(SP)=
(30H)=
POP
ACC;
(SP)=
(A)=
POP
30H;
(SP)=
(30H)=
ADD
A,30H;
(30H)=
(A)=
Cy=
SUBB
A,#10;
(A)=
Cy=
MOV
R4,#00100100B;
(R4)=
H
MOV
A,#39H;
(A)
=
ADD
A,R4;
(A)
=
(R4=)
DA
A;
(A)
=
Cy=
MOV
28H,#55H;(28H)
=
Cy=
MOV
C,40H;
(PSW)
=
Cy=
MOV
26H,#00H;(26H)
=
Cy=
MOV
30H,C;
(30H)
=
(26H.1)
=
SJMP
$
j點擊project,選擇下拉式菜單中的New
project;
k選擇所要的單片機,這里我們選擇常用的Ateml
公司的AT89C51;
l新建一個File,輸入源程序;
m將新建文件保存為text.asm的格式;
n鼠標(biāo)在屏幕左邊的Source
Group1
文件夾圖標(biāo)上右擊彈出菜單,在這里可以做在項目中增加減少文件等操作。選“Add
File
to
Group
‘Source
Group
1’”彈出文件窗口,選擇剛剛保存的文件;
o對程序進行編譯運行;
使程序一得:
ORG
0000H
AJMP
MAIN
ORG
0030H
MAIN:
MOV
R0,#30H
;
(R0)=
0x30
(00H)=
0x0000
MOV
A,#40H
;
(A)=
0x40
MOV
R6,A
;
(A)=
0x40,(R6)=
0x40
MOV
A,@R0
;
(R0)=
0x30
(A)=
0x16
MOV
40H,A
;
(A)=0x16
(40H)=
0x0040
MOV
30H,40H
;
(30H)=
0x0030
(40H)=
0x0040
MOV
R1,#40H
;
(R1)=
0x40
MOV
@R1,#0AAH;(R1)=
0x40
(40H)=
0x0040
MOV
SP,#60H;
(SP)=
0x60
PUSH
ACC;
(SP)=
0x61
(61H)=
0x0061
PUSH
30H;
(SP)=
0x62
(62H)=
0x0062
MOV
A,#0FFH;
(SP)=
0x62
(A)=
0xff
MOV
30H,#30H;
(SP)=
0x62
(30H)=
0x0030
POP
ACC;
(SP)=
0x61
(A)=
0x16
POP
30H;
(SP)=
0x60
(30H)=
0x0030
ADD
A,30H;
(30H)=
0x0030
(A)=
0x2a
Cy=
0
SUBB
A,#10;
(A)=
0x20
Cy=
0
MOV
R4,#00100100B;
(R4)=
0x24
H
MOV
A,#39H;
(A)
=
0x39
ADD
A,R4;
(A)
=
0x5d
(R4=)
0x24
DA
A;
(A)
=
0x63
Cy=
0
MOV
28H,#55H;(28H)
=
0x0028
Cy=
0
MOV
C,40H;
(PSW)
=
0x80
Cy=
MOV
26H,#00H;(26H)
=
0x0026
Cy=
MOV
30H,C;
(30H)
=
0x0030
(26H.1)
=
0
SJMP
$
2、源程序2
設(shè)(30H)=4,(31H)=1,(32H)=3,(33H)=5,(34H)=2,(35H)=6
ORG
0000H
AJMP
MAIN
ORG
0030H
MAIN:
MOV
R0,#30H;30H→R0
MOV
R2,#6;6→R2
SORT:
MOV
A,R0;30H→A
MOV
R1,A;30H→R1
MOV
A,R2;6→A
MOV
R5,A;6→R5
CLR
F0;
狀態(tài)標(biāo)志位清零
DEC
R5;寄存器R5減一
MOV
A,@R1;R1→A
LOOP:
MOV
R3,A;A→R3
INC
R1
;寄存器R1增1
CLR
C
;進位標(biāo)志位清零
MOV
A,@R1;31H→A
SUBB
A,R3;累加器內(nèi)容減去寄存器內(nèi)容
JNC
LOOP1;僅為標(biāo)志位為1,則進行LOOP1
;以下代碼完成數(shù)據(jù)交換
SETB
F0;狀態(tài)標(biāo)志位置1
MOV
A,@R1;31H→A
XCH
A,R3;將A于與R3的數(shù)據(jù)交換
MOV
@R1,A;將4賦值給寄存器R1(31H)
DEC
R1;寄存器減一
MOV
A,R3;1→A
MOV
@R1,A;將1賦值給寄存器R1(30H)
INC
R1;寄存器R1增一
LOOP1:
MOV
A,@R1;4→A
DJNZ
R5,LOOP;寄存器R5減一,不為零則回到LOOP
JB
F0,SORT;狀態(tài)標(biāo)志位為零,則回到SORT
SJMP
$