北大自考微机接口上机题.docx

上传人:b****8 文档编号:11386133 上传时间:2023-02-28 格式:DOCX 页数:44 大小:24.87KB
下载 相关 举报
北大自考微机接口上机题.docx_第1页
第1页 / 共44页
北大自考微机接口上机题.docx_第2页
第2页 / 共44页
北大自考微机接口上机题.docx_第3页
第3页 / 共44页
北大自考微机接口上机题.docx_第4页
第4页 / 共44页
北大自考微机接口上机题.docx_第5页
第5页 / 共44页
点击查看更多>>
下载资源
资源描述

北大自考微机接口上机题.docx

《北大自考微机接口上机题.docx》由会员分享,可在线阅读,更多相关《北大自考微机接口上机题.docx(44页珍藏版)》请在冰豆网上搜索。

北大自考微机接口上机题.docx

北大自考微机接口上机题

8255A  c口低四位输入,a口输出到数码段,当pc0=0时,a口输出是加一循环(0~f),pc0=1时,a口输出是减一循环(f~0),输出时延一秒钟,有键按下就退出...

datasegment

led  db71h,79h,3fh,39h,7fh,77h,67h,7fh

      db07h,7ch,6dh,6eh,4fh,5bh,06h,3fh

countdb0(定义循环初始值为零)

dataends

codesegment

  assume  cs:

code,ds:

data

start:

movax,data

        movds,ax

        movdx,28bh

        moval,81h

        outdx,al(8255初始化)

input:

        movdx,28ah

        inal,dx

        andal,0fh

        andal,01h(判断pc0)

        jz  a1

        moval,count

        andal,0fh(要屏蔽高四位,以免超过15后出乱码)

        leabx,led

        xlat

        movdx,288h

        outdx,al

        calldelay(延迟子程序老师会给出)

        deccount

        movah,1

        int16h

        jzinput(判断是否有键按下,无则继续判断pc0)

        jmpa2(有则返回dos)

a1:

    moval,count

        andal,0fh

        leabx,led

        xlat

        movdx,288h

        outdx,al

        calldelay

        inccount

        movah,1

        int16h

        jzinput

  a2:

  movah,4ch

        int21h

delayprocnear

.

.

.

delayendp

codeends

endstart

这道题难在寄存器的使用不能冲突,我就是因为一个bl的使用弄的头都大了,还好最后做出来了!

庆幸!

我是那天考试第一个出来的!

3月24号上午考试题

今天上午的接口题,感觉还可以!

8255的Pc0=0时,A口输出接到L0--L7的信号灯上。

要求L0---L7隔一个亮一个。

(亮灭亮灭亮灭亮灭)每过一秒让灯左移一位。

其实就是。

(灭亮灭亮灭亮灭亮)延迟程序老师给出。

当Pc0=1时,要求L0--L7每隔两个亮两个(灭灭亮亮灭灭亮亮),每过一秒让灯左移2位,其实就是(亮亮灭灭亮亮灭灭)。

没有键按下循环显示,有键按下返回DOS!

其实只要大家把题意给弄明白就好办了。

3月25号下午接口题

8255的PA0=0时,C口输出接到L0--L7的信号灯上。

要求L0---L7隔一个亮一个。

(亮灭亮灭亮灭亮灭)每过一秒让灯左移一位,循环显示。

其实就是。

(灭亮灭亮灭亮灭亮)延迟程序老师给出。

当PA0=1时,要求L0--L7每隔两个亮两个(灭灭亮亮灭灭亮亮),每过幻肴玫谱笠?

位,也循环显示。

其实就是(亮亮灭灭亮亮灭灭)。

没有键按下循环显示,有键按下返回DOS!

9月6日上午题

8255A  c口低四位输入,a口输出到数码段,当pc0=0时,a口输出是加一循环(0~f),pc0=1时,a口输出是减一循环(f~0),输出时延一秒钟,有键按下就退出...

datasegment

led  db71h,79h,3fh,39h,7fh,77h,67h,7fh

      db07h,7ch,6dh,6eh,4fh,5bh,06h,3fh

countdb0(定义循环初始值为零)

dataends

codesegment

  assume  cs:

code,ds:

data

start:

movax,data

        movds,ax

        movdx,28bh

        moval,81h

        outdx,al(8255初始化)

input:

        movdx,28ah

        inal,dx

        andal,0fh

        andal,01h(判断pc0)

        jz  a1

        moval,count

        andal,0fh(要屏蔽高四位,以免超过15后出乱码)

        leabx,led

        xlat

        movdx,288h

        outdx,al

        calldelay(延迟子程序老师会给出)

        deccount

        movah,1

        int16h

        jzinput(判断是否有键按下,无则继续判断pc0)

        jmpa2(有则返回dos)

a1:

    moval,count

        andal,0fh

        leabx,led

        xlat

        movdx,288h

        outdx,al

        calldelay

        inccount

        movah,1

        int16h

        jzinput

  a2:

  movah,4ch

        int21h

delayprocnear

.

.

.

delayendp

codeends

endstart

9月7日上午考题

8255方式0,从C口输入一个数最大值为0FFH,再检测C0输入的数据,如为1,则+1,从A口输出,如为0,则—1从A口输出,延时一秒,有键按下则退出

  codesegment

assumecs:

code

start:

moval,89h

movdx,28bh

outdx,al

movdx,28ah

inal,dx

movbl,al

movcl,al

l:

movdx,28ah

inal,dx

testal,1

jza

incbl

moval,bl

jmpb

a:

deccl

moval,cl

b:

movdx,288h

outdx.al

movah,16h

int21h

jzl

movah,4ch

int21h

delayprocnear

.

.

.

dalayendp

codeends

endstart 

 

9月7号下午考题

8253clk0输入1MHZ脉冲,OUT1输出1HZ到8255C囗,若PC0=1,则PA囗输出11001100,

若PC0=0,则PA囗输出00110011。

不难吧!

我二十分钟就搞定了。

答案太长了,我给出一部分吧。

初始化部分

l1:

mov  dx,281h

  inal,dx

  movdx,28ah

  outdx,al

movdx,28ah

  inal,dx

  testal,01

  jzl2

movdx,288h

moval,cch

outdx,al

  jmpl3

l2:

movdx,288h

moval,33h

outdx,al

l3:

movah.01h

  int16h

  jzl1

movah,4ch

int21h

 

9月8日接口上午题

8253方式0,通道1,计数初值来自8255A口低四位,将计数结果从8255C口显示至七段数码管,并从8255A口高四位输出到指示灯高四位,键盘有键按下返回DOS,否则继续执行.

 

9月10日下午考题

8253通道1方式0,记数初值3,out1输出到pa0口,8255方式0,a口输入,c口输出到LED灯上,当PA0=0时,01010101-10101010循环,当PA0=1时,00110011-11001100循环,有键按下返回DOS.

 

9月11号上午的考题

8253性质通道1方式0,手动输入单脉冲,out1给8255的pa0,8255a口输入c口输出给8个指示灯。

当pa0=0的时候指示灯每隔一个亮,且间隔一秒

当pa0=1的时候指示灯每隔两个亮,且间隔一秒

 

9月13日北大上机接口考题

    这几天北大上机考试都开始了,这几天考的接口上机考题都有一些难度,至少比上次考的难些!

今天下午的考题是:

    8255的A口交替输出AAh和55h,时间间隔为1秒。

当8253方式0输入三个单脉冲事终止。

8253为通道1。

12.21下午2:

40-5:

40的考试题

    用8253,1通道,0方式,初值0FH,用8255A的PC口接7段数码管(LE0-LE7,面包版上的7个等)显示。

      大概意思就是8253记数器记的内容用8255的PC口输出。

12月22日中午接口上机考题

              8255:

方式0,C口高四位输入,A低四位输出

              8253:

计数器0,方式0,从C口读入计数器初值,手动逐个输入单脉冲,并在A口显示其值。

              codesegment

                  assume  cs:

code(A口:

280h,B口:

281h)

              start:

                    mov  dx,283h

                    out  dx,00001000h

              loop:

in  al,282h

                    mov  cl,4

                    shr  al,cl

                    out  280h,al

                    mov  ah,1

                    int  16h

                    je  loop

                    mov  ah,4ch

                    int  21h

              codesegment

                    end  start

12月23日上午接口实践题

    编一个程序,用8255从C口的低四位输入,求反后从C口的高四位输出.

                    

                    答案:

        codesegment

                                start:

movdx,28bh   ;控制口地址

                                      moval,81h     ;1000001=81H

                                      outdx,al

                                inout:

movdx,28ah   ;从C口地址输入

                                      in  al,dx

                                      notal          ;这一段就是考试最容易变化的

                                      andal,0fh

                                      movcl,4

                                      rolal,cl

                                      movdx,28ah  ;从C口输出

                                      outdx,al

                                      movah,1    

                                      int16h

                   jz  inout    ;无键按下则继续循环

                                      movah,4ch

                                      int21h

                                code  ends

                                      end  start

23日中午的接口上机题

              题目:

编程8255,从A口输入,高四位不变,低四位求返,从C口输出

              另要求在卷子上写出方式自,接线图,与练习部分不同的程序

              方式字:

10010000

              接线图:

A口接K口做输入,C口接LED做输出

              程序如下:

              codesegment

              assumecs:

code

              start:

movdx,28bh

                      moval,90h

                      outdx,al

              inout:

movdx,288h

                      inal,dx

                      xoral,0fh

                      movdx,28ah

                      outdx,al

                      ....              (其余与练习部分一致)

              codeends

              endstart

上机主要考8255,8253

              把8255,8253的初始化部分理解透了(书上有),就很简单了,有练习,老师带着大家先做1小时,这时有问题可以及时问,老师态度很和蔼,好像是研究生.练习题与北大出的上机介绍的书上的一模一样,事先把题理解一下,到时可以在真实环境下做一下.

北大接口(新考法!

              这次上机主要是两个板子的结合考法,希望各位同学好好看看书!

              22号,中午试题

              8253,通道0,方式0,初始值从8255的C口输入,8255的PC口高四位输入,PA口输出到LED

                        我考的是8253的一通道在0方式下计数计数初始值为0fh用单脉冲控制

                在显示器上回显计数值

              并在显示芯片c口输出  以0~~f显示

              完成以上及格

              附加题是使显示顺序以0~~f递增因为计数器是减一计数

23号下机题

8253选用通道1,方式1硬件可重触发单稳态,计数初值0Fh,用8255A口输出到7段LED显示屏,CLK1接单脉冲,OUT1接逻辑笔,GATE1接K7开关

8255方式字1000xxxx=80H,端口288-28BH

8253方式字01010010=52H,端口280-283H

    DATASEGMENT

    LEDDB(7段LED显示码,具体数字我记不清了,在考试时会给出的)

    DATAENDS

    CODESEGMENT

        ASSUMECS:

CODE,DS:

DATA

  START:

MOVAX,DATA

        MOVDS,AX

        MOVDX,28BH

        MOVAL,80H

        OUTDX,AL;对8255初始化

        MOVDX,283H

        MOVAL,52H

        OUTDX,AL;8253初始化

        MOVDX,281H

        MOVAL,0FH

        OUTDX,AL;读计数初值

  INOUT:

MOVDX,281H

        IN  AL,DX

        ANDAL,0FH

        LEABX,LED

        XLAT

        MOVDX,288H

        OUTDX,AL

        MOVAH,1

        INT16H

        JZINOUT;若无键盘输入则继续

        MOVAH,4CH

        INT21H

    CODEENDS

        ENDSTART

12月24日下午考题!

(下午14点20这一场)

              从8255的A口输入、C口输出,如果A口输入的数大于或等于128,从C口输出80H,否则将输入数字高四位不变,低四位求反,从C口输出!

唉,一个小错让我折了,希望大家比我强,能取得好成绩!

2003年12月24号上午8:

00-11:

00点的接口实验题

从8255的c口低4位输入数据,然后取反从c口高4位输出,

有键按下就返回dos,没有键按下就继续循环从c口输入输出数据。

26号中午上机题

              用计数器/定时器8253,通道1,方式0,计数器初值为0fh,手动单脉冲控制从8255a口输出到数码器,以递增的顺序显示0~f。

                要求:

写出控制方式字,初值和连线图。

26号上午8:

00-11:

00接口上机

              题目:

8255的A口接发光二级管,使发光二级管的L0-----L7循环依次发光,且每个灯亮持续一秒钟(须用延时一秒的子程序,老师会写在黑板上),若键盘有键按下则退出,返回DOS

                    我做的参考答案:

                  ⑴、方式控制字为10000000B=80H

                    ⑵、连线图(略)

                  ⑶、程序:

                            CODE  SEGMENT

                                  ASSUMECS:

CODE

                            START:

MOVDX,28BH

                                    MOVAL,80H

                                    OUTDX,AL

                                                

                                    MOVDX,288H

                              LOP:

  MOVBL,01H

                            INOUT:

  CMPBL,0

                                    JZ  LOP

                                    MOVAL,BL

                                    OUTDX,AL

                                    CALLDELAY

                                    SHLBL,1

                                    MOVAH,1

                                    INT16H

                                    JZ  INOUT

                                    MOVAH,4CH

                                    INT21H

                            CODE  ENDS

                                    ENDSTART

                                    

              注:

①延时子程序老师会给出,我这里就没写,有兴趣的同学可以自己翻翻书,书上有的;②解释一下为什么要用BL来传递要显示的数,而不直接用AL:

因为INT

              16H这条指令的作用是看是否有键按下,所以可能用了AL来存放按下的键的ASCII码(就像INT

              21H的二号调用放到AL一样),再执行CMP

              AL,0无键按,则AL为0,有键按就非0了。

由此改了AL的值,直接用AL放数会错的!

我当时想破了脑袋,差点没气死:

)  

                          祝后面考的同学考好!

题目:

把一个1mhz的脉冲通过两次分频转换成1hz的方波。

(通道0、通道1、通道2、控制字地址分别为280h,281h,282h,283h)

答案:

codesegment

      assumecs:

code

start:

movdx,283h

      outdx,00110111b;选中通道0,工作在3方式下,对bcd码自减

      movdx,280h

      moval,0h

      outdx,al

      moval,10h

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 经管营销 > 销售营销

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1