




版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領
文檔簡介
1、沈 陽 工 程 學 院微機原理及應用課 程 設 計課程設計題目:9秒倒計時設計系 別 電氣工程系 班級 發電本091 學生姓名 冀恩舉 學號 2009205112 指導教師 曲樂聲、蹤念品 職稱 講師、講師 起止日期: 2012年5月28日起至2011年6月1日止沈 陽 工 程 學 院 課程設計任務書課程設計題目:9秒倒計時設計系 別 電氣工程系 班級 發電本091 學生姓名 冀恩舉 學號 2009205112 指導教師 曲樂聲、蹤念品 職稱 講師、講師 課程設計進行地點: 微機原理實驗室(F106) 任 務 下 達 時 間:2012年 5月28 日起止日期:2012年 5月28日起至 201
2、2年6月 1日止教研室主任 王健 2011年5月24日批準一、設計目的通過課程設計使學生更進一步掌握微機原理及應用課程的有關知識,提高應用微機解決問題的能力,加深對微機應用的理解。通過查閱資料,結合所學知識進行軟、硬件的設計,使學生初步掌握應用微機解決問題的步驟及方法。為以后學生結合專業從事微機應用設計奠定基礎。二、設計的原始資料及依據查閱可編程并行芯片8255、中斷控制等其他相關資料。用簡單的輸入輸出端口等硬件,結合LED顯示計時秒數。 三、設計的主要內容及要求內容:利用微機原理實驗箱,采用一組發光二極管來模擬報警燈。要求:1.采用8253對307200HZ信號進行分頻作為秒脈沖。2.采用8
3、259中斷管理器對輸入的秒脈沖信號進行管理,及時更新8255的控制1個數碼管,讓其從9減到0,然后通過揚聲器發出警報 *3.可通過8個開關任意設置初值。四、對設計說明書撰寫內容、格式、字數的要求 1.課程設計說明書(論文)是體現和總結課程設計成果的載體,一般不應少于3000字。2.學生應撰寫的內容為:目錄、正文、參考文獻等。課程設計說明書(論文)的結構及各部分內容要求可參照沈陽工程學院畢業設計(論文)撰寫規范執行。應做到文理通順,內容正確完整,書寫工整,裝訂整齊。3.說明書(論文)手寫或打印均可。手寫要用學校統一的課程設計用紙,用黑或藍黑墨水工整書寫;打印時按沈陽工程學院畢業設計(論文)撰寫規
4、范的要求進行打印。4. 課程設計說明書(論文)裝訂順序為:封面、任務書、成績評定表、目錄、正文、參考文獻。五、 設計完成后應提交成果的種類、數量、質量等方面的要求;交課程設計說明書一份。在說明書中要有設計原理、硬件電路接線圖、設計的程序及必要注釋等。六、時間進度安排;順序階段日期計 劃 完 成 內 容備注11.5天討論設計題目、查閱資料及完成對硬件電路的基本設計22.5天程序設計、上機調試程序30.5天書寫報告40.5天答辯、成績評定七、主要參考資料(文獻)。1 王惠中. 微機原理及應用.武漢:武漢大學出版社,20112 鄒逢興. 微型計算機原理與接口技術實驗指導. 北京:清華大學出版社,20
5、093 趙全利, 呂建平, 鄒雪艷.微型計算機原理及接口技術.北京: 機械工業出版社,20094 何宏.微型計算機原理與接口技術.陜西:西安電子科技大學出版社,2009沈 陽 工 程 學 院微機原理及其應用課程設計成績評定表系(部): 電氣工程系 班級: 發電本091 學生姓名: 冀恩舉 指 導 教 師 評 審 意 見評價內容具 體 要 求權重評 分加權分調研論證能獨立查閱文獻,收集資料;能制定課程設計方案和日程安排。0.15432工作能力態度工作態度認真,遵守紀律,出勤情況是否良好,能夠獨立完成設計工作, 0.25432工作量按期圓滿完成規定的設計任務,工作量飽滿,難度適宜。0.25432說
6、明書的質量說明書立論正確,論述充分,結論嚴謹合理,文字通順,技術用語準確,符號統一,編號齊全,圖表完備,書寫工整規范。0.55432指導教師評審成績(加權分合計乘以12) 分加權分合計指 導 教 師 簽 名: 年 月 日評 閱 教 師 評 審 意 見評價內容具 體 要 求權重評 分加權分內容思路清晰,語言表達準確,概念清楚,論點正確;分析歸納合理;結論嚴謹;設計有應用價值。0.55432答辯回答問題有理論根據,基本概念清楚。主要問題回答準確,深入。0.45432時間符合要求0.15432評閱教師評審成績(加權分合計乘以8)分加權分合計評 閱 教 師 簽 名: 年 月 日課 程 設 計 總 評
7、成 績分摘 要本次設計的程序為9秒倒計時設計,是通過并行接口芯片8255、定時/計數器8254芯片與8086計算機的硬件連接,以及延時方法,來實現倒計時秒表的功能。選用8255A與LED數碼管相連,構成顯示電路。其中B端口與LED的位線相連,用于控制數字的輸入,A端口與LED顯示器的段控制口相連,并且通過循環右移來完成動態顯示的效果。其中片選接到系統總線的IOY0口。利用8254定時器控制一秒的時間進行倒計時,8254采用方式3輸出方波,用兩個計數器進行分頻,將有系統提供的1MHZ進行兩次分頻得到1HZ的頻率,即1s。通過尋找上升沿得到1s鐘的時間,完成每過1s減一次數的效果。再將8254輸出
8、的方波接到8255的PC0接口,即8255采用81H工作方式字,A、B端口輸出,C端口輸入。再利用8259產生中斷,每次按一次開關就進入循環延時程序,再按一次開關中斷結束,跳出循環程序。即通過開關控制倒計時的暫停和繼續。關鍵詞 :循環、延時、中斷、分頻目 錄摘 要I第一章 概述11.1 CPU發展史11.2 設計題目11.3 設計目的11.4 設計要求21.5 設計內容2第二章 設計器材與芯片32.1設計器材32.2芯片功能介紹32.2.1 8255A芯片主要功能32.2.2 8254芯片主要功能5 2.2.3 8259芯片主要功能.7第三章 硬件設計113.1 設計思路113.2 電路原理圖
9、12第四章 軟件設計134.1 顯示電路流程圖134.2 秒控制電路流程圖144.3 匯編指令介紹154.4 源程序清單及注釋22結 論27致 謝28參考文獻29第一章 概述1.1 CPU發展史CPU(Central Processing Unit)被稱呼為微處理器。微處理器是微型計算機的核心部件,它的性能在很大程度上決定了微型計算機的性能。目前,以Pentium Pro(P6)為代表的微處理器已經進入第六代。下面介紹一下CPU的發展史:第一代(1971-1973年):4位或低檔8位微處理器。第一代微處理器的芯片采用PMOS(Metal-Oxide Semicondutor,金屬氧化物半導體)
10、工藝。第二代(1974-1978年):中高檔8位微處理器。第二代微處理器的芯片采用NMOS工藝。第三代(1978-1983年):16位微處理器。第三代微處理器采用HMOS高密度集成工藝技術。第四代(1983-1993年):32位高檔微處理器。第四代微處理器采用先進的高速CMOS(HCMOS)工藝。第五代(1993年后):準64位高檔微處理器。第五代微處理器采用亞微米的CMOS工藝制造。第六代(1995年后):64位微處理器。第六代微處理器性能優異,適應當前對多媒體、網絡、通信等多方面的要求。隨著科學技術的發展,會不斷地對微處理器提出新的要求,新型、新概念的微處理器定會層出不窮。1.2 設計題目
11、用七段LED數碼管顯示9秒倒計時1.3 設計目的通過本學期對微機原理的學習,掌握的知識還停留在理論的上。但是這是一門實踐性較強的課程,讓學生在學完該課程之后,進行一次課程設計,使學生將課堂所學的知識和實踐有機結合起來,初步掌握計算機應用系統設計的步驟和接口設計的方法,提高分析和解決實際問題的能力。通過設計實踐,培養學生查閱專業資料,工具書或參考書,了解有關工業標準,掌握現代設計手段和軟件工具,并能以圖紙和說明書表達設計思想和結果的能力。通過設計,不但要培養和提高學生解決工程具體問題,動腦動手的技術工作能力,而且還要逐步建立科學正確的設計和科研思想,培養良好的設計習慣,牢固樹立實事求是和嚴肅認真
12、的工作態度。具體要求如下:1、中斷工作原理,定時計數原理,并行通信原理工作原理。2、掌握8255芯片,8254芯片功能,結構。3、掌握8255芯片,8254芯片的編程。4、能運用所提到的芯片,設計系統并進行程序開發,滿足用戶需求。1.4 設計要求1、總體內容:設計一電子時鐘,能在數碼管上顯示時間并實現倒計時。2、接口設計:根據題目和所用的接口電路芯片設計出完整的接口電路,并在實驗系統上完成電路的連接和調試通過.3、程序設計:要求畫出程序框圖,設計出全部程序并給出程序設計說明和程序注釋。4、前期完成的實驗有:8259A中斷控制器實驗,8255并行接口實驗,8254定時器實驗。1.5 設計內容用七
13、段LED數碼管顯示倒計時從原理上講是一種典型的數字電路,其中包括了組合邏輯電路和倒時序電路。傳統的設計方法有兩種,一是利用組合邏輯電路和時序電路等中小規模集成電路來設計;一是利用單片機編程技術來設計。這兩種設計都存在硬件復雜,設計周期長,成本高等缺點。并且本學期通過對微型計算機原理及應用的學習,利用掌握的知識進行實踐是必要的,以鞏固基礎知識,培養獨立操作能力。本次課程設計要實現的功能為:利用8255A與LED數碼顯示器連接,開始時輸入初值9秒,利用8254定時器的分頻功能將CPU提供的系統時鐘頻率1.041667MHz,分頻為1HZ,以此來得到1s的準確時間。然后每隔1秒,秒鐘計時減一。在其中
14、又通過對8259中斷程序的應用,來實現通過開關控制暫停計時、繼續計時的功能。第二章 設計器材與芯片2.1設計器材1、PC微機一臺:用于對程序的編譯測試等,同時還需要對實驗設備進行控制,提供整個程序的運行平臺,并且收集和釋放硬件信號,實現程序功能。2、微機原理實驗箱一臺:此設備必須能提8255A、8254芯片和數碼管等必要芯片。并且能通過接受PC機傳來的信息,顯示出相應的功能。以支持LED顯示管倒計時的實現。3、導線若干條:用于電路和芯片之間的連接。2.2芯片功能介紹2.2 .1 8255簡介8255可編程外圍接口芯片是Intel公司生產的通用并行I/O接口芯片,它具有A、B、C三個并行接口,用
15、+5V單電源供電,能在以下三種工作方式下工作,下面將具體說明這三種工作方式:方式0基本輸入/輸出方式;方式1選通輸入/輸出方式;方式2雙向選通輸入/輸出方式。1 . 8255工作方式工作方式分別為工作方式0,工作方式1和工作方式2。1、工作方式0,又稱為基本工作方式。在此方式下,可分別將A口的8條線,B口的8條線,C口高4位對應的4條線和C口的低四位對應的四條線定義為輸入或輸出。故它們的輸入輸出共有16種不同的組合。A 組B組A口(PA0-PA7)C口(PC4-PC7)B口(PB0-PB7)C口(PC0-PC3)入入入入入入入出入入出入入入出出入出入入入出入出入出出入入出出出出入入入出入入出出
16、入出入出入出出出出入入出出入出出出出入出出出出表2.1 8255輸入輸出組合2:工作方式1,既選通輸入輸出方式。在這種方式下,A口和B口仍作為數據的輸出口和輸入口,同時還要利用C口的某些位作為控制和狀態信號。3:工作方式2,又稱雙向輸入輸出方式。這種方式只有8255的口A才有。在A口工作于雙向輸入輸出方式時,要利用C口的5條線才能實現。因此,B口只能工作在工作方式0或工作方式1,而C口剩下的3條線可以作為輸入輸出線使用或B口方式1下的控制線。 2 . 8255的控制字 圖2.2 8255的控制字8255 工作方式控制字和C口按位置位/復位控制字格式說明:當控制字BIT71時,控制字的BIT6B
17、IT3這4位用來控制A組,即A口的8位和C口的高4位,而控制字的低3位BIT2BIT0用來控制B組,包括B口的8位和C口的低4位。8255的C口具有位控功能,即端口C的8位中的任一位都可通過CPU向8255的控制寄存器寫入一個按位置位/復位控制字來置1或清0,而C口中其他位的狀態不變。其格式注意8255的C口按位置位/復位控制字的最高位D7(特征位)應為0。2.2.2 8254芯片主要功能(一)8254定時/計數器的引腳及功能8254是NMOS工藝制成,采用單一+5V電源,24引腳雙列直插式封裝,外部引腳如下所示: 圖2.3 8254定時/計數器的引腳1、8254與CPU的接口引線D7D0:雙
18、向數據線:可直接與數據總線相連,用于傳遞各種數據信息;/WR:寫信號,輸入,低電平有效,用于控制CPU對8254的寫操作;/RD:讀信號,輸入低電平有效。用于控制CPU對8254的讀操作;A1、A0:地址線,輸入信號;/CS:片選信號,輸入信號,低電平有效。當/CS為0時,8254被選中,允許CPU對其進行讀/寫操作。2、8254與外設的接口引線CLKOCLK2:時鐘輸入信號;GATE0GATE2:門控輸入信號;OUT0OUT2:計數輸出端。3、定時與計數方式(二)內部結構數據總線緩沖器 讀/寫邏輯電路 控制字寄存器 計數器。(三)8254方式控制字定時/計數器8254的每個計數通道根據CPU
19、發命令寫入控制寄存器的控制字確定工作方式和計數格式。8254控制字的格式如下所示:D7、D6:計數器選擇位SC1、SC0。8254的3個計數器相互獨立,并且都有一個控制寄存器。但這三個控制寄存器占用同一個端口地址,即A1A0=11;D5、D4:讀/寫指示位RW1、RW0。CPU向某個計數器寫入初值和讀取它們的當前值時不同的格式;D3、D2、D1:工作方式選擇位M2、M1、M0。8254有6種工作方式,選擇哪種工作方式由M2、M1、M0編碼確定;DO:數值計數格式,用來選擇計數格式。DO=O,計數器按二進制格式計數;D0=1,計數器按BCD碼格式計數。2.2.3 8259簡介8259是一種可編程
20、的中斷控制器。每塊芯片可管理8級向量中斷,同時,可通過多片級連實現多達64級的中斷管理。 中斷控制器8259有四種主要工作方式,即全嵌套、循環優先級、特定屏蔽和程序查詢方式。同時,它還有一4種從屬工作方式,即結束中斷、讀狀態、中斷請求觸發和數據緩沖方式。1 8259的工作方式(1)特殊屏蔽方式在正常情況下,當一個中斷請求被響應時,8259將被禁止所有同級及更低優先級中斷請求這就稱為一般屏蔽方式。但是,在一特殊情況下,希望也允許較低優先級的中斷請求產生中斷。(2)中斷結束中斷結束分自動結束和利用命令結束(3)優先級循環它有兩種優先級規定:循環優先級和固定優先級。固定優先級規定8個中斷源以IR0的
21、優先級最高依次降低。循環優先級有3個結構:自動優先級循環用于中斷源具有相等優先級的情況。指定優先級循環可以利用命令一次性改變優先級。自動結束方式下的優先級循環,其優先權控制方式與自動優先級循環的相同。(4)查詢狀態通過將操作命令字OCW3中的P位置1,可以查詢8259的狀態。 2 . 8259的內部控制字8259工作之前必須通過CPU來命令它。CPU命令分為兩大類:一類是初始化命令字(ICW),主要是為了讓8259處于初始化狀態;另一類是操作命令字(OCW),使初始化的8259去執行具體的某種操作方式。 初始化命令字 初始化命令字ICW1(寫入偶地址)1LTIMASIC4 1:需要ICW4 0
22、:不需要ICW4 1:單片8259 0:多片8259級聯1:間隔為4 0:間隔為81:電平觸發 0:邊沿觸發 8080/85模式下,中斷 低口低8編程位圖2.4 8259初始化命令字ICW1 初始化命令字ICW2(寫入奇地址) 8086/88模式下,僅用ICW2提供不同中斷源的中斷向量碼。當中斷響應時,根據中斷向量表獲得入口地址。 初始化命令字ICW3(寫入奇地址) 該命令字用于多片8259的級聯。 1:相應IR接從屬8259 0:不接8259 主控ICW300000 3位編碼對應從屬 8259接主控的IR編號 從屬ICW3圖2.5 8259初始化命令字ICW3 初始化命令字ICW4(寫入奇地
23、址) 2 操作命令字OCW (可單獨使用)對8259初始化之后,該芯片就進入工作狀態,準備好接收IR端進入的中斷請求。 操作命令字OCW1(寫入奇地址)它用于設置對8259中斷的屏蔽操作。該八位的操作字的某一位為1時,它就屏蔽相對應的IR輸入。 操作命令字OCW2(寫入偶地址)該命令字用來設置優先級是否循環、循環的方式及中斷結束的方式。RSLEOI00L2L1L0 編碼對應IR的 最低優先級 0 0 1 一般EOI 0 1 1 特殊EOI 中斷結束命令 1 0 1 循環優先級的一般EOI命令 1 0 0 在自動EOI下置循環優先級 自動循環 0 0 0 在自動EOI下清循環優先級 1 1 1
24、循環優先級的特殊EOI命令 1 1 0 設置優先級 特殊循環 0 1 無效圖2.6 8259初始化命令字OCW2第三章 硬件設計3.1 設計思路設計倒計時秒表,利用8255A與LED數碼管相連,構成顯示電路。其中B端口與LED的位線相連,用于控制數字的輸入,A端口與LED顯示器的段控制口相連,并且通過循環右移來完成動態顯示的效果。其中片選接到系統總線的IOY0口。利用8254定時器控制一秒的時間進行倒計時,8254采用方式3輸出方波,用兩個計數器進行分頻,將有系統提供的1MHZ進行兩次分頻得到1HZ的頻率,即1s。通過尋找上升沿得到1s鐘的時間,完成每過1s減一次數的效果。再將8254輸出的方
25、波接到8255的PC0接口,即8255采用81H工作方式字,A、B端口輸出,C端口輸入。再利用8259產生中斷,每次按一次開關就進入循環延時程序,再按一次開關中斷結束,跳出循環程序。即通過開關控制倒計時的暫停和繼續。3.2 電路原理圖 8254 XD0 |系 XD7 XA1統 XA2 IOW#總 IOR# IOY3線 IOY0 CLK MIR7D0 OUT0 | CLK1D7 GATE0A0 GATE1A1 OUT1WR RD CSCLKD0 PB0 | |D7 PB7A0 PC0A1WR PA0RD CS A|DpX0KK1+ 8255A LED顯示器圖3.1電路原理圖第四章 軟件設計4.1
26、 顯示電路流程圖結束 開始SIGF首地址CL0F7H(AL)SI(AH)0DIAX+BXB端口DIA端口CL調用延時程序循環右移CL80H結果=0?SI+1圖4.1顯示電路流程圖4.2 秒控制電路流程圖 開始計數器0,方式3A端口03E8H計數器1,方式3B端口03E8HALPC0(AL)01H(AL)-1AL=0?TTALAHTT(AH)-1AH=0?結束圖4.1 秒控制電路流程圖4.3 匯編指令介紹一、數據傳送指令1、通用數據傳送指令MOV(Move)傳送PUSH(Push onto the stack)進棧POP(Pop from the stack)出棧MOV指令格式為:MOV
27、0; DST,SRC執行的操作:(DST)<-(SRC)PUSH進棧指令格式:PUSH SRC執行的操作:(SP)<-(SP)-2 (SP)+1,(SP)<-(SRC).POP出棧指令格式為:POP DST執行的操作:(DST)<-(SP+1),(SP) (SP)<-(SP)+22、累加器專用傳送指令IN
28、(Input) 輸入OUT(Output) 輸出這組指令只限于使用累加器AX或AL傳送信息.IN 輸入指令長格式為: IN AL,PORT(字節) IN AX,PORT(字)執行的操作: (AL)<-(PORT)(字節) (AX)<-(PORT+1,PORT)(字)短格式為:IN AL,DX(字節)
29、 IN AX,DX(字)執行的操作: AL<-(DX)(字節) AX<-(DX)+1,DX)(字)OUT 輸出指令長格式為: OUT PORT,AL(字節) OUT
30、160; PORT,AX(字)執行的操作:(PORT)<-(AL)(字節) (PORT+1,PORT)<-(AX)(字)短格式為: OUT DX,AL(字節) OUT DX,AX(字)執行的操作:(DX)<-(AL)(字節)
31、 (DX)+1,(DX)<-AX(字)3、有效地址送寄存器指令LEA(Load effective address)有效地址送寄存器LDS(Load DS with Pointer)指針送寄存器和DSLES(Load ES with Pointer)指針送寄存器和ESLEA 有效地址送寄存器格式為: LEA REG,SRC執行的操作:(REG)<-SRC 指令把源操作數的有效地址送到指定的寄存器中LDS 指針送寄存器和DS指令格式
32、為: LDS REG,SRC執行的操作:(REG)<-(SRC) (DS)<-(SRC+2) 把源操作數指定的4個相繼字節送到由指令指定的寄存器及DS寄存器中.該指令常指定SI寄存器。LES 指針送寄存器和ES指令格式為: LES REG,SRC執行的操作:(REG)<-(SRC) (ES)&l
33、t;-(SRC+2) 把源操作數指定的4個相繼字節送到由指令指定的寄存器及ES寄存器中.該指令常指定DI寄存器4、標志寄存器傳送指令LAHF(Load AH with flags)標志送AHSAHF(store AH into flags)AH送標志寄存器PUSHF(push the flags) 標志進棧POPF(pop the flags) 標志出棧LAHF 標志送AH格式為:LAHF執行的操作:(AH)<-(PWS的低字節)SAHF AH送標志寄存器格式為:SAHF執行的操作:(PWS的低字節)<-(AH)PUSHF 標志進棧格式為:PUSHF執行的操作:(SP)&
34、lt;-(SP)-2 (SP)+1(SP)<-(PSW)POPF 標志出棧格式為: POPF執行的操作:(PWS)<-(SP)+1,(SP) (SP)<-(SP+2)二、算術指令1、加法指令ADD(add)加法ADC(add with carry)帶進位加法INC(increment)加1ADD 加法指令格式:ADD
35、 DST,SRC執行的操作:(DST)<-(SRC)+(DST)ADC 帶進位加法指令格式: ADC DST,SRC執行的操作:(DST)<-(SRC)+(DST)+CF.ADD 加1指令格式:INC OPR執行的操作:(OPR)<-(OPR)+12、減法指令SUB(subtract)減法SBB(subtract with borrow)帶借位減法DEC(Decrement)減1NEG(Negate)求補CMP(Compare)比較SUB 減法指令格式: SUB
36、; DST,SRC執行的操作:(DST)<-(DST)-(SRC)SBB 帶借位減法指令格式: SBB DST,SRC執行的操作:(DST)<-(DST)-(SRC)-CFDEC 減1指令格式: DEC OPR執行的操作:(OPR)<-(OPR)-1NEG 求補指令格式:NEG OPR執行的操作:(OPR)<- -(OPR)CMP 比較指令格式:CMP OPR1,OPR2執行的操作:(OPR1)-(OPR2)該指令與SUB指令一樣執行減法操作,但不保存結果,只是根
37、據結果設置條件標志。3、乘法指令MUL(Unsigned Multiple)無符號數乘法IMUL(Signed Multiple)帶符號數乘法MUL 無符號數乘法指令格式: MUL SRC執行的操作: 字節操作數:(AX)<-(AL)*(SRC) 字操作數:(DX,AX)<-(AX)*(SRC)IMUL 帶符號數乘法指令格式: IMUL SRC執行的操作:與MUL相同,但必須是帶符號數,而MUL是無符號數。4、除法指令DIV(Unsigned divide)無符號數除法IDIV(Sign
38、ed divide)帶符號數除法CBW(Convert byte to word)字節轉換為字CWD(Contert word to double word)字轉換為雙字DIV 無符號數除法指令格式:DIV SRC執行的操作: 字節操作:(AL)<-(AX)/(SRC)的商 (AH)<-(AX)/(SRC)的余數 字操作:(AX)<-(DX,AX)/(SRC)的商 &
39、#160; (AX)<-(DX,AX)/(SRC)的余數IDIV 帶符號數除法指令格式:DIV SRC執行的操作與DIV相同,但操作數必須是帶符號數,商和余數也均為帶符號數,且余數的符號與被除數的符號相同。CBW 字節轉換為字指令格式:CBW執行的操作:AL的內容符號擴展到AH.即如果(AL)的最高有效位為0,則(AH)=00;如(AL)的最高有效位為1。則(AH)=0FFHCWD 字轉換為雙字指令格式:CWD執行的操作:AX的內容符號擴展到DX,即如(AX)的最高有效位為0,則(DX)=0;否則(DX)
40、=0FFFFH。三、邏輯指令1、邏輯運算指令AND(and) 邏輯與OR(or) 邏輯或NOT(not) 邏輯非XOR(exclusive or)異或TEST(test) 測試AND 邏輯與指
41、令格式:AND DST,SRC執行的操作:(DST)<-(DST)(SRC)OR 邏輯或指令格式:OR DST,SRC執行的操作:(DST)<-(DST)V(SRC)NOT 邏輯非指令格式: NOT OPR執行的操作:(OPR)<-(OPR)XOR 異或指令格式:XOR DST,SRC執行的操作:(DST)<-(DST)V(SRC)TEST 測試指令格式:TEST OPR1,OPR2執行的操作
42、:(DST)(SRC)兩個操作數相與的結果不保存,只根據其特征置條件碼2、移位指令SHL(shift logical left) 邏輯左移SAL(shift arithmetic left) 算術左移SHR(shift logical right) 邏輯右移SAR(shift arithmetic right)
43、 算術右移ROL(Rotate left) 循環左移ROR(Rotate right) 循環右移RCL(Rotate left through carry) 帶進位循環左移RCR(Rotate right
44、 through carry) 帶進位循環右移3、循環指令LOOP 循環指令格式:LOOP OPR測試條件:(CX)<>0LOOPZ/LOOPE 當為零或相等時循環指令格式: LOOPZ(或LOOPE) OPR測試條件:(CX)<>0且ZF=1LOOPNZ/LOOPNE 當不為零或不相等時循環指令格式: LOOPNZ(或LOOPNE) OPR測試條件: (CX)<>0且ZF=0這三條指令的步驟是:1) (CX)<-(CX)-12) 檢查是否滿足測試條件,如滿足則(IP)<-(IP)+D8的符號擴充.4、子程序C
45、ALL調用指令RET返回指令5、中斷INT指令格式:INT TYPE或 INT執行的操作:(SP)<-(SP)-2 (SP)+1,(SP)<-(PSW) (SP)<-(SP)-2 (SP)+1,(SP)
46、<-(CS) (SP)<-(SP)-2 (SP)+1,(SP)<-(IP) (IP)<-(TYPE*4)
47、160; (CS)<-(TYPE*4+2)4.4 源程序清單及注釋MY8255_MODE EQU 0606H ;宏定義MY8255_A EQU 0600H MY8255_B EQU 0602H MY8255_C EQU 0604HA8254 EQU 06C0HB8254 EQU 06C2HC8254 EQU 06C4HCON8254 EQU 06C6HSSTACKSEGMENT STACK ;堆棧段DW 32 DUP(?)SSTACKENDS DATA SEGMENT ;數據段GF DB 9 TT DB (?) QDXSDB 3FH,06H,5BH,4FH,66H,6DH,7DH,07H
48、 ;七段顯示定義DB 7FH,6FHDATA ENDS ;代碼段 CODE SEGMENT ASSUME CS:CODE,DS:DATASTART: MOV AX,DATA ;初始化MOV DS,AXMOV BP,00H MOV DX,MY8255_MODE ;選擇8255工作方式MOV AL,81H ;A、B端口輸出C口輸入OUT DX,AL MOV BX,OFFSET QDXS ;將QDXS首地址送入BXMOV DX, CON8254 ;初始化8254MOV AL, 36H ;計數器0,方式3OUT DX, ALMOV DX, A8254 ;A端口分頻一次MOV AL, 0E8H ;送出1000HZOUT DX, ALMOV AL, 03HOUT DX, ALMOV DX, CON8254 MOV AL, 76H ;計數器1,方式3OUT DX, AL MOV DX, B8254 ;B端口第二次分頻MOV AL, 0E8H ;送出1HZOUT DX, ALMOV AL, 03HOUT DX, ALPUSH DS ;8259中斷向量表初始化MOV AX, 0000HMOV DS, AXMOV SI, 003CHMOV DX, OFFSET JJSGIR7 ;中斷矢量地址MOV SI, DX ;填IRQ7的偏移矢量MOV AX, SEG JJ
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯系上傳者。文件的所有權益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經權益所有人同意不得將文件中的內容挪作商業或盈利用途。
- 5. 人人文庫網僅提供信息存儲空間,僅對用戶上傳內容的表現方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
- 6. 下載文件中如有侵權或不適當內容,請與我們聯系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 兄弟單位結對合作合同標準文本
- 分期購車協議合同樣本
- 辦卡合同樣本
- 別墅保潔服務合同標準文本
- 出游服裝租賃合同標準文本
- 俊發購房合同標準文本
- 包賠合同樣本
- 制冰設備租賃合同標準文本
- 出租山場合同樣本
- 勞動合同標準文本 導游
- 撤資退股合同協議
- 上海市嘉定區聯考2023-2024學年五年級下學期期中數學試題(含答案)
- (人教PEP版2025新教材)英語三年級下冊全冊教案
- 統編版(2024)一年級語文下冊12荷葉圓圓 課件
- 泳池裝修承包協議書
- 2024年河南高職單招職測模擬題庫及答案解析(共100道試題)
- 數字化時代企業成本管控
- 2024詩詞大會100題題庫(含答案)
- 2024年浙江省中考英語試題卷(含答案解析)
- 30題騰訊云智研發技術運營崗位常見面試問題含HR問題考察點及參考回答
- GB/T 17554.1-2006識別卡測試方法第1部分:一般特性測試
評論
0/150
提交評論