微机第一次实验作业介绍.docxVIP

  • 18
  • 0
  • 约8.31千字
  • 约 17页
  • 2016-11-24 发布于湖北
  • 举报
实验名称实验1:显示程序实验成绩班级姓名学号实验目的: 1. 掌握在PC机上以十六进制形式显示数据的方法; 2. 掌握部分DOS功能调用使用方法; 3. 熟悉汇编语言调试环境和Turbo Debugger的使用。实验内容: (1) 显示单个字符输出 入口:AH=02H 调用参数:DL=输出字符 (2) 显示字符串 入口:AH=09H 调用参数:DS:DX=串地址,’$’为结束字符 (3) 键盘输入并回显 入口:AH=01H 返回参数:AL=输出字符 (4) 返回DOS系统 入口:AH=4CH 调用参数:AL=返回码 程序清单: DATA SEGMENT MES DB Show a as hex:, 0AH,0DH,$ SD DB a DATA ENDS CODE SEGMENT ASSUME CS:CODE, DS:DATA START: MOV AX, DATA MOV DS, AX MOV DX, OFFSET MES ;显示提示信息 MOV AH, 09H INT 21H MOV DI, OFFSET SD MOV AL, DS:[DI] AND AL, 0F0H ;取高4位 SHR AL,4 CMP AL, 0AH ;是否是A以上的数 JB C2 ADD AL, 07H C2: ADD AL, 30H MOV DL, AL ;显示字符 MOV AH, 02H INT 21H MOV AL, DS:[DI] AND AL, 0FH ;取低4位 CMP AL, 0AH JB C3 ADD AL, 07H C3: ADD AL, 30H MOV DL, AL ;显示字符 MOV AH, 02H INT 21H MOV AX, 4C00H ;返回DOS INT 21H CODE ENDS END START 实验步骤: 运行轻松汇编软件,选择Edit菜单,根据实验内容的描述编写实验程序,本实验显示部分参考实验流程如图1-1示; 使用Compile菜单中的Compile和Link对实验程序进行汇编、连接; 使用Run菜单中的Run,运行程序,观察运行结果; 使用Run菜单中的Debug,调试程序,观察调试过程中,数据传输指令执行后,各寄存器及数据区的内容; 更改数据区中的数据,考察程序的正确性。 图1-1 显示程序实验流程图实验结果及分析: 收获体会: 掌握在PC机上以十六进制形式显示数据的方法;掌握部分DOS功能调用使用方法; 实验名称实验2:数据传送实验成绩班级82109473274姓名82109473274学号82109473274实验目的: 1. 熟悉汇编语言调试环境和Turbo Debugger的使用; 2. 掌握与数据有关的不同寻址方式。 实验内容: DDATA SEGMENT ;定义源数据段 MSR DB DIANXIN12-82109473274-ZHANGXUE$ LEN EQU $- MSR DDATA ENDS EXDA SEGMENT ;定义附加数据段 MSD DB LEN DUP(?) EXDA ENDS MYSTACK SEGMENT STACK ;定义堆栈段 DW 20 DUP(?) MYSTACK ENDS CODE SEGMENT ;定义代码段 ASSUME CS:CODE, DS:DDATA, ES:EXDA START: MOV AX, DDATA MOV DS, AX ;装载数据段寄存器 MOV AX, EXDA MOV ES,AX ;装载附加数据段寄存器 MOV SI, OFFSET MSR ;设置SI MOV DI, OFFSET MSD ;设置DI MOV CX, LEN NEXT: MOV AL, [SI] ;开始传输数据 MOV ES:[DI], AL INC SI INC DI DEC CX JNZ NEXT PUSH ES POP DS ;将附加段寄存器的段值赋给数据段寄存器 MOV DX, OFFSET MSD MOV AH, 9 INT 21H MOV AX, 4C00H ;利用DOS功能调用返回DOS状态 INT 21H CODE ENDS END START 将程序主体部分的寄存器间接寻址方式改为相对寻址方式,则如下所示: MOV BX, 0 MOV

文档评论(0)

1亿VIP精品文档

相关文档