文档详情

汇编语言、微机原理、接口技术-八个实验(全).doc

发布:2016-10-22约6.96千字共27页下载文档
文本预览下载声明
成绩:   计算机原理实验室实验报告 课 程 : 汇编语言与微机原理 姓 名 : 周晗 专 业 : 计算机科学与技术 学 号 : 1120542387 日 期 : 2013-12-19 太原工业学院 计算机工程系 实验一:输入输出实验 实验环境 PC机+Win 2003+emu8086+proteus仿真器 实验日期 2013.10.29 一.实验内容 熟悉emu8086仿真系统 实现控制台输入输出 设计并单步调试实现一位十进制数的加法运算(屏幕效果为3+2=5,红色为输入其他为自动输出) 扩展要求: 实现两位十进制和的输出 实现一位十进制四则运算 3.实现多位数运算 二.理论分析或算法分析 基本要求: 输入一位数保存在寄存器BL中,然后输出“+”,再输入被加数并加到BL。将计算的结果输出。 扩展要求: 实现两位十进制和的输出,不同于基本要求的是有了低位的进位。对于低位的相加有进位,并且要给了高位。首先必须把输入的字符数转换为数值型,才可能有进位。然后进行加法的aaaBCD调整。 从键盘读取第一个数 从键盘读取第一个数的十位三.实现方法(含实现思路、程序流程图、实验电路图和源程序列表等) 1、基本要求 MOV AH,1 INT 21H MOV BH,AL; 输出加号 MOV DL,+ MOV AH,2 INT 21H; 从键盘读第二个数 MOV AH,1 INT 21H; 保存第二个数 MOV BL,AL; 输出等于号 MOV DL,= MOV AH,2 INT 21H ; 两数相加 ADD BL,BH SUB BL,30H; 输出结果 MOV DL,BL MOV AH,2 INT 21H 实现两位十进制和的输出 五.结论 通过实验,初步了解emu8086仿真系统,能用汇编语言设计简单的程序我学会了简单的输入输出字符、对于的数据和计算的数据初步的理解。 实验二:分支程序实验 实验环境 PC机+Win 2003+emu8086+proteus仿真器 实验日期 2013.11.5 一.实验内容 实现控制台输入输出 实现两位十进制数猜数字游戏(基本要求:输入两位数和预设数值比较,对于输出小于输出等于输出=并退出) 扩展要求: 每次输出都换行 2.显示远大于(大于两倍)和远小于(小于二分之一) 二.理论分析或算法分析 首先将被猜的数字设成30。输入两位十进制数,放在al和bl并将其减去30h转换为数值型。输入数字和被猜数值30比较,如果大于30,则跳转到j4,并输出“”;如果小于30,则跳转到j3并输出“”;如果等于,则输出“=”并结束程序。 三.实现方法(含实现思路、程序流程图、实验电路图和源程序列表等) 四.实验结果分析(含执行结果验证、输出显示信息、图形、调试过程中所遇的问题及处理方法等) 五.结论 完成了本次实验,并通过本次试验的,学会了控制输入输出。通过对程序的设计学会了运用比较进行程序的跳转 实验三:循环程序实验 实验环境 PC机+Win 2003+emu8086+proteus仿真器 实验日期 2013.11.12 一.实验内容 实现内存数据访问 用两种方法实现对五个字从大到小排序 用冒泡法时实现快排 二.理论分析或算法分析 选择排序 冒泡排序 提取数组中的第一个数,与后一个数做比对,如果第一个数比第二个数小,则交换位置, 否则位置保持不变,依次和后边的数作比较,循环操作。 三.实现方法(含实现思路、程序流程图、实验电路图和源程序列表等) 四.实验结果分析(含执行结果验证、输出显示信息、图形、调试过程中所遇的问题及处理方法等) 验证了基本要求,实现了冒泡排序功能。 五.结论 该实验完成了基本要求,并通过这次实验学会了比较,循环。 实验四:子程序及中断实验 实验环境 PC机+Win 2003+emu8086+proteus仿真器 实验日期 2013.11.19 一.实验内容 实现子程序和中断服务子程序的设计 编写子程序设置40H中断为自定义中断服务子程序 编写中断服务子程序实现AX=AX+BX 编写主程序调用子程序和中断 二.理论分析或算法分析 1、让c=a+b。再将其传给子程序 2.用mov将ax,bx清零 3,用add函数将ax和bx相加,并用mov 将ax+bx的值传给c 三.实现方法(含实现思路、程序流程图、实验电路图和源程序
显示全部
相似文档