课程名称       汇编语言与微机接口技术     
实验项目   汇编语言及I/O地址译码编程练习 
实验仪器     PC微机、CZ-CIU实验箱   
学    院 __  _    _计算机学院_      _  _
专    业        计算机科学与技术       
    班级/学号      *       
学生姓名 ___      _ _ *_______       
实验日期           2018/10/2       
成    绩                              
          指导教师           *           
指导书中实验1
一、实验目的
掌握I/O地址译码电路的原理。
二、实验原理、内容描述和硬件连接
实验电路,其中74LS74位D触发器,可直接使用试验台上数字电路实验区的D触发器,74SL138为地址译码器。译码输出端Y0-Y7在实验台上“I/O地址”输出端引出,每个输出端包含8个地址,Y0:280H-287H,Y1:288H-28FH,当CPU执行I/O指令且地址在280H-2BFH范围内,译码器必中,必有一根译码线输出负脉冲。
接线:Y4/IO地址 接 CLK/D触发器
    Y5/IO 地址 接 CD/D触发器
汇编语言指导书    D/D触发器 接 SD/D角触发器
    Q/D触发器 接 逻辑笔
三、程序流程图
四、代码、和关键注释
1.实验电路中D触发器CLK端输入脉冲时,上升沿使Q端输出高电平L7发光,CD端加低电平L7灭。
outport1        equ 2a0h    ;给outport1赋值
outport2        equ 2a8h    ;给outport2赋值
code segment
    assume cs:code        ;声明
start:                      ;程序开始
    mov dx,outport1
    out dx,al
    call delay              ;调延时子程序
    mov dx,outport2
    out dx,al
    call delay                ;调延时子程序
    mov ah,1                ;功能号01H
    int 16h                  ;中断调用,若ZF=0,表示键盘缓冲区不空,有键按下了,AL中存放键入字符的ASCII码,AH存放扫描码,若ZF=1,表示缓冲区空
    je start
    mov ah,4ch              ;功能号4CH
    int 21h                  ;中断调用,程序终止
delay proc near                ;延时子程序
    mov bx,200              ;200作为循环次数存入
lll:    mov cx,0              ;存入10000H
ll:    loop ll                ;循环本身
    dec bx                    ;BX自减一
    jne lll
    ret
delay endp
code ends
end start
2.编程实现:在显示器上显示全部标准和拓展ASCII码字符(每输入16个字符换行)
MYSTACK SEGMENT STACK
DW 64 DUP(?)
MYSTACK ENDS
DATA SEGMENT
DW ?
DATA ENDS
ASSUME CS:CODE,DS:DATA,SS:MYSTACK
CODE SEGMENT
START:MOV AX,DATA 
MOV DS,AX              ;设置DS

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。