考的芯片是8255。
題目是用方式0,pa作輸出,pc作輸入,高2位求反,低6位不變,并且程序能夠循環(huán),只在接收到鍵盤有輸入字符時(shí),結(jié)束程序并退回到DOS界面。
程序不難,老師先將兩個(gè)例子(程序都列好了),只要你手動(dòng)的把例子敲進(jìn)去,編譯,連接,生成exe文件,然后連線,撥動(dòng)開關(guān),作完了,報(bào)告老師,這樣就通過了練習(xí)。
第一個(gè)實(shí)驗(yàn)用的是8255,第二個(gè)用的是8253,基本上就考8255,將原有的程序改動(dòng)一點(diǎn)就可以通過考試了。
端口地址是:PA-288H,PB-289H,PC-28AH,控制-28BH
不會(huì)使用PB端口,因?yàn)榘遄由系?255只有PA和PC
方式0 pa輸入,pc輸出,高2位求反,低6位不變
程序如下: 只是循環(huán)忘了怎么做了code segment
assume cs:code input:mov al,90h 初始化,方式選擇控制字 10010000B
mov dx,28bh
out dx,al
mov dx,288h 從PA口接受輸入
in al,dx
xor al ,0c0h 將輸入端的高2位求反,第6位不變
mov dx,28ah 輸出到PC口
out dx,al
mov ah,4ch
int 21h code ends
end input
這個(gè)只是今天11:30—2:30考試的上機(jī)程序的一部分,循環(huán)和中斷我忘了,別害怕,老師的例子里有
就是 mov ah,01h
int 16h
只不過我忘了應(yīng)該加在那里。
實(shí)驗(yàn)很簡(jiǎn)單,難點(diǎn)是很多朋友都沒用過MASM,這沒關(guān)系,老師先將實(shí)驗(yàn)的步驟都寫在黑板上了,如果在編譯(執(zhí)行MASM)的時(shí)候,有erro出現(xiàn),就說明你的程序?qū)懙挠袉栴},erro后面有一個(gè)數(shù)字,那個(gè)數(shù)字可以提醒你,你的程序第幾行出現(xiàn)問題,這樣就很快找到問題了。
在做老是給的例子的時(shí)候,時(shí)間是1個(gè)半小時(shí),時(shí)間足夠了,考試還會(huì)發(fā)一個(gè)考試冊(cè)子,這個(gè)冊(cè)子上有兩個(gè)例子的完整程序和邏輯連接圖,它會(huì)指導(dǎo)你如何連線。
好了,說了這么多,相信大家都會(huì)取得好成績(jī),祝你們考試順利!