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

下載本文檔

版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡(jiǎn)介

1、<p><b>  簡(jiǎn)易計(jì)算機(jī)課程設(shè)計(jì)</b></p><p><b>  設(shè)計(jì)目的</b></p><p>  本次課程設(shè)計(jì)的實(shí)驗(yàn)?zāi)康氖峭ㄟ^(guò)該實(shí)驗(yàn)掌握較復(fù)雜程序的設(shè)計(jì)。能夠獨(dú)立完成用程序?qū)?255控制鍵盤(pán)和LED顯示的控制,完成計(jì)算器加減法的應(yīng)用。獨(dú)立編寫(xiě)程序,明白和掌握程序的原理和實(shí)現(xiàn)方式。為以后的設(shè)計(jì)提供經(jīng)驗(yàn)。學(xué)習(xí)和掌握計(jì)算機(jī)中常

2、用接口電路的應(yīng)用和設(shè)計(jì)技術(shù),充分認(rèn)識(shí)理論知識(shí)對(duì)應(yīng)用技術(shù)的指導(dǎo)性作用,進(jìn)一步加強(qiáng)理論知識(shí)與應(yīng)用相結(jié)合的實(shí)踐和鍛煉。通過(guò)這次設(shè)計(jì)實(shí)踐能夠進(jìn)一步加深對(duì)專業(yè)知識(shí)和理論知識(shí)學(xué)習(xí)的認(rèn)識(shí)和理解,使自己的設(shè)計(jì)水平和對(duì)所學(xué)的知識(shí)的應(yīng)用能力以及分析問(wèn)題解決問(wèn)題的能力得到全面提高。</p><p>  微機(jī)原理課程設(shè)計(jì)的意義是為了使學(xué)生加深對(duì)所學(xué)的微機(jī)原理知識(shí)的理解,培養(yǎng)學(xué)生的專業(yè)素質(zhì),提高其利用微機(jī)原理知識(shí)處理問(wèn)題的能力,為今后專業(yè)

3、課程的學(xué)習(xí)、畢業(yè)設(shè)計(jì)和工作打下良好的基礎(chǔ)。使學(xué)生能比較扎實(shí)地掌握微機(jī)原理的基礎(chǔ)知識(shí)和基本理論,掌握控制系統(tǒng)及有關(guān)設(shè)備的分析、開(kāi)發(fā)等基本技能,受到必要工程訓(xùn)練、初步的科學(xué)研究方法訓(xùn)練和實(shí)踐鍛練,增強(qiáng)分析問(wèn)題和解決問(wèn)題的能力,了解微機(jī)原理和接口技術(shù)的新發(fā)展。 </p><p><b>  設(shè)計(jì)內(nèi)容</b></p><p>  設(shè)計(jì)一計(jì)算器,要求至少能完成2位數(shù)的加減運(yùn)算。

4、獨(dú)立完成用程序?qū)?255控制鍵盤(pán)和LED顯示的控制,完成計(jì)算器加減法的應(yīng)用。</p><p><b>  設(shè)計(jì)要求</b></p><p>  在課程設(shè)計(jì)時(shí),1人1題,同批次同學(xué)中選擇同一題的人數(shù)不超過(guò)3人。在教師指導(dǎo)下,可以相互討論,但設(shè)計(jì)報(bào)告由學(xué)生獨(dú)立完成,不得互相抄襲。教師的主導(dǎo)作用主要在于指明設(shè)計(jì)思路,啟發(fā)學(xué)生獨(dú)立設(shè)計(jì)的思路,解答疑難問(wèn)題和按設(shè)計(jì)進(jìn)度進(jìn)行階段審

5、查。學(xué)生必須發(fā)揮自身學(xué)習(xí)的主動(dòng)性和能動(dòng)性,主動(dòng)思考問(wèn)題、分析問(wèn)題和解決問(wèn)題,而不應(yīng)處處被動(dòng)地依賴指導(dǎo)老師。同學(xué)應(yīng)積極主動(dòng)的提出問(wèn)題、解決問(wèn)題、討論問(wèn)題,互相幫助和啟發(fā)。</p><p>  學(xué)生在設(shè)計(jì)中可以引用所需的參考資料,避免重復(fù)工作,加快設(shè)計(jì)進(jìn)程,但必須和題目的要求相符合,保證設(shè)計(jì)的正確。指導(dǎo)教師要引導(dǎo)學(xué)生學(xué)會(huì)掌握和使用各種已有的技術(shù)資料,不能盲目地、機(jī)械地抄襲資料,必須具體分析,使設(shè)計(jì)質(zhì)量和設(shè)計(jì)能力都獲得

6、提高。學(xué)生要在老師的指導(dǎo)下制定好自己各環(huán)節(jié)的詳細(xì)設(shè)計(jì)進(jìn)程計(jì)劃,按給定的時(shí)間計(jì)劃保質(zhì)保量的完成個(gè)階段的設(shè)計(jì)任務(wù)。設(shè)計(jì)中可邊設(shè)計(jì),邊修改,軟件設(shè)計(jì)與硬件設(shè)計(jì)可交替進(jìn)行,問(wèn)題答疑與調(diào)試和方案修改相結(jié)合,提高設(shè)計(jì)的效率,保證按時(shí)完成設(shè)計(jì)工作并交出合格的設(shè)計(jì)報(bào)告。</p><p>  四、設(shè)計(jì)原理與硬件電路</p><p>  設(shè)計(jì)的思路是:首先利用程序不斷掃描鍵盤(pán)是不是有輸入,如果沒(méi)有就一直掃描,

7、如果有就停止掃描,完成輸入,利用匯編的程序核對(duì)輸入鍵的數(shù)值,通過(guò)調(diào)用子程序完成數(shù)據(jù)的儲(chǔ)存或者是加減的運(yùn)算。運(yùn)算完成后將運(yùn)算的結(jié)果儲(chǔ)存并顯示到LED顯示器上。</p><p><b>  各部分硬件功能:</b></p><p>  可編程并行通信接口芯片8255A</p><p><b>  8255A內(nèi)部結(jié)構(gòu)</b>&l

8、t;/p><p>  1. 并行輸入/輸出端口A,B,C</p><p>  8255A內(nèi)部包括三個(gè)8位的輸入輸出端口,分別是端口A、端口B、端口C,相應(yīng)信號(hào)線是PA7~PA0、PB7~PB0、PC7~PC0。端口都是8位,都可以作為輸入或輸出。通常將端口A和端口B定義為輸入/輸出的數(shù)據(jù)端口,而端口C則既可以作數(shù)據(jù)端口,又可以作為端口A和端口B的狀態(tài)和控制信息的傳送端口。</p>

9、<p>  2.A組和B組控制部件</p><p>  端口A和端口C的高4位(PC7~PC4)構(gòu)成A組;由A組控制部件實(shí)現(xiàn)控制功能。 端口B和端口C的低4位(PC3~PC0)構(gòu)成B組;由B組控制部件實(shí)現(xiàn)控制功能。 A組和B組利用各自的控制單元來(lái)接收讀寫(xiě)控制部件的命令和CPU通過(guò)數(shù)據(jù)總線(D0~D7)送來(lái)的控制字,并根據(jù)他們來(lái)定義各個(gè)端口的操作方式。</p><p>  3.

10、 數(shù)據(jù)總線緩沖存儲(chǔ)器</p><p>  三態(tài)雙向8位緩沖器,是8255A與8086CPU之間的數(shù)據(jù)接口。與I/O操作有關(guān)的數(shù)據(jù)、控制字和狀態(tài)信息都是通過(guò)該緩沖器進(jìn)行傳送。</p><p>  4. 讀/寫(xiě)控制部件</p><p>  8255A完成讀/寫(xiě)控制功能的部件。能接收CPU的控制命令,并根據(jù)控制命令向各個(gè)功能部件發(fā)出操作指令。</p><

11、;p>  CS 片選信號(hào):由CPU輸入,有效時(shí)表示該8255A被選中。 RD, WR 讀、寫(xiě)控制信號(hào):由CPU輸入。RD有效表示CPU讀8255A,WR有效表示CPU寫(xiě)8255A。RESET 復(fù)位信號(hào):由CPU輸入。RESET信號(hào)有效,清除8255A中所有控制字寄存器內(nèi)容,并將各個(gè)端口置成輸入方式。</p><p>  定義工作方式控制字:</p><p>  工作方式0:8255A

12、中各端口的基本輸入/輸出方式。</p><p><b>  鍵盤(pán)輸入模塊</b></p><p>  鍵盤(pán)是常用信息輸入元件,其實(shí)鍵盤(pán)也是由一個(gè)個(gè)按鈕組成,如果是獨(dú)立按鈕的話必須要需要一個(gè)I/O口對(duì)它進(jìn)行檢測(cè),而鍵盤(pán)往往這需要鍵盤(pán)按鈕數(shù)一半的I/O口數(shù)對(duì)它進(jìn)行檢測(cè),也許對(duì)一個(gè)比較簡(jiǎn)單的系統(tǒng)I/O口數(shù)一般不是問(wèn)題,但對(duì)于一個(gè)大型、復(fù)雜的系統(tǒng)來(lái)說(shuō)I/O資源就顯得非常珍貴了

13、,盡量減少I(mǎi)/O使用是非常利于降低成本,另外一方面鍵盤(pán)比用獨(dú)立按鍵要美觀,這也是鍵盤(pán)能夠長(zhǎng)期得到人們青睞的原因,可是硬件上的節(jié)省必然導(dǎo)致軟件上編程的復(fù)雜,那就來(lái)看看鍵盤(pán)到底使軟件編程有多復(fù)雜?</p><p>  下圖是一個(gè)3*3鍵盤(pán)的結(jié)構(gòu)圖,因?yàn)?*4鍵盤(pán)有7個(gè)管腳,于是將鍵盤(pán)接8255A的PC口,至于為什么選擇PC是有原因的,進(jìn)行鍵盤(pán)掃描一般要求有一部分的I/O口的工作方式是輸入,另一部分I/O是輸出,具體到

14、3*3鍵盤(pán)則要求3個(gè)I/O口輸入,另外3個(gè)輸出,這一點(diǎn)PC口剛好符合,而PA、PB口要么全部輸入或輸出,所以只能是PC口接鍵盤(pán)。</p><p>  硬件電路如下圖所示:</p><p><b>  五、設(shè)計(jì)流程圖</b></p><p><b>  六、程序代碼</b></p><p>  編程也

15、可以主要分為三部分;鍵盤(pán)掃描、數(shù)據(jù)處理、數(shù)碼管顯示,另外還有譯碼電路,8255各口的地址所使用的是200H-207H。8255A采用的是方式0,A組輸入,B組輸出。</p><p>  code segment</p><p>  assume cs:code,ds:code</p><p>  start:jmp start1</p><p&

16、gt;  buffdb 1,2,3,4,5,6</p><p>  tablekdw3e07h,3e0bh,3d0bh,3b0bh,3e0dh,3d0dh,3b0dh,3e0eh,3d0eh,3b0eh ;0~9鍵盤(pán)值</p><p>  dw 370eh,370dh,370bh,3707h,3b07h,3d07h,2f07h,2f0bh,2f0dh,2f0eh,1f07h,1f

17、0bh,1f0dh;其他鍵值</p><p>  table db 3fh,6,5bh,4fh,66h,6dh,7dh,7,7fh,6fh,46h,40h,48h,00;0~9的字型碼</p><p><b>  xdw 0</b></p><p><b>  ydw 0</b></p><p

18、><b>  fdb 0</b></p><p><b>  ndb 0</b></p><p><b>  cdb 0</b></p><p><b>  addfdb 0</b></p><p><b>  subfdb

19、 0</b></p><p>  start1:mov ax,cs </p><p><b>  mov ds,ax</b></p><p>  call clear</p><p>  again:mov dx,203h</p><p>  mov al,10001001b&l

20、t;/p><p>  out dx,al;8255A初始化</p><p>  call led;調(diào)用子程序</p><p><b>  call key</b></p><p><b>  cmp f,1</b></p><p>  jne again</p>

21、<p>  cmp bl,9;對(duì)比數(shù)字鍵盤(pán)</p><p>  jle d_proce</p><p><b>  cmp bl,10</b></p><p>  je to_add;轉(zhuǎn)到加法</p><p><b>  cmp bl,11</b></p><p&g

22、t;  je to_sub;轉(zhuǎn)到減法</p><p><b>  cmp bl,12</b></p><p>  jmp again;返回</p><p>  clear1:call clear</p><p>  call clbuf</p><p>  jmp again</p&g

23、t;<p>  d_proce:cmp n,1</p><p><b>  je d_p_y</b></p><p><b>  mov cl,4</b></p><p><b>  shl x,cl</b></p><p><b>  mov bh,

24、0</b></p><p><b>  add x,bx</b></p><p>  call bshift</p><p>  mov buff+5,bl</p><p><b>  jmp again</b></p><p>  d_p_y:mov cl,

25、4</p><p><b>  shl y,cl</b></p><p><b>  mov bh,0</b></p><p><b>  add y,bx</b></p><p>  call bshift</p><p>  mov buff+5,b

26、l</p><p><b>  jmp again</b></p><p>  to_add: call bshift;加法程序</p><p>  mov buff+5,bl</p><p><b>  mov f,0</b></p><p><b>  mov

27、 n,1</b></p><p>  movaddf,1</p><p><b>  jmp again</b></p><p>  to_sub: call bshift;減法程序</p><p>  mov buff+5,bl</p><p><b>  mov f,

28、0</b></p><p><b>  mov n,1</b></p><p>  mov subf,1</p><p><b>  jmp again</b></p><p>  to_s:mov bx,y;</p><p><b>  sub a

29、l,bl</b></p><p><b>  das</b></p><p><b>  mov bl,al</b></p><p><b>  mov al,ah</b></p><p><b>  sbb al,bh</b></p&g

30、t;<p><b>  das</b></p><p><b>  mov bh,al</b></p><p><b>  mov x,0</b></p><p><b>  mov y,0</b></p><p>  mov subf,0&

31、lt;/p><p>  call store</p><p><b>  jmp again</b></p><p>  keyproc;鍵盤(pán)的掃描程序</p><p>  mov dx,203h</p><p>  mov al,10001001b</p><p>  

32、out dx,al;初始化8255,寫(xiě)控制字</p><p><b>  mov f,0</b></p><p>  mov dx,201h</p><p><b>  mov al,0</b></p><p>  out dx,al;初始化8255</p><p>  mo

33、v dx,202h</p><p>  in al,dx;初始化8255</p><p>  and al,0fh</p><p>  cmp al,0fh</p><p><b>  je k_exit</b></p><p>  mov cx,3000</p><p>

34、  loop $;10ms</p><p><b>  in al,dx</b></p><p>  and al,0fh</p><p><b>  push ax</b></p><p>  mov dx,203h</p><p>  mov al,1000001

35、0b;b_in,c_out</p><p><b>  out dx,al</b></p><p><b>  pop ax</b></p><p><b>  mov bl,al</b></p><p>  mov dx,202h</p><p>&

36、lt;b>  out dx,al</b></p><p>  mov dx,201h</p><p><b>  in al,dx</b></p><p>  and al,3fh</p><p>  mov bh,al</p><p>  lea si,tablek</

37、p><p><b>  mov cx,23</b></p><p><b>  mov ah,0</b></p><p>  nk:cmp bx,[si]</p><p><b>  je found</b></p><p><b>  inc

38、 ah</b></p><p><b>  add si,2</b></p><p><b>  loop nk</b></p><p>  found:mov al,0;不斷掃描,等待輸入</p><p>  mov dx,202h</p><p><b

39、>  out dx,al</b></p><p>  mov dx,201h</p><p><b>  in al,dx</b></p><p>  and al,3fh</p><p>  cmp al,3fh</p><p><b>  jne found<

40、/b></p><p>  mov cx,3000</p><p><b>  loop $</b></p><p><b>  mov f,1</b></p><p>  mov bl,ah ;鍵值</p><p>  k_exit:ret</p>

41、;<p><b>  keyendp</b></p><p>  storeproc;儲(chǔ)存程序</p><p>  mov word ptr buff,1414h ;不顯示,存儲(chǔ)</p><p>  lea si,buff</p><p><b>  mov ch,4</b&g

42、t;</p><p>  s_re1:mov cl,4;儲(chǔ)存的方式</p><p>  rol bx,cl;循環(huán)左移4位</p><p><b>  mov al,bl</b></p><p>  and al,0fh</p><p>  mov [si+2],al</p><

43、;p><b>  inc si</b></p><p><b>  dec ch</b></p><p>  jnz s_re1 </p><p>  call clear</p><p><b>  ret</b></p><p>  store

44、endp</p><p><b>  codeends</b></p><p><b>  end start</b></p><p><b>  七、設(shè)計(jì)總結(jié)體會(huì)</b></p><p>  本次課程設(shè)計(jì)師自由選擇設(shè)計(jì)課題的,我選擇了簡(jiǎn)易加減法計(jì)算器的題目,看起來(lái)不是

45、很難,但是真正做起來(lái)才發(fā)現(xiàn)其困難之處。</p><p>  本次的課程設(shè)計(jì)是一個(gè)相對(duì)而言比較難的設(shè)計(jì),因?yàn)檫@次設(shè)計(jì)不僅僅是課本上知識(shí)的整合,而且還有很多是課外的擴(kuò)展。這次課程設(shè)計(jì)可以說(shuō)是一個(gè)挑戰(zhàn)。我們做的題目是簡(jiǎn)易計(jì)算器的設(shè)計(jì)。才開(kāi)始思路很清晰?;蛟S是因?yàn)槲覀兯究找?jiàn)慣了這種小機(jī)器,可是等做起來(lái)發(fā)現(xiàn)真的好難。首先8255A的初始化和8086的接線也是十分簡(jiǎn)單,但是等到編成的時(shí)候發(fā)現(xiàn)有很多不懂得地方,覺(jué)得很容易的算法

46、在編程中很難實(shí)現(xiàn)。于是我開(kāi)始查看課本和有關(guān)的資料,知道了一些編程常用的方法。受益匪淺。而后我用心編寫(xiě)這程序。經(jīng)過(guò)自己的努力和同學(xué)的幫助終于完成了相應(yīng)的要求。</p><p>  本次課程設(shè)計(jì),不僅使我加深了對(duì)接口程序設(shè)計(jì)的認(rèn)識(shí),對(duì)接口各部件的工作原理也有了進(jìn)一步的了解,也增強(qiáng)了分析故障的能力,更重要的是培養(yǎng)了我們面對(duì)問(wèn)題、解決問(wèn)題的能力。從理論知識(shí)上我對(duì)8086和8255的作用、功能以及初始化更加熟悉,并且有了客

47、觀上的理解。對(duì)鍵盤(pán)的使用和數(shù)碼管顯示問(wèn)題也完全弄懂了。這次課程設(shè)計(jì)還是比較成功的。</p><p>  當(dāng)然我還有很多不足之處,比如知識(shí)掌握的不夠全面,研究的深度不夠,有問(wèn)題畏畏縮縮不敢問(wèn),程序編寫(xiě)不會(huì)查漏補(bǔ)缺。課后沒(méi)有及時(shí)解決課上的問(wèn)題留到第二天上課程設(shè)計(jì)在想辦法,這說(shuō)明我的惰性也很強(qiáng)。這些都是我需要去改進(jìn)的地方。我會(huì)在以后的學(xué)習(xí)中多加注意。</p><p>  最后感謝老師的辛苦指導(dǎo),

48、使我的設(shè)計(jì)能過(guò)成功實(shí)現(xiàn),使我完成了這次課程設(shè)計(jì)。另外感謝網(wǎng)絡(luò)給予我便利,讓我找到有些相關(guān)資料幫我解決了一些問(wèn)題。同時(shí)也感謝與我一起學(xué)習(xí)、探討,一起研究、查找資料的唐云虹同學(xué)。</p><p><b>  八、參考文獻(xiàn) </b></p><p>  CNDS教育資源網(wǎng)站</p><p>  河南理工大學(xué)門(mén)戶網(wǎng)站</p><p&

溫馨提示

  • 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ù)僅提供信息存儲(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ì)自己和他人造成任何形式的傷害或損失。

評(píng)論

0/150

提交評(píng)論