2023年全國碩士研究生考試考研英語一試題真題(含答案詳解+作文范文)_第1頁
已閱讀1頁,還剩15頁未讀, 繼續(xù)免費閱讀

下載本文檔

版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領

文檔簡介

1、<p>  計算機硬件技術實踐報告</p><p>  題目 簡易計算器的設計 </p><p>  姓名 </p><p>  專業(yè) 自動化(電站方向) </p><p> 

2、 班級 </p><p>  學號 </p><p><b>  一、設計題目及目的</b></p><p>  本次課程設計的實驗目的是:通過該實驗掌握較復雜程序的設計;能獨立完成用程序對8086、8255A控制鍵盤和LED顯示的控制,

3、完成計算器加減法的應用;獨立編寫程序,明白和掌握程序的原理和實現方式;學習和掌握計算機中常用接口電路的應用和設計技術,充分認識理論知識對應用技術的指導性作用;進一步加強理論知識與應用相結合的實踐和鍛煉,為以后的設計提供經驗。這次設計實踐,加深了我對專業(yè)知識和理論知識學習的認識和理解,使我的設計水平和對所學的知識的應用能力以及分析問題解決問題的能力得到全面提高。我們的具體任務是用8086設計一個能實現0~9整數加減乘除法的運算器,并用2位

4、LED數碼顯示,鍵盤包括0-9,+ ,-,×,÷,=,NO/C共16個按鍵。</p><p>  二、小組成員分工及成果</p><p>  在實驗課程要求下,我們選擇基于8086CPU的模擬計算器設計。要完成設計首先需要構建簡單的微型計算機應用系統(tǒng),其次是確定組成各部件的芯片,然后畫原理圖,根據相應的原理以及實現過程,編寫出相應的匯編代碼。再根據原理圖連接硬件電路,電

5、路連接完成后進行調試。設計過程中我們用到了8086CPU、可編程并行輸入/輸出芯片8255A、74HC138、74HC373、矩陣式鍵盤、LED數碼管。我們的模擬計算器能實現2位十進制數以內的加減乘除法運算。</p><p>  首先,本組的三個成員一起討論研究簡易計算器設計的主要方案。</p><p>  粗略設計程序流程圖以確定簡易計算器設計的大概框架。</p><

6、p>  明確目的后各自查詢資料了解設計原理、逐步清晰設計思路。</p><p>  以下為大體分工:主要負責:1、設計主要程序,編寫;</p><p>  2、查找資料驗證修改;</p><p>  主要負責:1、選擇需要用的各個芯片;</p><p>  2、設計硬件原理圖;</p><p>  主要負責:1、

7、各個芯片功能的資料查找;</p><p><b>  2、設計程序流程圖</b></p><p><b>  三、設計方案思路</b></p><p>  用8086設計一個能實現0~9整數加減乘除法的運算器,并用2位LED數碼顯示,鍵盤包括0-9,+ ,-,×,÷,=,NO/C共16個按鍵。</

8、p><p>  1、通過小鍵盤做加減乘除運算。</p><p>  2、數碼管顯示器作輸入數據和結果數據的顯示。</p><p>  3、數字用小鍵盤0~9,“C、+、-、×、÷、= ”做功能鍵</p><p>  4、運算順序:a.首先輸入一個原始數據(在0~9之間,否則無反應)顯示器跟隨顯示</p><

9、p>  b.按“+、-、×、÷”顯示器內容不變</p><p>  c.再次輸入一個數據(在0~9之間,否則無反應)顯示器跟隨顯示</p><p>  d.按“=”顯示器顯示結果數據</p><p>  e.按C顯示“00”數據清0,并重新開始運算</p><p>  f.若輸入一個數據后直接按“=”則數據不變<

10、;/p><p><b>  設計思路:</b></p><p>  將整個程序劃分為鍵盤掃描部分,顯示部分,運算程序部分。首先利用程序不斷掃描鍵盤是不是有輸入,如果沒有就一直掃描,如果有就停止掃描,完成輸入,利用匯編的程序核對輸入鍵的數值,通過調用子程序實現運算。運算完成后將運算的結果儲存并顯示到LED顯示器上。</p><p>  軟件流程大致如

11、下:開始,然后是系統(tǒng)的初始化,進行鍵盤掃描,對掃描的鍵值進行判斷(分為數字鍵和功能鍵),若為數字鍵,則執(zhí)行數字鍵處理程序,即顯示數字并將數值存儲;若為功能鍵,則先判斷是否為清屏,如是清屏,則執(zhí)行清屏子程序,如是加減乘除運算鍵則調用相應程序運算,如是等號鍵,則先判斷上個符號位,調用相對應的運算子程序進行運算,如此就可以得到需要的結果了。 </p><p>  四、硬件原理圖(包括芯片的選型介紹

12、)</p><p>  硬件電路圖:(見圖1)</p><p><b>  圖1 原理圖</b></p><p><b>  1、鍵盤輸入模塊</b></p><p>  鍵盤是常用信息輸入元件,其實鍵盤也是由一個個按鈕組成,如果是獨立按鈕的話必須要對應一個I/O口對它進行檢測,而鍵盤往往只需要鍵

13、盤按鈕數一半的I/O口對它進行檢測,也許對一個比較簡單的系統(tǒng)I/O口數一般不是問題,但對于一個大型、復雜的系統(tǒng)來說I/O資源就顯得非常珍貴了,盡量減少I/O使用是非常利于降低成本,另外一方面鍵盤比用獨立按鍵要美觀,同時硬件上的節(jié)省必然導致軟件上編程的復雜。我們設計時使用的是4*4式鍵盤,如圖2所示。</p><p><b>  圖2 鍵盤</b></p><p> 

14、 圖中有4行4列,4根行線與PC口相連,4根列線與PA口相連。按鍵設置在行、列交點處(數字或字符為其鍵號),行、列線分別連接到按鍵開關的兩端。鍵盤中有無按鍵按下是由行線送入全掃描字、列線讀入行線狀態(tài)來判斷。這就是:給行線所有I/O線均置成低電平,然后讀入列線電平狀態(tài)。如果有按鍵按下,總會有一根列線電平被拉至低電平,從而使列線輸入不全為1。</p><p>  2、可編程并行通信接口芯片8255A</p>

15、;<p><b>  圖3 8255A</b></p><p>  (1)并行輸入/輸出端口A,B,C</p><p>  8255A內部包括三個8位的輸入輸出端口,分別是端口A、端口B、端口C,相應信號線是PA7~PA0、PB7~PB0、PC7~PC0。端口都是8位,都可以作為輸入或輸出。通常將端口A和端口B定義為輸入/輸出的數據端口,而端口C則既可

16、以作數據端口,又可以作為端口A和端口B的狀態(tài)和控制信息的傳送端口。</p><p> ?。?)A組和B組控制部件</p><p>  端口A和端口C的高4位(PC7~PC4)構成A組;由A組控制部件實現控制功能。端口B和端口C的低4位(PC3~PC0)構成B組;由B組控制部件實現控制功能。 A組和B組利用各自的控制單元來接收讀寫控制部件的命令和CPU通過數據總線(D0~D7)送來的控制字,

17、并根據他們來定義各個端口的操作方式。</p><p>  (3)數據總線緩沖存儲器</p><p>  三態(tài)雙向8位緩沖器,是8255A與8086CPU之間的數據接口。與I/O操作有關的數據、控制字和狀態(tài)信息都是通過該緩沖器進行傳送。</p><p>  (4) 讀/寫控制部件</p><p>  8255A是能完成讀/寫控制功能的部件。能接

18、收CPU的控制命令,并根據控制命令向各個功能部件發(fā)出操作指令。</p><p>  CS 片選信號:由CPU輸入,有效時表示該8255A被選中。 </p><p>  RD, WR 讀、寫控制信號:由CPU輸入。RD有效表示CPU讀8255A,WR有效表示CPU寫8255A</p><p>  RESET 復位信號:由CPU輸入。RESET信號有效,清除8255A中

19、所有控制字寄存器內容,并將各個端口置成輸入方式。</p><p>  圖4 8255A內部結構</p><p>  定義工作方式控制字:</p><p>  工作方式0:8255A中各端口的基本輸入/輸出方式。</p><p>  圖5 8255A工作方式控制</p><p><b>  3、顯示模塊<

20、;/b></p><p><b>  圖6 顯示器</b></p><p>  顯示原理:顯示子程序把數據每一位獨立顯示,每次從最高位顯示到最低位,在掃描鍵盤的時候不斷調用顯示子程序,形成了從高位到低位的不斷循環(huán)顯示,由于循環(huán)速度快,看起來就好像一起顯示的。</p><p><b>  4、74HC373</b>&

21、lt;/p><p>  圖7 74HC373</p><p>  其中AD0-AD7為數據輸入端,A0-A7為輸出端。</p><p>  當三態(tài)允許控制端OE為低電平時,A0-A7為正常邏輯狀態(tài),可用來驅動負載或總線,當OE為高電平時,A0-A7成高阻態(tài),不驅動總線。</p><p>  當鎖存允許端LE為高電平時,A隨數據AD而變,當LE為

22、低電平AD被鎖存在已建立的數據電平。</p><p><b>  5、74HC138</b></p><p>  圖8 74HC138</p><p>  74HC138是一款高速CMOS器件,74HC138引腳兼容低功耗肖特基TTL(LSTTL)系列。</p><p>  74HC138譯碼器可接受3位二進制加權地址

23、輸入(A0, A1和A2),并當使能時,提供8個互斥的低有效輸出(Y0至Y7)。74HC138特有3個使能輸入端:兩個低有效(E1和E2)和一個高有效(E3)。除非E1和E2置低且E3置高,否則74HC138將保持所有輸出為高,74HC138為反相輸出,它按照三位二進制輸入碼和賦能輸入條件,從8 個輸出端中譯出一個 低電平輸出。兩個低電平有效的賦能輸入端和一個高電平有效的賦能輸入端減少了擴展所需要的外接門或倒相器。</p>

24、<p><b>  6、8086CPU</b></p><p><b>  圖9</b></p><p>  8086CPU的40條引腳信號可按功能分可分為四類,它們是:地址總線,數據總線,控制總線,其它(時鐘與電源)。 最小模式下一些引腳功能(MN/MX接+5V):</p><p>  AD15~AD0,地址

25、/數據總線 </p><p>  A19/S6~A16/S3,地址/狀態(tài)總線 </p><p><b>  RD,讀信號 </b></p><p><b>  WR,寫信號 </b></p><p>  M/IO,存儲器/輸入輸出控制信號</p><p>  ALE,地址鎖存

26、允許信號</p><p>  READY(Ready),準備就緒信號</p><p>  INTR,可屏蔽中斷請求信號</p><p>  INTA,中斷響應信號 </p><p>  NMI,非屏蔽中斷請求信號</p><p>  RESET,系統(tǒng)復位信號 </p><p>  DEN,數據允

27、許信號 </p><p>  DT/R,數據發(fā)送/接收控制信號</p><p>  HOLD,總線保持請求信號輸入 </p><p>  HLDA,總線保持響應信號 </p><p>  TEST,測試信號 </p><p>  CLK,時鐘輸入信號 </p><p>  VCC(+5V),GN

28、D </p><p><b>  五、程序流程圖</b></p><p>  六、程序清單,要有適當的注釋</p><p>  DATA SEGMENT</p><p>  NUM1 DB 03H DUP(0)</p><p>  NUM DB 03H DUP(0)</p>

29、;<p><b>  DATA ENDS</b></p><p>  STACK SEGMENT</p><p>  DW 100 DUP(0)</p><p>  STACK ENDS</p><p>  CODE SEGMENT</p><p>  ASSUME CS:CODE

30、,DS:DATA,SS:STACK</p><p>  PORTA EQU 30H ;A口地址</p><p>  PORTB EQU 32H </p><p>  PORTC EQU 34H</p><p>

31、  PORT8255 EQU 36H ;8255片選始地址</p><p>  MAIN PROC FAR</p><p><b>  (8255初始化)</b></p><p>  START: MOV AX,DATA

32、 ; 數據段</p><p>  MOV DS,AX ;將寄存器AX的內容傳送給寄存器DS</p><p>  MOV DX,PORT8255 ;把8255計數器里的內容放到DX寄存器</p><p>

33、;  MOV AL,81H ;A組方式0;A口輸出,C口高四位輸入</p><p>  OUT DX,AL ;B組方式0;B口輸出,C口低四位輸入</p><p>  LOPL: XOR AH,AH

34、 ;抑或指令,使AH清零</p><p>  CALL KEY ;調用KEY程序</p><p>  CMP AH,00H ;把AH和00H相比較&

35、lt;/p><p>  JZ LOPL ;ZF=1,即結果為0,則轉到LOPL</p><p>  CMP AL,0FH ;把AL和0FH相比較</p><p>  JZ CCCL

36、 ;ZF=1,即結果為0,則轉到CCCL</p><p>  CMP AL,0AH ;把AH和0AH相比較</p><p>  JZ LOPL

37、 ;ZF=1,即結果為0,則轉到LOPL</p><p>  JNC LOPL ;若CF=0,表示第一個數大,轉向LOPL</p><p>  OUT 32H,AL ;輸出B口數據AL</p><p&g

38、t;  LOPL2: LEA SI,NUM ;將NUM的偏移地址給SI</p><p>  MOV [SI],AL ;將AL的數據存放在SI中</p><p>  PUSH AX

39、 ;AX出棧</p><p>  LOPL1: XOR AH,AH ;抑或指令,使AH清零</p><p>  CALL KEY ;調用KEY程序</p><p>  CMP

40、 AH,00H ;把AH和00H相比較</p><p>  JZ LOPL1 ;ZF=1,即結果為0,則轉到LOPL1</p><p>  CMP AL,0FH

41、 ;把AL和0FH相比較</p><p>  JZ CCCL ;ZF=1,即結果為0,則轉到CCCL</p><p>  CMP AL,0AH ;把AL和0AH相比較</p><p&g

42、t;  JZ XX1 ;ZF=1,即結果為0,則轉到XX1</p><p>  CMP AL,0BH ;把AL和0BH相比較</p><p>  JZ XX2

43、 ;ZF=1,即結果為0,則轉到XX2</p><p>  CMP AL,0CH ;把AL和0CH相比較</p><p>  JZ XX3D ;ZF=1,即結果為0,則轉到XX

44、3D</p><p>  CMP AL,0DH ;把AL和0DH相比較</p><p>  JZ XX4D ;ZF=1,即結果為0,則轉到XX4D</p><p>  JMP LOPL1

45、 ;轉移到LOPL1</p><p>  CCCL: MOV AL,00H</p><p>  OUT 32H,AL ;輸出B口數據AL</p><p>  JMP LOPL

46、 ;轉移到LOPL</p><p>  XX3D: CALL XX3 ;調用XX3程序</p><p>  XX4D: CALL XX4 ;調用XX4程序&l

47、t;/p><p>  MAIN ENDP </p><p><b>  XX1 PROC</b></p><p>  NOP ;加</p><p

48、>  LOPL3: XOR AH,AH ;抑或指令,使AH清零</p><p>  CALL KEY ;調用KEY程序</p><p>  CMP AH,00H

49、 ;把AH和00H相比較</p><p>  JZ LOPL3 ; ZF=1,即結果為0,則轉到LOPL3</p><p>  CMP AL,0FH ;把AL和0FH相比較</p><p>  JZ

50、 CCCL ; ZF=1,即結果為0,則轉到CCCL</p><p>  CMP AL,0AH ;把AL和0AH相比較</p><p>  JZ LOPL3

51、 ; ZF=1,即結果為0,則轉到LOPL3</p><p>  JNC LOPL3 ;若CF=0,表示第一個數大,轉向LOPL3</p><p>  OUT 32H,AL ;輸出B口數據AL</p><p>  PUS

52、H AX ;AX出棧</p><p>  LEA SI,NUM ;將NUM的偏移地址給SI</p><p>  MOV [SI+1],AL ;將AL的數據存放在SI+1中</

53、p><p>  LOPL4: XOR AH,AH ;抑或指令,使AH清零</p><p>  CALL KEY ;調用KEY程序</p><p>  CMP AH,00H

54、 ;把AH和00H相比較</p><p>  JZ LOPL4 ;ZF=1,即結果為0,則轉到LOPL4</p><p>  CMP AL,0FH ;把AL和0FH相比較</p><p>  JZ CCCL

55、 ; ZF=1,即結果為0,則轉到CCCL</p><p>  CMP AL,0EH ;把AL和0EH相比較</p><p>  JZ XXX1 ; ZF=1

56、,即結果為0,則轉到XXX1</p><p>  JMP LOPL4 ;轉移到LOPL4</p><p>  XXX1: LEA SI,NUM</p><p>  MOV AL,[SI]</p><p>  AND AL,0FH</p&

57、gt;<p>  MOV DL,[SI+1]</p><p>  AND DL,0FH ; 相與,高四位置0,低四位保持不變,賦給DL</p><p>  ADD AL,DL</p><p>  DAA

58、 ;轉化成BCD碼</p><p>  OUT 32H,AL ;輸出B口數據AL</p><p>  JMP LOPL ;轉移到LOPL</p><p><b>  XX1 ENDP</b></

59、p><p><b>  XX2 PROC</b></p><p>  NOP ;減</p><p>  LOPL5: XOR AH,AH ;抑或指令,使AH清零</p><p&g

60、t;  CALL KEY ;調用KEY程序</p><p>  CMP AH,00H ;把AH和00H相比較</p><p>  JZ LOPL5 ;ZF=1,即結果為0,則轉到LOPL

61、5</p><p>  CMP AL,0FH ;把AL和0FH相比較</p><p>  JZ CCCL ;ZF=1,即結果為0,則轉到CCCL</p><p>  CMP AL,0AH

62、 ;把AL和0AH相比較</p><p>  JZ LOPL5 ; ZF=1,即結果為0,則轉到LOPL5</p><p>  JNC LOPL5</p><p>  OUT 32H,AL ;輸出B口數

63、據AL</p><p>  PUSH AX ;AX出棧</p><p>  LEA SI,NUM ;將NUM的偏移地址給SI</p><p>  MOV [SI+1],AL

64、 ;將AL的數據存放在SI+1中</p><p><b>  LOPL6:</b></p><p>  XOR AH,AH ;抑或指令,使AH清零</p><p>  CALL KEY

65、 ;調用KEY程序</p><p>  CMP AH,00H ;把AH和00H相比較</p><p>  JZ LOPL6 ; ZF=1,即結果為0,則轉到LOPL6</p><p>  CMP AL,

66、0FH ;把AL和0FH相比較</p><p>  JZ CCCL7 ;ZF=1,即結果為0,則轉到LOPL7</p><p>  CMP AL,0EH ;把AL和0EH相比

67、較</p><p>  JZ XXX2 ;ZF=1,即結果為0,則轉到XXX2</p><p>  JMP LOPL6 ;轉移到LOPL6</p><p>  XXX2: LEA SI,NUM

68、 ;將NUM的偏移地址給SI</p><p>  MOV AL,[SI]</p><p>  AND AL,0FH</p><p>  MOV DL,[SI+1]</p><p>  AND DL,0FH</p><p>  SUB AL,

69、DL</p><p>  ADD AL,00H</p><p><b>  DAA</b></p><p>  OUT 32H,AL ;輸出B口數據AL</p><p>  JMP LOPL

70、 ;轉移到LOPL</p><p>  CCCL7: MOV AL,00H</p><p>  OUT 32H,AL ;輸出B口數據AL</p><p>  JMP LOPL ;轉移到LOPL <

71、/p><p><b>  XX2 ENDP</b></p><p>  XX3 PROC ;乘</p><p>  LOPL7: XOR AH,AH ;抑或指令,使AH清零</p&g

72、t;<p>  CALL KEY ;調用KEY程序</p><p>  CMP AH,00H ;把AH和00H相比較</p><p>  JZ LOPL7 ;ZF

73、=1,即結果為0,則轉到LOPL7</p><p>  CMP AL,0FH ;把AL和0FH相比較</p><p>  JZ CCCL2 ;ZF=1,即結果為0,則轉到CCCL2</p><p>  CMP AL,0A

74、H ;把AL和0AH相比較</p><p>  JZ LOPL7 ; ZF=1,即結果為0,則轉到LOPL7</p><p>  JNC LOPL7 ;若CF=0,表示第一個數大,轉向L

75、OPL</p><p>  OUT 32H,AL ;輸出B口數據AL</p><p>  PUSH AX ;AX出棧</p><p>  LEA SI,NUM

76、 ;將NUM的偏移地址給SI</p><p>  MOV [SI+1],AL ;將AL的數據存放在SI+1中</p><p>  LOPL8: XOR AH,AH ;抑或指令,使AH清零</p><p>  CALL KEY

77、 ;調用KEY程序</p><p>  CMP AH,00H ;把AH和00H相比較</p><p>  JZ LOPL8 ;ZF=1,即結果為0,則轉到LOPL8</p>

78、<p>  CMP AL,0FH ;把AL和0FH相比較</p><p>  JZ CCCL3 ; ZF=1,即結果為0,則轉到CCCL3</p><p>  CMP AL,0EH

79、 ;把AL和0EH相比較</p><p>  JZ XXX3 ;ZF=1,即結果為0,則轉到XXX3</p><p>  JMP LOPL8 ;轉移到LOPL8</p><p>  XXX3

80、: LEA SI,NUM ;將NUM的偏移地址給SI</p><p>  MOV AL,[SI]</p><p>  AND AL,0FH</p><p>  MOV DL,[SI+1]</p><p>  AND DL,0FH</p>

81、<p>  MUL DL ; DL*AL</p><p>  AAM ;商放AH,余數放AL</p><p>  MOV CL,4</p><p>  SAL

82、 AH,CL ;把AH向左移四位</p><p>  OR AL,AH ;或指令,有1置1</p><p>  OUT 32H,AL ;輸出B口數據AL</p>

83、<p>  JMP LOPL ;轉移到LOPL</p><p>  CCCL2: MOV AL,00H</p><p>  OUT 32H,AL ;輸出B口數據AL</p><p>  JMP

84、 LOPL ;轉移到LOPL</p><p>  CCCL3: MOV AL,00H</p><p>  OUT 32H,AL ;輸出B口數據AL</p><p>  JMP LOPL

85、 ;轉移到LOPL</p><p><b>  XX3 ENDP</b></p><p>  XX4 PROC ;除</p><p>  LOPL9: XOR AH,AH

86、 ;抑或指令,使AH清零</p><p>  CALL KEY ;調用KEY程序</p><p>  CMP AH,00H ;把AH和00H相比較</p><p>  JZ LO

87、PL9 ; ZF=1,即結果為0,則轉到LOPL9</p><p>  CMP AL,0FH ;把AL和0FH相比較</p><p>  JZ CCCL5 ; ZF=1,即結果為

88、0,則轉到CCCL5</p><p>  CMP AL,0AH ;把AL和0AH相比較</p><p>  JZ LOPL9 ;ZF=1,即結果為0,則轉到LOPL9</p><p>  JNC LOPL9

89、 ;若CF=0,表示第一個數大,轉向LOPL9 </p><p>  OUT 32H,AL ;輸出B口數據AL</p><p>  PUSH AX ;AX出棧</p><p> 

90、 LEA SI,NUM ;將NUM的偏移地址給SI</p><p>  MOV [SI+1],AL ;將AL的數據存放在SI+1中</p><p>  LOPL10: XOR AH,AH ;抑或指令,使A

91、H清零</p><p>  CALL KEY ;調用KEY程序</p><p>  CMP AH,00H ;把AH和00H相比較</p><p>  JZ LOPL10

92、 ;ZF=1,即結果為0,則轉到LOPL10</p><p>  CMP AL,0FH ;把AL和0FH相比較</p><p>  JZ CCCL4 ;ZF=1,即結果為0,則轉到CCCL4</p>&l

93、t;p>  CMP AL,0EH ;把AL和0EH相比較</p><p>  JZ XXX4 ; ZF=1,即結果為0,則轉到XXX4</p><p>  JMP LOPL10

94、 ;轉移到LOPL10</p><p>  XXX4: LEA SI,NUM ;將NUM的偏移地址給SI</p><p>  MOV AL,[SI]</p><p>  AND AL,0FH ;與指令,高四位清零,低四位不變&

95、lt;/p><p>  MOV BL,[SI+1]</p><p>  AND BL,0FH</p><p>  AND AX,000FH</p><p>  DIV BL ; AL÷BL,商放在AL中,余數放在AH中</

96、p><p>  OUT 32H,AL ;輸出B口數據AL</p><p>  JMP LOPL ;轉移到LOPL</p><p>  CCCL4: MOV AL,00H</p><p&

97、gt;  OUT 32H,AL ;輸出B口數據AL</p><p>  JMP LOPL ;轉移到LOPL</p><p>  CCCL5: MOV AL,00H</p><p>  OUT 32H

98、,AL ;輸出B口數據AL</p><p>  JMP LOPL ;轉移到LOPL</p><p><b>  XX4 ENDP</b></p><p>  KEY PROC</p&

99、gt;<p><b>  NOP</b></p><p>  LEA SI,NUM1</p><p>  MOV AL,0EH</p><p>  OUT 30H,AL ;輸出A口數據AL</p><p>  IN AL,34H<

100、/p><p>  CMP AL,07H ;把AL和07H相比較</p><p>  JZ LL7 ; ZF=1,即結果為0,則轉到LL7</p><p>  CMP AL,0BH

101、 ;把AL和0BH相比較</p><p>  JZ LL8 ;ZF=1,即結果為0,則轉到LL8</p><p>  CMP AL,0DH ;把AL和0DH相比較</p><

102、;p>  JZ LL9 ; ZF=1,即結果為0,則轉到LL9</p><p>  CMP AL,0EH ;把AL和0EH相比較</p><p>  JZ LDIV

103、 ; ZF=1,即結果為0,則轉到LDIV</p><p>  SS1: MOV AL,0DH</p><p>  OUT 30H,AL ;輸出A口數據AL</p><p>  IN AL,34H</p><p>  CMP

104、 AL,07H ;把AL和07H相比較</p><p>  JZ LL4 ; ZF=1,即結果為0,則轉到LL4</p><p>  CMP AL,0BH

105、 ;把AL和0BH相比較</p><p>  JZ LL5 ; ZF=1,即結果為0,則轉到LL5</p><p>  CMP AL,0DH ;把AL和0DH相比較</p><p>

106、  JZ LL6 ;ZF=1,即結果為0,則轉到LL6</p><p>  CMP AL,0EH ;把AL和0EH相比較</p><p>  JZ LMUL

107、 ; ZF=1,即結果為0,則轉到LMUL</p><p>  SS2: MOV AL,0BH</p><p>  OUT 30H,AL ;輸出A口數據AL</p><p>  IN AL,34H</p><p>  

108、CMP AL,07H ;把AL和07H相比較</p><p>  JZ LL1 ; ZF=1,即結果為0,則轉到LL1</p><p>  CMP AL,0BH

109、 ;把AL和0BH相比較</p><p>  JZ LL2 ; ZF=1,即結果為0,則轉到LL2</p><p>  CMP AL,0DH ;把AL和0DH相比較</p>&l

110、t;p>  JZ LL3 ; ZF=1,即結果為0,則轉到LL3 </p><p>  CMP AL,0EH ;把AL和0EH相比較</p>

111、<p>  JZ LSUB ;ZF=1,即結果為0,則轉到LSUB</p><p>  SS3: MOV AL,07H</p><p>  OUT 30H,AL ;輸出A口數據AL</p&g

112、t;<p>  IN AL,34H</p><p>  CMP AL,07H ;把AL和07H相比較</p><p>  JZ SCLC ;ZF=1,即結果為0,則轉到SCLC</p>&l

113、t;p>  CMP AL,0BH ;把AL和0BH相比較</p><p>  JZ LL0 ;ZF=1,即結果為0,則轉到LL0</p><p>  CMP AL,0DH

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯系上傳者。文件的所有權益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
  • 4. 未經權益所有人同意不得將文件中的內容挪作商業(yè)或盈利用途。
  • 5. 眾賞文庫僅提供信息存儲空間,僅對用戶上傳內容的表現方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
  • 6. 下載文件中如有侵權或不適當內容,請與我們聯系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論