微机硬件课程设计报告
目 录
1 2 3 4 5
存储器读写实验............................1 简单I/O口扩展实验........................3 8255并行口实验...........................4 8253定时器/计数器接口实验................5 8259中断控制器实验.......................7
实验 实验 实验 实验 实验
微机硬件课程设计报告
一、基础实验部分
实验1 存储器读写实验
一、实验设备
微机实验箱、8086CPU模块。 二、实验要求
学会用使用工具软件,掌握用单步执行和断点方式运行程序,观察寄存器和内存中的数据变化等程序调试的手段。
三、实验步骤
1、实验接线:本实验无需接线。 2、编写调试程序。
3、运行实验程序,可采取单步、设置断点方式,打开内存窗口可看到内存区的变化。 四、思考题
1、①单步执行到“intram”标号的语句时,ds寄存器的数据是什么?②采用断点方 式运行时执行到第一个断点处,2000H~202FH内存单元的数据是什么?③执行到第二个断点处,2000H~200FH内存单元的数据是什么?④并根据观察结果和对源程序的判读简述源程序的运行效果。
答:①ds寄存器的数据是0100H。
②2000H~202FH内存单元的数据全是00。
③2000H~200FH内存单元的数据是AA 55 AA 55 AA 55 AA 55 AA 55 AA 55 AA 55 AA 55。
④源程序的运行效果是在第一个间断点处可以把数据清零,在第二个间断点处即可完成赋值。
1
微机硬件课程设计报告
2、修改程序,实现从2000H到200FH单元依次赋值00H~0FH的功能。
答:程序如下 code segment
assume cs:code org 0100h start: mov ax,0100h
mov ds,ax ;数据段地址 mov es,ax
mov si,1000h ;偏移地址 mov cx,0010h ;循环次数 mov al,0 ;将al清零 intram: mov [si],al
inc si ;将偏移地址+1 inc al ;将al的值+1 loop intram
nop ;设置断点处 jmp start
code ends end start
五、出现的问题及解决过程 序号 1 2
出现的问题 不能得到内存单元的运行结果 2000H到200FH单元得不到00H~0FH 原因 未在程序中设置断点 设置的循环次数不对 mov cx,0016h 解决过程 在程序中设置正确断点 将循环次数改为 mov cx,0010h
2