微机原理及接口技术
实验指导书
书写实验名称时请按下表内容填写: 实验名称 实验一、熟悉实验运行环境实验 实验二、分支程序设计 实验三、循环程序设计 实验四、8255A并行接口应用实验 实验五、中断特性及8259应用编程 实验六、定时器 / 计数器实验 实验七、电子琴实验 实验类型 验证 验证 验证 验证 验证 验证 综合 实验学时 2 2 2 2 2 2 4 实验一、熟悉实验运行环境实验
一、实验目的
1、熟悉汇编语言程序的调试环境 2、掌握部分DEBUG命令 二、实验内容
编写一个汇编语言程序,计算1+2+3+…+99+100,并将结果存入SUM字单元。通过调试程序熟悉汇编语言的上机操作过程及部分命令。 三、上机操作过程
1、建立ASM文件(编辑源程序)
使用编辑程序EDIT在磁盘上建立源程序EX.ASM 例如:D:\\MASM>EDIT EX.ASM 用MASM程序产生OBJ文件
源文件建立后,就要用汇编程序对源文件汇编,汇编后产生二进制的目标文件(OBJ文件)
例如:D:\\MASM>MASM EX 3 、用LINK程序产生EXE文件
汇编程序已产生出二进制的目标文件(OBJ),但OBJ文件并不是可执行文
件,还必须使用连接程序(LINK)把目标文件转换为可执行的EXE文件 例如:D:\\MASM>LINK EX 4、调试运行
在建立了EXE文件后,就可以直接从DOS执行程序。如果用户程序有错误
或者没有直接将结果在终端上显示出来,程序执行完之后无法看见正确的结果。那么怎么知道程序执行的结果是正确的呢?此外,大部分程序必须经过调试阶段才能纠正程序执行中的错误,得到正确的结果。这里就要使用调试程序。 例如:D:\\MASM>DEBUG EX.EXE
① R命令 显示或修改寄存器中的内容 例如:_R BX BX 0369 :059E
不作修改,直接回车;否则键入修改内容,并回车
② U命令 反汇编
a、_U[地址] 从指定地址开始,反汇编32个字节。如果地址省略,则从上一个U命令的最后一条指令的下一个单元开始显示32个字节 b、_U[范围] 对指定范围的内存单元进行反汇编 例如:_U 04BA:0100 0108
③ T命令 单步执行命令(一次执行一条指令) 例如:从代码段的0000H处开始单步执行 _R IP IP XXXX : 0000 _T
④ G命令 执行命令(执行多条指令) _G 地址1 地址2
表示从地址1开始执行指令到地址2结束
例如:从代码段的0000H处开始连续执行指令,知道0013H处 _R IP
IP XXXX : 0000
_G 0013
⑤ D命令 显示内存单元的内容 a、_D 地址 b、_D 范围
例如:显示数据段中0000H开始的若干个字节单元的内容 _D DS:0000
例如:显示数据段中0000H到0010H各字节单元的内容 _D DS:0000 0010 ⑥ E命令 修改存储单元的内容
例如:修改数据段0002H字节单元的内容为0FFH _E DS:0002
XXXX:0002 XX FF
⑦ Q命令 退出DEBUG程序
实验二、分支程序设计
一、实验目的
1、掌握分支程序的结构形式 2、掌握分支程序的设计方法 二、实验内容
1、计算分段函数,X为8位带符号数
Y=
|X+5|,-10≤x≤20
0 , 其它
2、算法分析
先将X的范围确定在-10≤x≤20之内,除此之外结果全为0,然后计算
X+5,再根据结果的符号求绝对值。 三、流程图