北大微型計(jì)算機(jī)及其接口技術(shù)上機(jī)考題匯編

字號(hào):

這幾天北大上機(jī)考試都開(kāi)始了,這幾天考的接口上機(jī)考題都有一些難度,至少比上次考的難些!今天下午的考題是:8255的A口交替輸出AAh和55h,時(shí)間間隔為1秒。當(dāng)8253方式0輸入三個(gè)單脈沖事終止。8253為通道1.
    9月11號(hào)上午的考題
    8253性質(zhì)通道1方式0,手動(dòng)輸入單脈沖,out1給8255的pa0,8255a口輸入c口輸出給8個(gè)指示燈。
    當(dāng)pa0=0的時(shí)候指示燈每隔一個(gè)亮,且間隔一秒當(dāng)
    pa0=1的時(shí)候指示燈每隔兩個(gè)亮,且間隔一秒
    9月10日下午考題
    8253通道1方式0,記數(shù)初值3,out1輸出到pa0口,8255方式0,a口輸入,c 口輸出到LED燈上,當(dāng)PA0=0時(shí),01010101-10101010循環(huán),當(dāng)PA0=1時(shí),00110011-11001100循環(huán),有鍵按下返回DOS.
    9月6日上午題
    8255A c口低四位輸入,a口輸出到數(shù)碼段,當(dāng)pc0=0 時(shí),a口輸出是加一循環(huán)(0~f),pc0=1時(shí),a口輸出是減一循環(huán)(f~0),輸出時(shí)延一秒鐘,有鍵按下就退出……
    data segment
    led db 71h,79h,3fh,39h,7fh,77h,67h,7fh
    db 07h,7ch,6dh,6eh,4fh,5bh,06h,3fh
    count db 0(定義循環(huán)初始值為零)
    data ends
    code segment
    assume cs:code,ds:data
    start: mov ax,data
    mov ds,ax
    mov dx,28bh
    mov al,81h
    out dx,al(8255初始化)
    input:mov dx,28ah
    in al,dx and al,0fh
    and al,01h(判斷pc0)
    jz a1 mov al,count
    and al,0fh(要屏蔽高四位,以免超過(guò)15后出亂碼)
    lea bx,led
    xlat
    mov dx,288h
    out dx,al
    call delay(延遲子程序老師會(huì)給出)
    dec count
    mov ah,1
    int 16h
    jzinput(判斷是否有鍵按下,無(wú)則繼續(xù)判斷pc0)
    jmp a2(有則返回dos)
    a1: mov al,count
    and al,0fh
    lea bx,led
    xlat
    mov dx,288h
    out dx,al
    call delay
    inc count
    mov ah,1
    int 16h
    jz input
    a2: mov ah,4ch
    int 21h
    delay proc near.
    .
    .
    .
    delay endp
    code ends
    end start
    9月8日接口上午題
    8253方式0,通道1,計(jì)數(shù)初值來(lái)自8255A口低四位,將計(jì)數(shù)結(jié)果從8255C口顯示至七段數(shù)碼管,并從8255A口高四位輸出到指示燈高四位,鍵盤(pán)有鍵按下返回DOS,否則繼續(xù)執(zhí)行。
    9月7號(hào)下午考題
    8253clk0輸入1MHZ脈沖,OUT1輸出1HZ到8255C囗,若PC0=1,則PA囗輸出11001100,
    若PC0=0,則PA囗輸出00110011.
    不難吧!我二十分鐘就搞定了。答案太長(zhǎng)了,我給出一部分吧。
    初始化部分
    l1:mov dx,281h
    in al,dx
    mov dx,28ah
    out dx,al
    mov dx,28ah
    in al,dx
    test al,01
    jz l2
    mov dx,288h
    mov al,cch
    out dx,al
    jmp l3
    l2: mov dx,288h
    mov al,33h
    out dx,al
    l3:mov ah.01h
    int 16h
    jz l1
    mov ah,4ch
    int 21h
    9月7日上午考題
    8255方式0,從C口輸入一個(gè)數(shù)值為0FFH,再檢測(cè)C0輸入的數(shù)據(jù),如為1,則+1,從A口輸出,如為0,則—1從A口輸出,延時(shí)一秒,有鍵按下則退出
    code segment
    assume cs:code
    start:mov al,89h
    mov dx,28bh
    out dx ,al
    mov dx,28ah
    in al,dx
    mov bl,al
    mov cl,al
    l:mov dx,28ah
    in al,dx
    test al,1
    jz a
    inc bl
    mov al,bl
    jmp b
    a:dec cl
    mov al,cl
    b:mov dx,288h
    out dx.al
    mov ah,16h
    int 21h
    jz l
    mov ah,4ch
    int 21h
    delay proc near
    .
    .
    .
    dalay endp
    code ends
    end start