当前位置:文档之家› 汇编报告模板

汇编报告模板

汇编报告模板
汇编报告模板

课程设计

课程名称汇编语言程序设计

题目图形显示

专业计算机科学与技术

班级计应1081

学号

姓名

成绩

指导教师

2010 年12 月30 日

课程设计任务书

设计题目:图形显示

设计目的: 1.巩固和加深课堂所学知识;

2.将课本上的理论知识和实际应用有机的结合起来,培养同学们分析和解决

实际问题的能力;

3. 通过对汇编语言程序代码的阅读、修改、设计,理解和掌握复杂的汇编语言应用程序的编程,提高实践编程能力。

设计任务及要求:(在规定的时间内完成下列任务)

任务:编程实现按数字键1、2,分别将图形一、图形二,在不同位置显示,且各行以红、

黄、绿颜色间隔输出。

要求:程序结构中要求至少包含数据段、代码段;有子程序应用、有系统功能调用。 图形一:键盘接收数1,屏幕输出如下图形: 图形二: 键盘接收数2,屏幕输出如下图形:

*

* * *

* * * * *

* * * * * * *

* * * * * * * * * * * * * * * * * * * *

图形一: 图形二

时间安排:

具体要求:设计报告撰写格式要求(按设计报告统一格式撰写),具体内容如下:

1、 题目:

2、设计目的:

3、设计内容:写出简要的程序功能描述、程序运行条件--所需工具软件、输入/输出描述等。

4、程序结构:① 主要的段定义说明;

② 用到的子程序(宏)的功能说明、调用关系说明、参数传送方式说明等;

③ 主要算法(方法)描述等(各模块功能实现及典型指令的应用)。

5、设计步骤(注明时间安排)

6、程序流程图、源程序(程序必须有简单注释,源程序若太长,可作为附录)

7、实验结果(输出)

8、其他值得说明的内容(1)程序结构设计特点;(2)设计、调试程序心得、体会或不足。

附录:①源程序代码(必须有简单注释) ②参考文献 指 导 教 师 签 名: 2010 年12 月27 日

教研室主任(或责任教师)签名 2010 年12 月27 日

第1章 需求分析 ..................................................... .......... . (1)

1.1 课程设计题目 ...................................................... .......... . (1)

1.2 课程设计目的 ...................................................... .......... ..........1 * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *

* * * * * * * *

1.3 程序运行环境及开发工具......................................... .......... .1 1.3.1 运行环境 ....................................................... .......... .......... .. (1)

1.3.2 开发工具 ....................................................... .......... .......... .. (1)

1.4 课程设计任务及要求 ............................................... .......... .. (2)

1.4.1 设计任务 ....................................................... .......... .......... .. (2)

1.4.2 设计要求 ....................................................... .......... .......... .. (2)

第2章概要设计 ...................................................... .......... (2)

2.1 设计原理及方法 .................................................... .......... .. (2)

2.1.1 设计原理........................................................ .......... .......... (2)

2.1.2 设计方法........................................................ .......... .......... (2)

2.2 系统流程图 ......................................................... .......... .. (3)

第3章详细设计 ..................................................... .......... .......... .4 3.1 数据段的设计 ...................................................... .......... . (4)

3.2 主程序的设计与实现 .............................................. .......... (5)

3.3 子程序的设计与实现 ............................................... .......... (6)

3.3.1 键盘输入数字选项 .......................................... .......... .......... ..6 3.3.2 金字塔图形的显示............................................ .......... .. (6)

3.3.3 平行四边形图形的显示.................................. .......... .......... .. (7)

3.3.4 退出系统 ....................................................... .......... .......... .. (8)

第4章系统调试与操作说明 ......................................... .......... . (8)

4.1 系统调试 ........................................................... .......... .......... ..8 4.2 操作说明 ................................................... .......... .......... (10)

第5章设计中存在的问题及解决方法 .................................... .. (11)

第6章总结与体会 .................................................. .......... . (12)

参考文献 ................................................................ .......... .......... .. (13)

附录:源程序............................................................ .......... . (14)

第一章需求分析

1.1 课程设计题目

图形显示

1.2课程设计目的

1.巩固和加深课堂所学知识;

2.将课本上的理论知识和实际应用有机的结合起来,培养同学们分析和解决实际问

题的能力;

3. 通过对汇编语言程序代码的阅读、修改、设计,理解和掌握复杂的汇编语言应用程序

的编程,提高实践编程能力。

1.3 程序运行环境及开发工具

1.3.1 运行环境

CPU 指令集,CPU 型号,处理器设置等.

1.3.2 开发工具

TD 软件

1.4 课程设计任务及要求

1.4.1 设计任务

编程实现按数字键1、2,分别将图形一、图形二,在不同位置显示,且各行以红、黄、绿颜色间隔输出。

图形一:键盘接收数1,屏幕输出如下图形: 图形二: 键盘接收数2,屏幕输出如下图形:

*

* * *

* * * * *

* * * * * * *

* * * * * * * * *

* * * * * * * * * * * 图形一: 图形二

1.4.2 设计要求

程序结构中要求至少包含数据段、代码段;有子程序应用、有系统功能调用。

第二章 概要设计

2.1 设计原理及方法

2.1.1 设计原理

2.1.2 设计方法

2.2 系统流程图

第三章 详细设计

* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *

3.1 数据段的设计

3.2 主程序的设计与实现

3.3 子程序的设计与实现

3.3.1 键盘输入数字选项

3.3.2 金字塔图形的显示

3.3.3 平行四边形图形的显示

3.3.4 退出系统

第四章系统调试与操作说明

4.1 系统调试

4.2 操作说明

第五章设计中存在的问题及解决方法

第六章总结与体会

通过这次大型作业,我受益匪浅感觉到学习这门课程的重要性,也发现自己所学知识的浅陋,作为我的专业课,没学好我感到很惭愧。

在此次编程过程中出现了很多平时没有注意到的东西,遇到了很多知识的障碍,但是我并没有放弃,在同学的帮助下我下定决心一定要克服难关。

在程序调试阶段,也出现了多处错误,通过查资料,然后在大家的帮助下,我找出了出错的原因,高兴之余,我看到了自己的马虎大意。以后我会更加努力,减少错误的发生,程序虽然可以运行且各种功能均能实现,但是其中还是有好多缺陷,希望老师给我提供一些意见和帮助,我一定会虚心接受时这个小程序更加的完善。

此次学习,使我更加坚定在以后的学习中,我会认真努力,不枉费我来大学一趟,不错过在大学的学习机会,会用自己的知识来完善自己,是自己的生活更有意义。

参考文献:

1.沈美明,IBM.PC汇编程序设计,清华大学出版社

2.叶继华,汇编语言与接口技术,机械工业出版社

3.张丹,汇编语言程序设计,国防工业出版社

设计者:

日期:年月日

附录:源程序

汇编语言实验报告

汇编语言实验报告 专业: 班级: 姓名: 学号: 2011年12月14日

目录 实验1 利用DEBUG调试汇编语言程序段 (3) 实验2 初级程序的编写与调试实验(一) (11) 实验3 初级程序的编写与调试实验(二) (20) 实验4 汇编语言程序上机过程 (28) 实验5 分支程序实验 (33) 实验6 循环程序实验 (40) 实验7 子程序实验 (45)

实验1 利用DEBUG调试汇编语言程序段一.实验目的 1.熟悉DEBUG有关命令的使用方法; 2.利用DEBUG掌握有关指令的功能; 3.利用DEBUG运行简单的程序段。 二.实验内容 1.进入和退出DEBUG程序; 1)开始—运行,输入cmd,点确定进入命令窗口 2)在命令窗口中输入dubug进入debug程序 3)进入debug窗口后,输入q命令退出debug 2.学会DEBUG中的 1)D命令(显示内存数据D 段地址:偏移地址) 例1:-D100;显示DS段, 0100开始的128个节内容

说明:指定要显示其内容的内存区域的起始和结束地址,或起始地址和长度。 ①DSEGREG[起始地址] [L 长度] ;显示SEGREG段中(缺省内默认为DS), 以[起始地址] (缺省内为当前的偏移地址),开始的[L 长度] (缺省内默认为128)个字节的内容. ② D SEGREG[段地址:偏移地址] ;显示SEGREG段中(缺省内默认为DS), [段地址:偏移地址]开始的[L 长度] (缺省内默认为128)个字节内容 -D ;默认段寄存器为DS,当前偏移地址(刚进入debug程序偏移地址为0100H) -D DS:100 ;显示DS段, 0100H开始的128个字节内容 -D CS:200 ;显示CS段, 0200H开始的128个字节内容 -D 200:100 ;显示DS段, 0200:0100H开始的128个字节内容

汇编实验报告(详细版)

计算机组成与汇编语言(实验报告) 内容: 实验一、六、七、八 院系专业:计算机学院计算机科学与技术 姓名:xxxxxxxxx 学号: 2011004xxxxx 完成时间:2012年12月1日

计算机组成与汇编语言实验报告 姓名xxxx 学号2011004xxxxx 计分 专业软件工程班级xxxx 实验日期2012年 12 月 1日实验名称实验一数制转换 实验目的 ●熟悉各种进制数据之间的相互转换方法。 ●掌握二-十进制数据的相互转换程序设计。 实验内容 1.将编写好的程序1输入、编译、连接并运行。 程序1清单 #include #include #include void main() { int i,l,s0=0,s=0; char a[17]; while(l!=16) { printf("请输入一个16位的二进制数:\n"); gets(a); l=strlen(a); for(i=0;i<16;i++) { if(a[i]!='0'&&a[i]!='1') {

printf("输入的二进制数不正确!!"); break; } } } if(a[15]=='1') s++; for(i=1;i<16;i++) { if(a[15-i]=='1') s+=(1<

说明:如果不是16位二进制则会提示错误。 2.将编写好的程序2输入、编译、连接并运行。 程序2清单 #include #include void main() { int t0,t1,t2,t3,i,j; int a[16]; printf("请输入一个十进制数:"); scanf("%d",&t0); t1=t0; for(i=0;i<16;i++) { t2=t1/2; if(t2>1) a[i]=t1%2; else if(t1==1) { a[0]=1; for(i=1;i<16;i++) a[i]=0; } else if(t1==2) { a[i]=0; a[i+1]=1; for(j=i+2;j<16;j++)

商品混凝土公司安全生产标准化管理体系方案资料汇编(2019-2020新标准实施模板)

Q/WSS Q/WSS-2019 商品混凝土站安全生产标准化管理体系全套方案资料标准汇编 编号:Q/WSS-002-2019 2019-2020版 编制: 审核: 批准: 受控状态: 发布日期:2019-05-15 实施日期:2019-08-15 XX商品混凝土公司

目录 第1章编制说明 (1) 1.1 制定原则 (1) 1.2 编制及管理 (1) 1.3 文本及文字要求 (2) 1.4 其他 (3) 第2章标准化体系编制依据 (4) 2.1安全生产法律 (4) 2.2安全生产法规 (6) 2.3安全规章 (8) 第3章目标 (17) 3.1 安全生产目标管理制度 (17) 3.1.1 目的 (17) 3.1.2 范围 (17) 3.1.3 内容 (17) 3.2 2019年度安全生产目标 (20) 3.3 年度安全生产目标分解 (22) 3.4 安全生产目标实施计划和考核办法 (23) 3.4.1 附责任书1:安全生产目标责任书(管理层样本) (24) 3.4.2 附责任书2:安全生产目标责任书(员工样本) (27) 3.4.3 附表1:安全生产目标考核台账 (29) 第4章组织机构和职责 (31) 4.1 安全机构设置与安全管理人员配备的管理制度 (31) 4.2 安全生产领导小组 (32) 4.3 安全生产领导小组工作章程 (33) 4.3.1 附表1:安全会议记录 (36) 4.4 安全管理机构 (38) 4.4.1 附图1:安全管理组织机构图 (40) 4.5 商混站安全员任命通知 (41) 4.5.1 附表1:安全管理人员统计台账 (42) 第5章安全生产责任制 (44) 5.1 安全生产责任制的制定、沟通、培训、评审、修订及考核的管理制度 (44) 5.1.1 附表1:安全生产责任制与权限培训记录 (47) 5.1.2 附表2:安全生产责任制评审表 (49) 5.1.3 附表3:安全生产责任制落实情况考核台帐 (50) 5.2 组织机构体系及职责 (51) 5.2.1 商混站层级管理图 (51) 5.2.2 组织机构体系 (52) 5.2.3 管理职责 (52) 5.3 商品混凝土站各级岗位职责 (54) 5.3.1 站长岗位职责 (54)

汇编语言综合实验报告

XXXX大学XX学院 实验报告 课程名称:汇编语言 学号: 姓名: 系: 专业: 年级: 指导教师: 职称: 20xx~20xx学年第一学期

实验项目列表 序号实验项目名称成绩指导教师 1 实验一汇编程序的汇编及运行 2 实验二顺序程序设计 3 实验三分支循环程序设计 4 实验四 DOS功能调用 5 实验五子程序设计 总平均

福建农林大学金山学院实验报告 系:专业:年级: 姓名:学号:实验课程:汇编语言 实验室号:__ __ 实验设备号:实验时间: 90分钟 指导教师签字:成绩: 实验一汇编程序的汇编及运行 1.实验目的和要求 (1)熟悉汇编程序的汇编、连接、执行过程 (2)生成LST文件,查看LST文件 (3)生成OBJ文件,修改语法错误 (4)生成EXE文件 (5)执行 2.实验环境 IBM—PC机及其兼容机 实验的软件环境是: 操作系统:DOS 2.0以上;调试程序:https://www.doczj.com/doc/c88269534.html,;文本编程程序:EDIT.EXE、WPS.EXE;宏汇编程序:MASM.EXE(或ASM .EXE);连接装配程序:LINK .EXE;交叉引用程序:CREF.EXE(可有可无)。 3.实验内容及实验数据记录 (1)将数据段输入,取名1.txt,保存在MASM文件夹下。生成LST文件,(不必连接、运行)用EDIT查看1.LST文件。试回答:DA1,DA2的偏移量分别是多少?COUNT的值为多少? DA TA SEGMENT ORG 20H NUM1=8 NUM2=NUM1+10H DA1 DB ‘IBM PC’ DA2 DB 0AH, 0DH COUNT EQU $-DA1

汇编实验报告

南华大学 实验名称:汇编语言程序设计实验 学院:计算机学院 专业班级:本2010 电气信息类03班 学号:20104030342 姓名:谢志兴 指导教师:刘芳菊 日期:2012 年 6 月10 日

实验一DEBUG的熟悉 一、实验目的 (1)学习使用DEBUG的命令; (2)使用DEBUG命令在数据段中查看程序运行的结果; (3)利用DEBUG运行简单的程序段。 二、实验内容 1)输入程序观察寄存器变化 使用DEBUG命令,将下面的程序段写入内存,逐条执行,观察每条指令执行后,CPU中相关寄存器的内容变化。注意用T命令执行时,CS: IP寄存器的内容。 MOV AX, 4E20 ADD AX, 1416 MOV BX, 2000 ADD AX, BX MOV BX, AX ADD AX, BX MOV AX, 001A MOV BX, 0026 ADD AL, BL ADD AH, BL ADD BH, AL MOV AH, 0 ADD AL, BL ADD AL, 9C 2)输入下面的程序,这是一个两个数相与的程序。结果存放在MSG2单元中,偏移地址为?值为多少? DSEG SEGMENT MSG1 DW 7856H, 2038H MSG2 DW? DSEG ENDS CSEG SEGMENT ASSUME CS: CSEG, DS: DSEG

START: MOV AX, DSEG MOV DS, AX MOV AX, MSG1 AND AX, MSG1+2 MOV MSG2, AX MOV AL, 0 MOV AH, 4CH INT 21H CSEG ENDS END START 程序的跟踪执行操作 在DOS下直接输入文件主名就可以执行文件了,有的程序会显示结果,可能执行后什么结果都没有,是因为程序中没有显示命令。那么如何查看程序的运行结果呢? 程序执行过程的跟踪操作步骤如下: (1)在DOS下输入:DEBUG 文件名.EXE (2)在DEBUG提示符下输入U命令 如果程序中有数据段,可以看到反汇编后第一句可执行语句为: A地址:B地址MOV AX, K地址如:1261:0000 MOV AX, 1260 其中:K地址就是数据段的段寄存器内容,A地址为代码段段寄存器地址,B地址为程序第一条指令的偏移地址。 (3)可以用T命令单步执行指令,执行到MOV AH, 4CH时结束,也可以用G命令执行整个程序,输入:G=B地址(如:G=0000) (4)用D命令查看程序执行后数据段的变化 输入:D K地址:0 (如:D1260:0)

合肥工业大学汇编程序设计实验报告完整代码

合肥工业大学 计算机与信息学院实验报告

课程:汇编语言程序设计 专业班级:信息安全13-1 学号:2013211869 姓名:马骏 实验一Debug程序的使用 一.实验目的 1、熟悉DEBUG程序中的命令,学会在DEBUG下调试运行汇编语言源程序。 2、掌握8086/8088的寻址方式及多字节数据的处理方法。 二.实验内容 1、利用DEBUG程序中的“E”命令,将两个多字节数“003F1AE7H”和“006BE5C4H”分别送入起始地址为DS:0200H和DS:0204H两个单元中。 2、分别用直接寻址方式和寄存器间接寻址方式编写程序段,实现将DS:0200H 单元和DS:0204H单元中的数据相加,并将运算结果存放在DS:0208H单元中。要求: 本次实验的内容均在DEBUG下完成,实现数据的装入、修改、显示;汇编语言程序段的编辑、汇编和反汇编;程序的运行和结果检查。 三.实验过程和程序 实验将”12345678H”和”FEDCBA98H”分别送入起始地址为DS:200H和DS:204H 的两个单元中。还包含两个附加题,一是从DS:0000H 开始的5个16 位带符号数分别记为x,y,z,v,w,E命令初始化为:540,1,-1,1080,0, 试求 w=(v-(x*y+z-540))/x,二是统计bx中1的个数 四.实验结果(包括必要的截图) 将两个多字节数“003F1AE7H”和“006BE5C4H”分别送入起始地址为DS:0200H 两个单元中。DS:0204H和

直接寻址方式实现数据相加 寄存器间接寻址实现数据相 加. 附加题一: 从DS:0000H开始的 5 个16 位带符号数分别记为x,y,z,v,w,用E命令初始化为:540,1,-1,1080,0, 试求w=(v-(x*y+z-540))/x

2013材料汇编、报告格式

社会实践材料汇编文档排版要求 一、目录 “目录”两字方正粗宋简体二号 目录正文仿宋 GB2312 四号 二、文章 大标题方正粗宋简体小二 小标题方正粗宋简体三号 正文仿宋 GB2312 四号 段中大标题仿宋 GB2312 三号加粗 段中小标题仿宋 GB2312 四号号加粗 行距 1.5倍行距 段前段后均为0行 首行缩进 2字符 三、表格 表格标题仿宋 GB2312 小四号加粗 表格内容仿宋 GB2312 小四 表格备注仿宋 GB2312 小四 特殊表格可以横向打印,要求如上。 三、页边距 双面打印均为2.2厘米 注:正文分层时,不要使用自动生成模式(如:自动生成的(一)、(二)……);数字使用要求:依次为:一、(一) 1. (1); 汇编中报告字体要求亦如上。

报告格式要求 一、页面设置: 纸张大小:A4 纸张方向:纵向 页边距:双面打印,上、下、左、右均为2.2厘米 行距:1.5倍行距 二、各类标题 大标题:黑体小二,居中,加粗 副标题:宋体小三,居中 正文中各题头:宋体四号,加粗 数字标号题头:宋体小四,加粗 【摘要】、【关键字】都要顶格写 三、姓名及院系 姓名:写在副标题下面,且在前加□,宋体小三,居中 系别:用括号标注在姓名后面(与姓名同行),宋体小三,居中 四、正文 正文:宋体小四,首行缩进2字符 图表:须美观大方,注明图或表 表格标题宋体五号加粗 表格内容宋体小四号 表格备注宋体小四号 特殊表格可以横向打印,要求如上。注意:表格的标题(即表头)写在表格的上方。

共青团湖北师范学院委员会实践部制 调查报告参考文献具体格式 一、参考文献的类型 根据 GB3469-83《文献类型与文献载体代码》规定,以单字母标识: M——专著(含古籍中的史、志论著 C——论文集 N——报纸文章 J——期刊文章 D——学位论文 R——研究报告 S——标准 P——专利 A——专著、论文集中的析出文献 Z——其他未说明的文献类型 电子文献类型以双字母作为标识: DB——数据库 CP——计算机程序 EB——电子公告 非纸张型载体电子文献,在参考文献标识中同时标明其载体类型: DB/OL——联机网上的数据库 DB/MT——磁带数据库 M/CD——光盘图书 CP/DK——磁盘软件 J/OL——网上期刊 EB/OL——网上电子公告 二、具体范例 1、专著、论文集、学位论文、报告 [序号]主要责任者.文献题名[文献类型标识].出版地:出版者,出版年.起止页码(任选). 注意:[序号]+作者+标点为英文输入法下的圆点+参考文章的名称+中括号中注明文章类型+圆点+空格+出版地址+冒号+出版社名称+逗号+出版时间+圆点。文章作者有多个的,中间用逗号隔开,出版社名称和出版时间用逗号隔开。 [1]刘国钧,陈绍业,王凤翥. 图书馆目录[M]. 北京:高等教育出版社,1957.15-18. [2]辛希孟. 信息技术和信息服务国际研讨会论文集:A集[C]. 北京:中国社会科学出版社,1994. [3]张筑生. 微分半动力系统的不变集[D]. 北京:北京大学数学系数学研究所,1983. [4]冯西桥. 核反应堆压力管道和压力容器的LBB分析[R]. 北京:清华大学核能技术设计研究院,1997. [5] Gill,R. Mastering English Literature[M] . London: Macmillan,1985.

汇编语言综合实验报告

综合性设计性实验报告 班级:计算机科学与技术专2014 级 4 班实验项目名称:循环显示1 0 个数字符号 实验项目性质:综合性 实验所属课程:计算机组成原理与汇编语言 实验室(中心):实验室(4 0 7 ) 指导教师: 实验完成时间: 2016 年 5 月 27

一、实验目的 (1)掌握子程序的定义和调用方法。 (2)掌握子程序的编写方法及参数传递的方法。 二、实验内容及要求 本实验内容主要是编写一个显示过程汇编程序,使得在屏幕上依次显示10 个数字符号,每一行13 个字符,然后循环进行显示。实验要求是在代码段中编写这个过程,并要求用主程序调用该过程。 三、实验设备及软件 实验室(407)电脑一台以及编译器DEBUG MASM LINK软件。 四、设计方案 ㈠题目(老师给定或学生自定) 循环显示10个字符 ㈡设计的主要思路 首先,先定义一个数据段和代码段。数据段内定义一个名称为prl大小为一个字节的字符串,即本人学号。代码段内首先借助段寻址伪指令ASSUME规定好代码段和数据段分别在段寄存器CS、DS。然后start内将数据段段地址放入DS中。接下来定义一个子程序dgdsp,其实现的功能主要是先将bl(字符数目控制)清零,dl(字符范围0-9)赋值为字符0的ascll码。然后定义一个lp循环,循环内调用DOS2号功能显示字符,并bl、dl自增,接着比较dl与字符9的ascll码值的大小,若大于就将dl重置为字符0的ascll码。若小于则跳转到next循环,next循环中主要比较bl与13的大小,若小于则跳转到lp,若大于就进入bbb子程序。bbb子程序主要是先保护DX将其压栈,然后使用DOS9号功能显示prl字符串,最后将DX出栈。然后进入next循环将DX压栈,分别使用DOS0a、02号功能将dl输入显示,最后将DX出栈。分别将bl、al清零,最后跳转到lp子程序继续循环执行。 流程图如下:

汇编实验报告

XXXX大学 实验报告 课程名称汇编语言程序设计成 绩 实验学时 评语: 指导教师: 年月日 班级: 学号: 姓名: 地点: 时间:

实验一汇编语言编程实验 一、实验目的 (1)掌握汇编语言的编程方法 (2)掌握DOS功能调用的使用方法 (3)掌握汇编语言程序的调试运行过程 二、实验内容 1. 将指定数据区的字符串数据以ASCII码形式显示在屏幕上,并通过DOS功能调用完 成必要提示信息的显示。 2. 在屏幕上显示自己的学号姓名信息。 3. 循环从键盘读入字符并回显在屏幕上,然后显示出对应字符的ASCII码,直到输 入”Q”或“q”时结束。 4. 实验中使用的DOS功能调用: INT 21H AH 值功能调用参数结果 1 键盘输入并回显AL=输出字符 2 显示单个字符(带Ctrl+Break检查) DL=输出字符光标在字符后面 6 显示单个字符(无Ctrl+Break检查) DL=输出字符光标在字符后面 8 从键盘上读一个字符AL=字符的ASCII码 光标跟在串后面 9 显示字符串DS:DX=串地址, ‘$’为结束字符 4CH 返回DOS系统AL=返回码 例如,实现键盘输入并回显的完整代码: MOV AH 01H INT 21H 三、实验结果 1. 将指定数据区的字符串数据”Let us go !”以ASCII码形式显示在屏幕上,并通过 DOS功能调用完成必要提示信息的显示: 2. 在屏幕上显示自己的学号姓名信息 3.循环从键盘读入字符并回显在屏幕上,然后显示出对应字符的ASCII码,直到输 入”Q”或“q”时结束。

四、实验原理 DATA SEGMENT MES DB 'NUMBER: 03099018 ',0AH,0DH,'NAME: Feng Xiaokang',0AH,0DH,'$' CENT DB 'Let us go !','$' ENTE DB 0AH,0DH,'$' INFO DB 'Origin: ','$' ASCI DB 'ASCII : ','$' MSG1 DB 'If you want to quit please press...q/Q...',0AH,0DH,'$' MSG2 DB 0AH,0DH,'Char: $' RS DB ' ASCII: $' SD DB '' 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 DX,OFFSET MSG1 MOV AH,09H INT 21H MOV DX, OFFSET CENT MOV SI, DX T: MOV AL,[SI] CMP AL,'$' JZ C1 AND AL,0F0H ;取高4位 MOV CL,4 SHR AL,CL CMP AL,0AH ;是否是A以上的数 JB A ADD AL,07H A: ADD AL,30H MOV DL,AL ;show character MOV AH,02H INT 21H

汇编语言实验报告(子程序)

西安财经学院信息学院 姓名 学号 10051704 班级计本1004班 指导教师张娟 《汇编语言程序设计》实验报告 实验名子程序结构程序设计 实验室实验楼403 实验日期 2013/06/09 1、实验目的及要求 1. 学习子程序的编写,主子程序的调用 2. 不同模块间程序的调用和调试 二、实验环境 硬件环境:一台微型计算机; 软件环境:windows 7 链接程序:LINK.EXE 调试环境:DOSBOX虚拟平台。 3、实验内容 数据段中的6个字符,“ABCDEF”,调用子程序将其逐个显示出来。子程序的功能是显示一个字符。 四、实验过程 1. 通过编译程序、链接程序分别生成OBJ和EXE文件后,直接运 行查看结果如下: 2. 反汇编,查看程序的指令,如下所示:

3. 用 -d 查看数据段内存放的数据: 4. 单步执行

查看堆栈段的内容:

继续单步执行:

5、源程序清单 程序源代码如下: DATA SEGMENT MAG DB ‘ABCDEF’ DATA ENDS CODE SEGMENT ASSUME CS: CODE, DS: DATA START: MOV AX, DATA MOV DS, AX MOV SI, 0 MOV CX, 6 LL: MOV DL, MAG[SI] CALL MADD INC SI LOOP LL MOV AH, 4CH INT 21H MADD PROC MOV AH, 02H INT 21H RET MADD ENDP CODE ENDS END START 6、实验体会 本次实验完成比较顺利。首先,程序是在网上找的,但是我用纸笔写下来仔细地看程序的每一行代码,都弄清楚以后,才建立的文件一步一步执行下来的。其实实验中还是遇到了一些小问题,但都能够顺利解决,所以本次实验不仅巩固了理论知识、培养了动手能力,还增加了做实验的自信心。对以后的学习都有很大的帮助。

大学课程汇编语言的实验报告

实验报告 实验课程: 学生姓名: 学号: 专业班级:电气信息类III班 2011年12月20日

目录 (1)汇编语言程序上机过程 (2) (2)字符串处理程序实验 (6) (3)子程序实验 (13) (4)中断程序实验 (21) (5)C++调用汇编子程序 (25)

南昌大学实验报告 ---(1)汇编语言程序上机过程学生姓名:学号:专业班级: 实验类型:□验证■综合□设计□创新实验日期:2011.11.12/13实验成绩:一、实验目的 熟练掌握汇编语言程序的编辑、调试和运行的过程和方法。了解汇编语言程序的汇编、运行环境。 二、实验内容 1.掌握常用的编辑工具软件(如WORD、EDIT)、MASM和LINK的使用; 2.伪指令:SEGMENT,ENDS,ASSUME,END,OFFSET,DUP; 3.利用的INT21H的1号功能实现键盘输入的方法; 三、实验环境 PC微机 DOS操作系统或Windows操作系统 MASM.EXE,LINK.EXE,https://www.doczj.com/doc/c88269534.html,或宏汇编集成环境 四、实验要求 1.仔细阅读有关伪指令SEGMENT,ENDS,ASSUME,END,OFFSET,DUP的内容; 2.了解利用的INT21H的1号功能实现键盘输入的方法,了解.EXE文件和.COM文件的区别及用INT21H4C号功能返回系统的方法; 3.阅读下面程序段。 五、主要实验步骤 程序: data segment message db'This is a sample program of keyboard and disply' db0dh,0ah,'Please strike the key!',0dh,0ah,'$' data ends stack segment para stack'stack' db50dup(?) stack ends code segment assume cs:code,ds:data,ss:stack start:mov ax,data mov ds,ax mov dx,offset message mov ah,9 int21h again:mov ah,1

汇编实验报告

实验一 DOS常用命令及8088/86指令使用 实验目的 通过实验掌握下列知识: 1、DOS命令: CD,DIR,DEL,RENAME,COPY。 2、8088指令: MOV,ADD,ADC,SUB,SBB,DAA,XCHG 3、DEBUG命令: A,D,E,F,H,R,T,U。 4、BCD码,ASCII码及用十六进制数表示二进制码的方法。 5、8088寄存器: AX,BX,CX,DX,F,IP。 实验类型:验证 内容及步骤 一、DOS常用命令练习 1、开机后,切换到命令提示符窗口下,出现提示符后键入命令DIR, 查看此目录下所有文件。 2、键入命令CD..进入上级目录,再查看此目录下所有文件。 3、将一张3.5寸软盘插到 A驱动器中,用DIR命令查看盘上文件。 4、用命令 COPY https://www.doczj.com/doc/c88269534.html, BUG 复制一个文件。 5、用命令 RENAME BUG BG 将BUG 文件改为BG。 6、用命令 DEL BG 将文件BG删除。 在操作时要注意提示信息,并按提示操作。 二、DEBUG 命令使用 1、键入 DEBUG 进入 DEBUG 控制状态,显示提示符 '- '。 2、用命令 F100 10F 'A' 将'A'的ASCII码填入内存。 3、用命令 D100 10F 观察内存中的十六进制码及屏幕右边的ASCII字符。 4、用命令 F110 11F 41 重复上二项实验,观察结果并比较。 5、用命令 E100 30 31 32 …… 3F将30H-3FH写入地址为100开始的内存单元中,再用D命令观察结果,看键入的十六进制数是什么字符的ASCII码? 6、用H命令检查下列各组十六进制数加减结果并和你的手算结果比较: (1)34H,22H (2)56H,78H (3)A5,79H (4)1284H,5678H (5)A758H,347FH 7、用R命令检查各寄存器内容,特别注意AX,BX,CX,DX,IP及标志位中ZF,CF和AF的内容。 8、用R命令将AX,BX内容改写为1050H及23A8H。 三、8088常用指令练习 1、传送指令 用A命令在内存100H处键入下列内容: -A 0100↙ ****:0100 MOV AX,1234↙ ****:0103 MOV BX,5678↙ ****:0106 XCHG AX,BX↙ ****:0108 MOV AH,35↙ ****:010A MOV AL,48↙

汇编语言程序设计实验报告

微机原理实验报告 实验名称汇编语言程序设计 一、实验目的 1、掌握Lab6000p实验教学系统基本操作; 2、掌握8088/8086汇编语言的基本语法结构; 3、熟悉8088/8086汇编语言程序设计基本方法 二、实验设备 装有emu8086软件的PC机 三、实验内容 1、有一个10字节的数组,其值分别是80H,03H,5AH,FFH,97H, 64H,BBH,7FH,0FH,D8H。编程并显示结果: 如果数组是无符号数,求出最大值,并显示; 如果数组是有符号数,求出最大值,并显示。 2、将二进制数500H转换成二-十进制(BCD)码,并显示“500H 的BCD是:” 3、将二-十进制码(BCD)7693转换成ASCII码,并显示“BCD 码7693的ASCII是:” 4、两个长度均为100的内存块,先将内存块1全部写上88H,再 将内存块1的内容移至内存块2。在移动的过程中,显示移动次数1, 2 ,3…0AH…64H(16进制-ASCII码并显示子程序) 5、键盘输入一个小写字母(a~z),转换成大写字母 显示:请输入一个小写字母(a~z): 转换后的大写字母是: 6、实现4字节无符号数加法程序,并显示结果,如99223344H +

99223344H = xxxxxxxxH

四、实验代码及结果 实验代码见代码附录 1.1程序运行结果 图1 无符号最大值结果截图 1.1 程序运行结果

图2 有符号最大值截图2.0 程序运行结果

图3 BCD码显示3.0 程序运行结果

图4 ASCII码显示4.0 程序运行结果

汇编实验报告..

合肥工业大学计算机与信息学院 实验报告 课程:汇编语言程序设计专业班级: 学号: 姓名:

实验一Debug程序的使用 一.实验目的 1、熟悉DEBUG程序中的命令,学会在DEBUG下调试运行汇编语言源程序。 2、掌握8086/8088的寻址方式及多字节数据的处理方法。 二.实验内容 1、利用DEBUG程序中的“E”命令,将两个多字节数“003F1AE7H”和“006BE5C4H”分别送入起始地址为DS:0200H和DS:0204H两个单元中。 2、分别用直接寻址方式和寄存器间接寻址方式编写程序段,实现将DS:0200H 单元和DS:0204H单元中的数据相加,并将运算结果存放在DS:0208H单元中。要求: 本次实验的内容均在DEBUG下完成,实现数据的装入、修改、显示;汇编语言程序段的编辑、汇编和反汇编;程序的运行和结果检查。 三.实验过程和程序 1、启动DOS操作系统 2、运行https://www.doczj.com/doc/c88269534.html,程序(若当前盘为C) C:>DEBUG↙ – ;(“–”为DEBUG提示符,仅当屏幕出现该提示符后,才可输入DEBUG命令) 3、用“A”命令编辑和汇编源程序 –A ↙ 186E:0100 MOV AX,[0200]↙ 186E:0103 MOV BX,[0202]↙ 186E:0107 ADD AX,[0204]↙ 186E:010B ADC BX,[0206]↙ 186E:010F MOV [0208],AX↙ 186E:0112 MOV [020A],BX↙ 186E:0116 ↙ 4、用“U”命令反汇编验证源程序 –U CS:0100↙ 186E:0100 A10002 MOV AX,[0200] 186E:0103 8B1E0202 MOV BX,[0202] 186E:0107 03060402 ADD AX,[0204] 186E:010B 131E0602 ADC BX,[0206] 186E:010F A30802 MOV [0208],AX 186E:0112 891E0A02 MOV [020A],BX 186E:0116 – 注意:

汇编程序调试实验报告

微机原理与接口技术 作 业 班级: 目录 一、........................................................... 实验目的:2 二、............................................................. 实验环境2 三、............................................................. 实验过程3 (一)................................................. 基础知识储备3

(二)............................................. 汇编语言程序设计3

(三)汇编程序调试 (3) 四、............................................................. 调试实例4 (一)....................................................... 实例一4 (二)....................................................... 实例二6 (三)....................................................... 实例三9 (四)....................................................... 实例四12五、............................................................. 实验总结15 (一)..................................................... 实验收获15 (二)..................................................... 实验感悟16 一、实验目的: 汇编语言是一种用助记符表示的程序设计语言。用汇编语言编写的源程序生成的目标 代码短,占内存少,执行速度快,适合于系统软件、实时控制软件、I/O接口驱动等程序设计。通过本次实验,熟练掌握汇编程序的调试,深入了解MAS汇编语言及其程序设计方法。 、实验环境 EDIT编辑器、MASME编程序、LINK连接程序、TD调试程序

材料汇编模板

2016-2017学年度第一学期 教室装扮大赛 材 料 汇 编

主办:共青团鞍山师范学院 化学与生命科学学院委员会 承办:化学与生命科学学院宣传部 2016年10月25日 目录1········································································活动申请书2········································································安全预案3········································································活动策划书

4········································································人员名单5········································································活动心得6········································································活动总结

鞍山师范学院教室装扮大赛活动申请表

2016-2017学年度第一学期化学与生命科学学院 宣传部主题活动 安 全

预 案 主办:共青团鞍山师范学院 化学与生命科学学院委员会承办:化学与生命科学学院宣传部 2016年10月19日

汇编实验报告

XI`AN TECHNOLOGICAL UNIVERSITY 实验报告

西安工业大学实验报告 一、实验目的 1、学习和掌握利用TD-TIPE连机软件调试汇编程序。 2、了解可编程并行接口芯片8255的内部结构、工作方式、初始化编程及应用。 二、实验原理 基本输入输出实验。编写程序,使8255的A口为输出,B口为输入,完成拨动开关到数据灯的数据传输。要求只要开关拨动,数据灯的显示就改变。 三、实验步骤、数据记录及处理 1.步骤: (1)硬件测试; (2)获得端口地址; (3)写出源程序, 2.源代码 (1)程序一 SSTACK SEGMENT STACK DW 32 DUP(?) SSTACK ENDS CODE SEGMENT ASSUME CS:CODE

START: MOV DX, 0646H MOV AL, 90H OUT DX, AL AA1: MOV DX, 0640H IN AL, DX CALL DELAY MOV DX, 0642H OUT DX, AL JMP AA1 DELAY: PUSH CX MOV CX, 0F00H AA2: PUSH AX POP AX LOOP AA2 POP CX RET CODE ENDS END START (2)程序二 SSTACK SEGMENT STACK DW 32 DUP(?) SSTACK ENDS CODE SEGMENT ASSUME CS:CODE START: MOV DX, 0646H MOV AL, 90H OUT DX, AL AA1: MOV DX, 0640H IN AL, DX

汇编语言模拟电梯实验报告书

一.实训目的 (1) 二.实训内容与要求 (1) 1.基本内容 (2) 2.实训要求 (2) 三.实训设计思路 (1) 1.总体思路 (3) 2.硬件设计 (4) 3.软件设计 (6) 四.模拟电梯源代码 (9) 五.加载调试 (28) 六.实训总结 (30) 1.出现的问题及排除方法 (30) 2.实训注意事项 (30) 3.心得体会 (1) 七.参考文献 (31) 一.实训目的 1.了解电梯调度算法,运用汇编语言编写程序。 2.利用微机实验系统来模拟电梯,实现电梯功能。 3.进一步掌握微机接口的设计方法,正确连各芯片引脚。 4. 加强学生实际应用能力及综合知识运用能力的培养。

二.实训内容与要求 绘制流程图、根据流程图编写程序、选用硬件电路编制应用软件、自主选择硬编制应用软件,并画出详细原理图。 2.实训要求 用键盘、按钮、八段码和LED模拟电梯工作过程。楼层设为8层,键盘数字键1~8用来键入希望停的楼层,8个LED显示希望停的楼层,八段码指示电梯当前所在楼层,按钮用来启、停电梯。电梯正常运行时以每2秒1层的速度上升或下降。要求“电梯”能按以下方式运行: (1)设电梯停在某层。键入1~8数字键,如数字与当前电梯停层同,则什么亦不动作,若不同则相应楼层的LED亮;如按运行键,则电梯自动判别上升或下降一直到达希望停的楼层。 (2)设电梯正在上升或下降运行,若键入新的希望停的楼层数字,则对同方向未到的楼层能停,对其它情况则先停原希望停的楼层,然后按运行键后继续运行)。如下几例: 电梯在2层,向上运行,LED希望在6层停,若键入4,则将在4楼停,若按运行键,则运行至6层停;若键入的不是4而是8,则电梯将先停在6层,再按运行键,运行至8层停若键入的不是4(或8),而是1,则电梯先停在6层,再按 运行键,运行至1层停。

汇编实验报告

汇编语言程序设计 实验报告 学号:100511530 班级:电气信息类1005 姓名:陆淑琴 指导老师:李诗高

实验一、汇编语言上机的基本过程及环境 【实验目的】 (1)熟悉汇编语言的编辑、汇编、连接及调试的全过程,重点掌握使用DEBUG调试程序的方法。 (2)了解汇编语言的程序结构。 【实验内容】 (1)在数据段中定义两个数(数据自拟,包含有正数和负数),要求编写程序分别计算出这两个数的和、差、积、商,并用Debug的相关命令查询计算结果(包括对CF,OF,SF,ZF的影响)。 (2)首先对AX,BX,CX寄存器赋初值(数据自拟),再将AX寄存器的中间八位,BX的低四位和CX的高四位拼接成一个新的字,并把结果存入偏移地址为0000H的存储单元。其中BX的低四位作为结果字的高四位,CX的高四位作为结果字的低四位。并用Debug的相关命令查询内存单元的结果字。 源代码: DA TA SEGMENT val1 DW 1000h val2 DW 2000h maxv DW ? DA TA ENDS STACK SEGMENT STACK 'STACK'

DB 100H DUP(?) STACK ENDS CODE SEGMENT 'CODE' ASSUME CS:CODE, DS:DATA,SS:STACK .386 MAIN: MOV AX, DATA; MOV DS, AX PUSH val1 PUSH val2 CALL MAX ; POP maxv ;栈顶返回值出栈 MOV AX, 4c00H INT 21H MAX PROC PUSH BP ;执行该指令前堆栈情况 MOV BP, SP ;执行后堆栈情况 MOV AX, [BP+4] CMP AX, [BP+6] JA EXIT MOV AX, [BP+6] EXIT: MOV [BP+6], AX ;用栈顶返回值 POP BP RET 2 ;执行后堆栈情况 MAX ENDP CODE ENDS END MAIN 【实验步骤】 (1)用编辑软件(记事本、UltraEdit等)编辑一个扩展文件名为ASM的汇编语言源程序。 (2)用汇编程序MASM汇编上述的汇编语言源程序,形成目标代码文件。(扩展名为OBJ) (3)用连接程序LINK连接目标代码文件,形成可执行文件。(扩展名为EXE)(4)用DEBUG32调试可执行文件,观察执行结果,以验证其正确性。

汇编语言程序设计实验报告三(子程序设计实验)

汇编语言程序设计实验报告三(子程序设计实验) 一、实验目的 1、掌握主程序与子程序之间的调用关系及其调用方法。 2、掌握子程序调用过程中近程调用与远程调用的区别。 3、熟练掌握码型变换的程序。 二、实验内容 1、从键盘输入二位非压缩BCD数,存入AX寄存器中,编程实现将其转换为二进制 数,并在屏幕上显示。要求码型转换程序用远程子程序编写,字符显示用近程子程序编写。数据可循环输入,遇‘00’结束。 三、实验准备 1、预习子程序设计的基本方法,根据实验内容要求编写出实验用程序。 2、熟悉键盘输入和字符显示的程序段的编制。 四、实验步骤 1、编辑、汇编源程序,生成可执行文件。 2、执行程序,检查输入、输出结果,看是否正确。如不正确,用DEBUG检查,修改 源程序,再汇编、运行,直到程序正确为止。 3、用DEBUG的T命令或P命令跟踪程序的执行,观察在远程和近程调用过程中,堆 栈的变化情况。 五、实验报告要求 1、分析近程调用和远程调用的主要区别。用DEBUG命令观察执行过程有何不同。 2、分析实验结果及所遇到的问题的解决方法。 主程序流程图 转换子程序TRAN流程图

七、程序清单 STA SEGMENT STACK ’STACK’ DB 100 DUP(0) STA ENDS GSAG SEGMENT PARA ‘CODE’ ASSUME CS:CSAG MAIN PROC FAR STRA T: PUSH DS SUB AX,AX PUSH AX REV: MOV AH,1 INT 21H MOV BL,AL INT 21H MOV AH,AL MOV AL,BL CMP AX,3030H JE ENDTRAN CALL NEAR PTR TRAN CALL FAR PTR CON MOV AL,0DH CALL FAR PTR DISP MOV AL,0AH CALL FAR PTR DISP MOV AL,0AH CALL FAR PTR DISP JMP REV ENDTRAN: RET MAIN ENDP TRAN PROC NEAR AND AX,0F0FH MOV BL,AL MOV BL,AL MOV CL,3 SHL AL,CL MOV CL,1 SHL BL,CL ADD AL,BL ADD AL,AH RET TRAN ENDP CSAG ENDS CSBG SEGMENT PARA’CODE’ ASSUME CS:CSBG

相关主题
文本预览
相关文档 最新文档