华中科技大学汇编实验报告2

华中科技大学汇编实验报告2
华中科技大学汇编实验报告2

课程实验报告

课程名称:汇编语言程序设计实验

实验名称:实验二分支程序、循环程序的设计

实验时间:2016-3-29,14:00-17:30 实验地点:南一楼804室63号实验台

指导教师:张勇专业班级:计算机科学与技术201409班

学号:U201414813姓名:唐礼威

同组学生:无报告日期:2016年3月30日

原创性声明

本人郑重声明:本报告的内容由本人独立完成,有关观点、方法、数据和文献等的引用已经在文中指出。除文中已经注明引用的内容外,本报告不包含任何其他个人或集体已经公开发表的作品或成果,不存在剽窃、抄袭行为。

特此声明!

学生签名:

日期:

成绩评定

指导教师签字:

日期:

目录

1实验目的与要求 (1)

2实验内容 (1)

3实验过程 (2)

3.1任务1 (2)

3.1.1设计思想及存储单元分配 (2)

3.1.2流程图 (3)

3.1.3源程序 (3)

3.1.4实验步骤 (6)

3.1.5实验记录 (7)

4体会 (8)

参考文献 (9)

1实验目的与要求

1、熟悉分支、循环程序的结构及控制方法,掌握分支、循环程序的调试方法;

2、加深对转移指令及一些常用的汇编指令的理解;

3、加深对常用DOS功能调用指令的理解,进一步熟悉TD的使用。

2实验内容

设计实现一个学生成绩查询的程序。

1、实验背景

在以BUF为首址的字节数据存储区中,存放着n个学生的课程成绩表(百分制),每个学生的相关信息包括:姓名(占10个字节,结束符为数值0),语文成绩(1个字节),数学成绩(1个字节),英语成绩(1个字节),平均成绩(1个字节)。

例如:

N EQU 1000

BUF DB ‘zhangsan’,0,0 ;学生姓名,不足10个字节的部分用0填充

DB 100, 85, 80,? ; 平均成绩还未计算

DB ‘lisi’,6 DUP(0)

DB 80, 100, 70,?

DB N-3 DUP( ‘TempValue’,0,80,90,95,?) ;除了3个已经具体定义了学生信息的

成绩表以外,其他学生的信息暂时假

定为一样的。

DB ‘wangwu’,0,0,0,0

DB 85, 85, 100, ?

2、功能一:提示并输入学生姓名

(1)使用9号DOS系统功能调用,提示用户输入学生姓名。

(2)使用10号DOS系统功能调用,输入学生姓名。输入的姓名字符串放在以in_name为首址的存储区中。

(3)若只是输入了回车,则回到“(1)”处重新提示与输入;若仅仅输入字符q,则程序退出,否则,准备进入下一步处理。

3、功能二:以学生姓名查询有无该学生

(1)使用循环程序结构,在成绩表中查找该学生。

(2)若未找到,就提示用户该学生不存在,并回到“功能一(1)”的位置,提示并重新输入姓名。

(3)若找到,则将该学生课程成绩表的起始偏移地址保存到POIN字变量中。

提示:字符串比较时,当采用输入串的长度作为循环次数时,若因循环次数减为0而终止循环,则还要去判断成绩表中名字串的下一个字符是否是结束符0,若是,才能确定找到了。

4、功能三:计算所有学生的平均成绩

使用算数运算相关指令计算并保存每一个学生的平均成绩。

平均成绩计算公式:(A*2+B+C/2)/3.5,即将语文成绩A乘以权重2、英语成绩C除以权重2后,与数学成绩B一起求和,再计算该生的平均成绩。要求避免溢出。

提示:使用循环程序结构,注意寻址方式的灵活使用。把小数3.5转换成分数后再运算避免使用浮点数指令。

5、功能四:将功能二查到的学生的平均成绩进行等级判断,并显示判断结果。

(1)平均成绩等级显示方式:若平均成绩大于等于90分,显示“A”;大于等于80分,显示“B”;大于等于70分,显示“C”;大于等于60分,显示“D”;小于60分,显示“F”。

提示:使用分支程序结构,采用2号DOS系统功能调用显示结果。

(2)使用转移指令回到“功能一(1)”处(提示并输入姓名)。

3实验过程

3.1任务1

3.1.1设计思想及存储单元分配

设计思想:

本实验主要是要解决3个问题:一是提示并输入学生姓名;二是如何进行字符串的比较从而查询学生;三是如何计算平均分从而分出等级。依据本次实验的要求,此处用分支、循环程序的结构及控制方法来解决。

寄存器分配:

CX:存放学生数量(默认3),计数器作用;

BX:存放目标学生下标值,得到分数缓冲区首地址;

BP:存放缓冲区基地址;

AL:存放平均成绩;

AX,DX,SI:临时寄存器;

3.1.2 流程图

开始

9号调用输出提示信息,10号调用输入查询学生姓名

输入字符串为

空?

Y

9号调用:是否继续,按任意键继续,

按q 退出

N

结束

Y

N CX=0?Y

输出查找失败

N

缓冲区是否为

N

当前字符是否

匹配

N

CX--

Y 缓冲区减一

Y 计算平均成绩并输

出等级

3.1.3 源程序

.386

STACK SEGMENT USE16 STACK DB 200 DUP(0) STACK ENDS

DATA SEGMENT USE16 N EQU 3

BUF DB 'zhangsan',0,0 DB 100,85,80,? DB 'lisi',6 DUP(0) DB 80,100,70,? DB 'wangwu',4 DUP(0) DB 85,85,100,?

MSG DB 'Input the name : $'

CONTINU DB 'Enter any keys to continue(if enter q,exit!):$' FAIL DB 'Not Exist!$' INPUT DB 10 DB ? DB 10 DUP(0) DATA ENDS

CODE SEGMENT USE16

ASSUME CS:CODE, DS:DATA, SS:STACK

START: MOV AX, DATA

MOV DS, AX

JMP BEGIN

FAILED: LEA DX, OFFSET FAIL ; 查找失败

MOV AH, 9H

INT 21H

LOOPA: MOV DL, 0AH ;换行符

MOV AH, 2H

INT 21H

LEA DX, OFFSET CONTINU ;继续

MOV AH, 9H

INT 21H

MOV DL, 0AH ;换行符

MOV AH, 2H

INT 21H

MOV DL, 0DH

MOV AH, 2H

INT 21H

MOV AH, 8H

INT 21H

CMP AL, 71H

JE OVER ;输入 'q', 退出程序BEGIN: MOV CX, N ; 学生个数

LEA DX, OFFSET MSG ;输出提示信息

MOV AH, 9H

INT 21H

MOV DL, 0AH ; 换行符

MOV AH, 2H

INT 21H

LEA DX, OFFSET INPUT ; 读入学生姓名

MOV AH, 0AH

INT 21H

MOV DL, 0AH ; 换行符

MOV AH, 2H

INT 21H

LEA BP, OFFSET INPUT ; 将 INPUT 基址存放至 BP ADD BP,2

CMP DS:BYTE PTR [BP-1],0H ;空字符串

JE LOOPA

INC CX

COMPA: DEC CX

JE FAILED ; 查找失败, 重新输入

MOV BX, N ; 计算目标学生下标值, 存放至 BX

SUB BX, CX

IMUL BX, 14 ; 根据目标学生下标值, 找到分数缓冲区首地址

MOV AX, 10 ; 临时计数器

MOV SI, 0

COMPB: MOV DL, [BX + SI]

MOV DH, BYTE PTR DS:[BP + SI]

CMP DL, 0 ; 如果缓冲区姓名已结束,说明查找成功

JE CAL ; 跳转至平均成绩计算处

CMP DH, DL ; 比较当前缓冲区姓名与输入姓名字符

JNE COMPA ; 当前字符相同,继续循环以比较下一字符

INC SI

DEC AX

JNE COMPB

CAL: MOV BX, N ; 计算目标学生下标值, 存放至 BX

SUB BX, CX

IMUL BX, 14

ADD BX, 10 ; 根据目标学生下标值, 找到分数缓冲区首地址 BX = m * 14 + 10

MOV AX, 0

MOV DX, 0

MOV AL, [BX] ; 计算平均成绩

ADD AX, AX

MOV DL, [BX +1]

ADD AX, DX

MOV DL, [BX +2]

SAR DL, 1

ADD AX, DX ;AL=A*2+B+C/2

SAL AX, 1

MOV DL, 7

IDIV DL ; AL = 2 * AL / 7

MOV [BX + 3], AL; AVG = AL ( AL / 3.5)

CMP AL, 90

JGE LEVELA

CMP AL, 80

JGE LEVELB

CMP AL, 70

JGE LEVELC

CMP AL, 60

JGE LEVELD

JMP LEVELF

LEVELA:MOV DL, 41H ;输出成绩等级

MOV AH, 2H

INT 21H

JMP LOOPA

LEVELB:MOV DL, 42H

MOV AH, 2H

INT 21H

JMP LOOPA

LEVELC:MOV DL, 43H

MOV AH, 2H

INT 21H

JMP LOOPA

LEVELD:MOV DL, 44H

MOV AH, 2H

INT 21H

JMP LOOPA

LEVELF:MOV DL, 46H

MOV AH, 2H

INT 21H

JMP LOOPA

OVER: MOV AH, 4CH

INT 21H

CODE ENDS

END START

3.1.4实验步骤

1. 使用编辑程序EDIT.EXE录入源程序,存盘文件名为shiyan.ASM。

2. 使用MASM6.0汇编源文件。即MASM shiyan;

3. 观察提示信息,若出错,则用编辑程序修改错误,存盘后重新汇编,直至不再报错为止。

4. 使用连接程序LINK.EXE将汇编生成的shiyan.OBJ文件连接成执行文件。

即LINK shiyan;

5. 若连接时报错,则依照错误信息修改源程序。之后重新汇编和连接,直至不再报错并生成shiyan.EXE文件。

6. 执行该程序。即在命令行提示符后输入shiyan后回车,观察执行现象。

7.让9号功能调用显示的信息放在自己希望的位置。

8.在9号功能调用时,尝试带显示字符串的结尾没有“$”结束符。

9.10号功能调用时,输入的字符数超过定义的数量时,它是如何处理的?

3.1.5实验记录

(包括实验条件、输入/输出、错误和修改等信息的记录)

1、实验环境条件:P3 1GHz,256M内存;WINDOWS 2000命令行窗口;EDIT.EXE 2.0;

MASM.EXE 6.0;LINK.EXE 5.2; TD.EXE 5.0。

2、按照流程图编写完程序,编译和连接都没问题,运行时出现

后来发现是9号调用的字符串在之前定义时没有以$结尾,改正后程序运行正确

3、程序运行正确,但格式很差,如下图:

改进方法:在LOOPA里1号调用的换行符后面加上一个回车换行符,即

MOV DL, 0AH ;换行符

MOV AH, 2H

INT 21H

后面加上:

MOV DL, 0DH

MOV AH, 2H

INT 21H

改正后运行如下图:

分析:存放的三个人平均成绩依次为zhangsan:88 等级A;lisi:83 等级B;wangwu:90 等级B,可见与输出结果相符合

4、对于输入字符超过定义的数量时,会出现无法再继续输入的情况如下图:

4体会

这次上机,进一步提高了自己的汇编语言编程能力,通过实验对这门语言有了更深的理解,更加熟悉了调试工具td的使用以及对dos功能调用的理解。这次上机主要是熟悉分支、循环程序的结构和控制方法,掌握了它们的调试方法,对转移指令有了更深的理解,是从比高级语言更底层的角度去理解了其含义,对其它的汇编指令有了初步的认识,尽管有些指令还是需要查表才能写出来,但相信在今后的几次实验中会对更多的指令更加的熟悉和掌握。

参考文献

[1] 王元珍等.80x86汇编语言程序设计.版本(第1版)

[2] 王晓虹等.汇编语言程序设计教程.版本(第1版)

汇编语言实验2

计算机工程系实验报告 课程名称:汇编语言 实验项目名称:用机器指令和汇编语言指令编程 班级:15级计科4班姓名:梁红梅学号:15091413 一、实验目的: 1.学习Debug中D命令的使用方法,掌握查看指定内存单元的内容的指令,其中本实验中 主要掌握“d段地址:偏移地址”的格式; 2.了解Debug 中D命令程序的执行者:CPU,了解D命令的执行过程; 3.掌握CPU在访问内存单元时的主要过程; 4.学习怎样利用在Debug中cs、ds、ss、es这4个段寄存器,简化debug命令格式。 二、实验要求: 使用Debug,将下面的程序段写入内存,逐条执行,根据指令执行后的实际运行情况填空。Mov ax,ffff Mov ds,ax Mov ax,2200 Mov ss,ax Mov sp,0100 Mov ax,[0] ;ax= Add ax,[2] ;ax= Mov bx,[4] ;bx= Add bx,[6] ;bx= Push ax ;sp= 修改的内存单元的地址是内容为 Push bx ;sp= 修改的内存单元的地址是内容为 Pop ax ;sp= ;ax= Pop bx ;sp= ;ax= Push [4] ;sp= 修改的内存单元的地址是内容为 Push [6] ;sp= 修改的内存单元的地址是内容为

三、实验数据记录: 1.进入Debug后使用-a命令将程序写入内存 2.通过使用-t命令将写入内存的程序逐一执行,直到命令执行完毕

三、实验结果及分析: 1.mov ax,[0] 执行完成后 ax=C0EA; 2.add ax,[2]执行完成后ax=C0FC; 3.mov bx,[4] 执行完成后 bx=30F0; 4.add bx,[6]执行完成后 bx=6021; 5.push ax 执行完成后 sp= 00FE 修改的内存单元的地址是 2200:00FE 内容为C0FC 6.push bx 执行完成后 sp= 00FC 修改的内存单元的地址是 2200:00FC 内容为6021

武汉理工大学微机原理接口实验报告

学生学号22实验课成绩 学生实验报告书 实验课程名称微机原理与接口技术 开课学院计算机科学与技术学院 指导教师姓名何业兰 学生姓名高胜洋 学生专业班级计算机1404 2016-- 2017学年第二学期

实验课程名称:微机原理及接口技术 第一部分:实验准备 一、实验目的和意义 1.熟悉接口试验箱的使用环境。 2.体会接口电路通过外部总线与处理器连接原理。 3.掌握可编程芯片8253的编程方法。 二、实验内容和环境 实验内容: 1、编写程序,将 8254 的计数器 0 和计数器 1 都设为方式 3,用信号源 1MHz 作为 CLK0时钟,OUT0 为波形输出 1ms 方波,再通过 CLK1 输入,OUT1 输出 1s 方波。 2、编写程序,将 8254 的计数器 0 设为方式 3,计数值为十进制数 4,用单次脉冲 KK1+作为 CLK0 时钟,OUT0 连接 MIR7,每当 KK1+按动 5 次后产生中断请求,在Wmd86程序运行结果栏上显示字符M 。改变计数值,验证 8254 的计数功能。 实验设备: PC 机一台,TD-PITE 实验装置一套。 三、实验基本原理与方法 (1)8254的功能 ?8253具有三个独立的16位计数器(0#~2#通道); ?每个通道有6种工作方式; ?可以进行二进制或十进制计数,计数方式为减1计数。 (最高计数频率2.6MHZ) (2)8254 的内部结构和外部引脚 图1.1 8254内部结构图1.2 8254外部引脚 (3)8254 的工作方式 ●方式0:计数到0 结束输出正跃变信号方式。 ●方式1:硬件可重触发单稳方式。 ●方式2:频率发生器方式。

汇编语言实验报告

汇编语言实验报告 专业: 班级: 姓名: 学号: 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个字节内容

汇编语言程序设计实验教程第二章实验报告

汇编语言程序设计实验教程第二章 实验报告

实验2.1 用表格形式显示字符 1.题目:用表格形式显示ASCII字符SMASCII 2.实验要求: 按15行*16列的表格形式显示ASCII码为10H-100H的所有字符,即以行为主的顺序及ASCII码递增的次序依次显示对应的字符。每16个字符为一行,每行中的相邻两个字符之间用空白符(ASCII为0)隔开。 3.提示: (1)显示每个字符可使用功能号为02的显示输出功能调用,使用方法如下:mov ah,02h mov dl,输出字符的ASCII码 int 21h (2)显示空白符时,用其ASCII码0置入dl寄存器。每行结束时,用显示回车(ASCII 为0dh)和换行符(ASCII为0ah)来结束本行并开始下一行。 (3)由于逐个显示相继的ASCII字符时,需要保存并不断修改dl寄存器的内容,而显示空白、回车、换行符时也需要使用dl寄存器,为此可使用堆栈来保存相继的ASCII字符。具体做法是:在显示空白或回车、换行符前用指令 push dx 把dl的内容保存到堆栈中去。在显示空白或回车、换行符后用指令 pop dx 恢复dl寄存器的原始内容。 4.程序清单: code segment assume cs:code start: mov dx,0010h next: mov cx,10h loop1: mov ah,02h int 21h inc dx push dx

int 21h pop dx loop loop1 push dx mov dl,0ah int 21h mov dl,0dh int 21h pop dx cmp dx,100h jb next mov ah,4ch int 21h code ends end start 5.运行结果如下: 6.实验总结: 通过本次实验我深刻的知道用汇编语言编译程序的方法,掌握了如何合理的利用各个寄存器进行程序的控制操作,初步了解到循环程序的控制方法,以及dos中断调用的基本要领对学习汇编语言有了非常好的帮助作用! 汇编语言实验二查找匹配字符串 一、目的 查找匹配字符串SEARCH

汇编实验报告2-1

《汇编语言程序设计》第二次上机2-1实验报告 院系:计算机科学与技术 专业:信息安全 班级:0903班 姓名: 学号: 时间:2011-6-6 地点:南一楼808

一、实验目的 (3) 二、题目与实验要求 (3) 三、寄存器分配和变量定义说明: (3) 四、流程图 (5) 五、源程序及注释 (7) 六、实验步骤 (13) 七、实验记录 (13) 八、体会 (16)

一、实验目的 1、加深对一些常用的汇编指令的理解; 2、加深对常用DOS功能调用指令的理解; 3、进一步熟悉TD的使用。 二、题目与实验要求 1、《80X86汇编语言程序设计》教材中 P95的 3.7 题。 要求:(1)将该题改成一完整的程序(可以省略实验报告中的程序框图)。 (2)请事先指出依次执行每条程序指令后(AX)的内容。 (3)请事先指出执行ADD、SUB、SAL、RCL指令后,CF、ZF的值。 (4)记录上机执行后与(2)、(3) 中对应的内容。 2、《80X86汇编语言程序设计》教材中 P94的 3.3 题。 要求:(1)将该题改成一完整的程序,其中数据段的定义为习题3.1中的数据段(可以省略实验报告中的程序框图)。 (2)请事先画出数据段中数据的存储形式。 (3)请事先指出依次执行每条程序指令后相应寄存器中的内容。 (4)请事先给出各调指令在汇编后的形式。 (5)比较上机执行后,看到的各项内容是否与(2)、(3) ,(4)内容一致。 不一致的应分析错误原因。 3、《80X86汇编语言程序设计》教材中 P96的 3.11 题。 要求:(1)请事先指出程序运行结束后,显示器显示的内容。 (2)若将NUM的定义改成如下形式: NUM DB 35 显示的结果是什么? (3)若将NUM的定义改成如下形式: NUM DB 59 显示的结果是什么? (4)指出程序运行后看到的结果,若不一致,分析产生错误的原因。 4. 从键盘输入两串字符分别存入BUF1和BUF2区,比较两串内容是否相等,相等显示“MATCH !”, 不相等显示“NO MATCH !”。 要求:(1) 使用10号功能调用输入字符串; (2) 使用9号功能调用输出提示信息; 提示:先比较长度是否相等。 5 选做题 输入一个无符号的数字串,然后以16进制形式显示出串的值。 例如: INPUT A NUMBER : 59 RESULT : 3BH 其中下划线上的内容(59)为程序运行时输入的串。 三、寄存器分配和变量定义说明:

武汉理工大学-操作系统实验报告

学 生 实 验 报 告 书 实验课程名称 操 作 系 统 开 课 学 院 计算机科学与技术学院 指导老师姓名 学 生 姓 名 学生专业班级 软件工程 2014 — 2015 学年 第 一 学期 学生学号 实验课成绩

实验课程名称:操作系统 实验项目名称Linux键盘命令和vi实验成绩 实验者专业班级组别 同组者实验日期年月日第一部分:实验分析与设计(可加页) 一、实验内容描述(问题域描述) 掌握Linux系统键盘命令的使用方法。 二、实验设计(包括实验方案设计,实验手段的确定,实验步骤,实验过程等) Vi编辑器是所有计算机系统中最常用的一种工具。UNIX下的编辑器有ex,sed和vi等,其中,使用最为广泛的是vi。 1.进入vi 在系统提示符号输入vi及文件名称后,就进入vi全屏幕编辑画面: 例如:$ vi myfile 有一点要注意,在进入vi之后,是处于“命令行模式”,要切换到“插入模式”才能够输入文字。 2. 切换至插入模式编辑文件 在“命令行模式”下按一下字母“i”就可以进入“插入模式”,这时候就可以开始输入文字了。 3. Insert 的切换 处于“插入模式”,就只能一直输入文字,按一下“ESC”键转到”命令行模式”能够删除文字。 4. 退出vi及保存文件 在“命令行模式”下,按一下“:”冒号键进入“Last line mode”,例如: : w myfilename : wq (输入”wq”,存盘并退出vi) : q! (输入q!,不存盘强制退出vi) 三、主要实验工具、仪器设备及耗材 安装Linux系统的计算机一台。

第二部分:实验结果分析(可加页) 一、调试过程(包括调试方法描述、实验数据记录,实验现象记录,实验过程发现的问题等) 在整个过程中,最困难的就是记忆整个Vi命令。在查阅资料的情况下,这个问题得到了解决。 二、实验结果描述 1.进入vi 在系统提示符号输入vi及文件名称后,就进入vi全屏幕编辑画面 图1 vi主界面 2.切换至插入模式编辑文件 在“命令行模式”下按一下字母”i”就可以进入”插入模式”。 3.退出vi及保存文件 在”命令行模式”下,按一下”:”冒号键进入”Last line mode”;输入w filename 将文章以指定的文件名filename保存;输入wq存盘并退出vi。 三、实验小结、建议及体会 这次实验让对Linux操作系统有了初步的了解,我掌握了一些Linux系统常用的命令。

汇编语言综合实验报告

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.360docs.net/doc/4f13855068.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

汇编实验报告(详细版)

计算机组成与汇编语言(实验报告) 内容: 实验一、六、七、八 院系专业:计算机学院计算机科学与技术 姓名: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++)

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

实验报告 实验课程: 学生姓名: 学号: 专业班级:电气信息类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.360docs.net/doc/4f13855068.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

汇编语言综合实验报告

综合性设计性实验报告 班级:计算机科学与技术专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子程序继续循环执行。 流程图如下:

汇编语言(第2版)王爽著 课后实验报告详解

汇编语言实验报告 : 班级学号 学生姓名 提交日期 成 绩

实验1-1如下: 用E命令将指令写入内存:

用A命令将指令写入内存: 实验1-2代码如下: 用a命令在2000:0000处写如要写如的代码,然后用R命令来修改CS为2000,IP修改为0,然后用T命令执行,直到AX中的值为10,因为是默认为十六进制,所以ax中的0010实际代表十进制的16。如图:

实验1-3: 用D 命令输入内存fff0h~fffffh,则可看到:

生产日期为06/15/09在地址为FFFF5~FFFF12处,现在用E命令随便修改一下有: 在window7下虚拟的dos中可以改,但如果重新打开dos中的debug 则日期任然不会改变,因为那是ROM。 实验1-4代码如下:

内存地址为B800:0开始的为显存,是RAM,可以改变其值来在屏幕中显示,其中这一个字符占两个字节,前一个(低)为字符的ASCII 码,后一个(高)为要显示的颜色,内存B800:0和B800:1这两个字节对应着屏幕中的第一个字符的位置,依次类推,每个屏幕的行有80个字符,对应的内存占160个字节 实验2-1:(按实验结果填空) Mov ax,ffff Mov ds,ax Mov ax,2200 Mov ss,ax Mov sp,0100 Mov ax,[0] ;ax=5BEA Add ax,[2] ;ax=5CCA Mov bx,[4] ;bx=30F0 Add bx,[6] ;bx=6026 Push ax ;sp=00FE; 修改的内存单元的地址是2200:00FE 内容是5CCA Push bx ;sp=00FC; 修改的内存单元的地址是2200:00FC内容是6026 Pop ax ;sp=00FE; ax=6026. Pop bx ;sp=0100; bx=.5CCA Push [4] ;sp=00FE; 修改的内存单元的地址是2200:00FE内容是30F0 Push [6] ;sp=00FC; 修改的内存单元的地址是2200:00FC内容是2F36 实验截图如下:

武汉理工操作系统实验报告(DOC)

学生学号0121110680125 实验课成绩 武汉理工大学 学生实验报告书 实验课程名称操作系统 开课学院计算机科学与技术学院 指导老师姓名刘军 学生姓名李帅 学生专业班级软件1101 2013 — 2014 学年第一学期

实验课程名称:操作系统 实验项目名称Linux键盘命令和vi实验成绩 实验者李帅专业班级软件工1101 组别 同组者实验日期 第一部分:实验分析与设计(可加页) 一、实验内容描述(问题域描述) Linux键盘命令和vi 1.要求:掌握Linux系统键盘命令的使用方法 1. 使用mkdir命令建立一个子目录subdir 2. 使用cat或more命令查看file1文件的内容。 3. 将date命令的用法附加到文件file1的后面: 4. 利用ls -l file1命令列出文件file1的较详细的信息。 5. 利用rm fa命令将文件fa删除。再利用ls -l命令查看工作目录内容。 6. 运行mv file1 file_a命令,然后用ls命令查看这两个文件是否都还在工作目录中 2.vi操作 1.了解vi编辑器的作用和功能 2.熟悉vi的操作环境和切换方法 3.掌握vi操作的方式(几个常用键) 4.了解常用的快捷键 二、实验基本原理与设计(包括实验方案设计,实验手段的确定,试验步骤等,用硬件逻辑或 者算法描述) VI编辑器的常见命令: vi filename :打开或新建文件,并将光标置于第一行首 vi +n filename :打开文件,并将光标置于第n行首 vi + filename :打开文件,并将光标置于最后一行首 vi +/pattern filename:打开文件,并将光标置于第一个与pattern匹配的串处 vi -r filename :在上次正用vi编辑时发生系统崩溃,恢复filename vi filename....filename :打开多个文件,依次进行编辑 键盘命令: 1. cat,more,less命令 2. Is命令 3. cp命令 4. rm命令 5. mv命令 VI命令: 1.vi进入vi缓冲区 2.vi file1:进入文件file1 3.退出vi

计算机汇编上机实验报告

实验报告 1 二、实验题目:顺序程序设计 三、实验类型:必做 四、实验目的: 1.了解汇编语言的程序结构。 2.理解汇编语言中由源程序文件到可执行文件的过程。 五、实验内容和步骤: 1、实验内容: 编程实现:当X=5时,求Y=3X4+5X3+6X2+4X+2. 2、实验步骤: (1)首先对a1.asm进行汇编连接生成a1.exe文件。 (2)进行DEBUG程序并装入要调试的程序a1.exe。 如:DEBUG a1.exe;进入DEBUG并装配a1.exe (3)反汇编,确定每条指令的地址。 -U ;从当前地址进行反汇编 -U200;从CS:200处开始反汇编 反汇编可以确定断点地址,如:把断点地址设置在0120H处,则可以打入以下命令 (4)G命令来设置断点。 -G120 此时程序在0120H处停下,并显示出所有寄存器以及各标志位的当前值,在最后一行还给出下一条将要执行的指令的地址、机器语言和汇编语言,程序员可以从显示的内容来以解程序运行是否正确。 (5)观察数据段的内容,即观察内存的内容 -D DS:0000;从数据段的0单元开始显示128个字节。 -D DS:00000001;从数据段的0单元、1单元显示2个字节。 (6)退出DEBUG命令 -Q 六、实验结果: 145A:001E 83C002 ADD AX,+02 -u 145A:0021 A30100 MOV [0001],AX 145A:0024 B44C MOV AH,4C 145A:0026 CD21 INT 21 145A:0028 7509 JNZ 0033 145A:002A E83F26 CALL 266C 145A:002D 8946E8 MOV [BP-18],AX 145A:0030 E80D97 CALL 9740 145A:0033 F6065C3601 TEST BYTE PTR [365C],01 145A:0038 7405 JZ 003F

武汉理工大学计算机网络实验报告

学生学号0121210680117 实验课成绩 武汉理工大学 学生实验报告书 实验课程名称《计算机网络》 开课学院计算机科学与技术学院 指导老师姓名周兰采 学生姓名柏扬 学生专业班级软件1201 2013 —2014 学年第二学期

实验课程名称:计算机网络 实验项目名称获取网卡的MAC地址实验成绩 实验者专业班级组别 同组者实验日期 第一部分:实验分析与设计(可加页) 一、实验内容描述(问题域描述) 实验内容:编程获取以太网适配器的MAC地址。 二、实验基本原理与设计(包括实验方案设计,实验手段的确定,试验步骤等,用硬件逻辑或 者算法描述) 实验原理: 在系统的cmd命令提示符中,我们输入ipconfig/all就可以看到本机上所有的适配器的具体内容如媒体状态、连接特定的DNS后缀、描述、物理地址、DHCP 已启用、自动配置已启用信息。本实验是运用匹配的思想,先通过,在寻找匹配字符串物理地址,找到了就将:后面位置的内容赋值给mac,作为MAC地址,然后再主函数中输出即可。

实验代码如下: package socket; import java.io.BufferedReader; import java.io.IOException; import java.io.InputStreamReader; public class SystemTool { /** *@return mac地址 */ public static String getWindowsMACAddress() { String mac = null; BufferedReader bufferedReader = null; Process process = null; try { process = Runtime.getRuntime().exec("ipconfig /all");// windows 下的命令,显示信息中包含有mac地址信息 bufferedReader = new BufferedReader(new InputStreamReader(process.getInputStream())); String line = null;

汇编实验报告

汇编语言程序设计 实验报告 学号: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调试可执行文件,观察执行结果,以验证其正确性。

汇编语言实验报告

汇编语言程序设计实验报告 学院:计算机科学与技术 专业:计算机科学与技术 指导教师: ** 班级: ** 学号: ** 姓名:**

实验一集成环境及调试工具 一、实验题目 认识Tddebug集成操作软件 二、分析设计思想,绘制实验原理图、流程图 (一)、汇编语言程序的开发过程如图1.1所示,这个过程主要有编辑、编译、链接几个步骤构成。 图1.1 汇编语言程序开发过程 1、源程序的编辑 E: > EDIT TEST.ASM 编辑过程就是将源程序输入内存,生成一个扩展名为ASM的文本文件并存入硬盘。2、源程序的编译 E:>TASM TEST.ASM 编译也称为汇编,就是利用汇编器(如TASM或MASM)对源程序进行编译,生成扩展名为OBJ的目标文件。在编译过程中,检查语法错误,若有错,则不生成目标代码文件,并给出错误信息。根据错误信息应返回到编辑状态,修改源程序。 3、目标程序的链接 E:> TLINK TEST.OBJ 链接过程是利用链接程序(如TLINK或LINK)将用户目标程序和库文件链接、定位,生成扩展名为EXE的可执行文件。链接时,如果链接文件找不到所需要的链接信息,则发出错误信息,不生成可执行文件。 4、调试可执行程序 E:>TD TEST.EXE 如果生成的EXE文件运行后,并没有按照设计意图运行,就需要对程序进行调试,找出错误。再对源程序进行修改,即重复进行编辑、编译、链接、调试,直到生成完全正确的可执行文件为止。 (二)、Tddebug集成操作软件使用说明 1.该软件是集编辑(Edit.exe)、编译(Tasm.exe)、连接(Link.exe)和调试(TD.exe)

武汉理工大学算法分析实验报告

学生实验报告书 实验课程名称算法设计与分析开课学院计算机科学与技术学院 指导教师姓名李晓红 学生姓名 学生专业班级软件工程zy1302班2015-- 2016学年第一学期

实验课程名称:算法设计与分析 同组者实验日期2015年10月20日第一部分:实验分析与设计 一.实验内容描述(问题域描述) 1、利用分治法,写一个快速排序的递归算法,并利用任何一种语言,在计算机上实现,同时 进行时间复杂性分析; 2、要求用递归的方法实现。 二.实验基本原理与设计(包括实验方案设计,实验手段的确定,试验步骤等,用硬件逻辑或者算法描述) 本次的解法使用的是“三向切分的快速排序”,它是快速排序的一种优化版本。不仅利用了分治法和递归实现,而且对于存在大量重复元素的数组,它的效率比快速排序基本版高得多。 它从左到右遍历数组一次,维护一个指针lt使得a[lo..lt-1]中的元素都小于v,一个指针gt 使得a[gt+1..hi]中的元素都大于v,一个指针i使得a[lt..i-1]中的元素都等于v,a[i..gt]中的元素都还未确定,如下图所示: public class Quick3way { public static void sort(Comparable[] a, int lo, int hi) { if (lo >= hi) return; int lt = lo, i = lo + 1, gt = hi; Comparable pivot = a[lo];

第二部分:实验调试与结果分析 一、调试过程(包括调试方法描述、实验数据记录,实验现象记录,实验过程发现的问题等) 1、调试方法描述: 对程序入口进行断点,随着程序的运行,一步一步的调试,得到运行轨迹; 2、实验数据: "R", "B", "W", "W", "R", "W", "B", "R", "R", "W", "B", "R"; 3、实验现象: 4、实验过程中发现的问题: (1)边界问题: 在设计快速排序的代码时要非常小心,因为其中包含非常关键的边界问题,例如: 什么时候跳出while循环,递归什么时候结束,是对指针的左半部分还是右半部分 排序等等; (2)程序的调试跳转: 在调试过程中要时刻记住程序是对那一部分进行排序,当完成了这部分的排序后, 会跳到哪里又去对另外的那一部分进行排序,这些都是要了然于心的,这样才能准 确的定位程序。 二、实验结果分析(包括结果描述、实验现象分析、影响因素讨论、综合分析和结论等) 1、实验结果:

华中科技大学汇编实验报告2

课程实验报告 课程名称:汇编语言程序设计实验 实验名称:实验二分支程序、循环程序的设计 实验时间: 2016-3-29,14:00-17:30 实验地点:南一楼804室63号实验台 指导教师:勇专业班级:计算机科学与技术201409班 学号: U201414813 姓名:唐礼威 同组学生:无报告日期: 2016年 3 月 30日原创性声明 本人重声明:本报告的容由本人独立完成,有关观点、方法、数据和文献等的引用已经在文中指出。除文中已经注明引用的容外,本报告不包含任何其他个人或集体已经公开发表的作品或成果,不存在剽窃、抄袭行为。 特此声明! 学生签名: 日期: 成绩评定 实验完成质量得分(70分)(实验步骤清晰详细深入,实验记录真实完整等)报告撰写质量得分(30分) (报告规、完整、通顺、详 实等) 总成绩(100分)指导教师签字: 日期:

目录 1实验目的与要求 (2) 2实验容 (2) 3实验过程 (3) 3.1任务1 (3) 3.1.1设计思想及存储单元分配 (3) 3.1.2流程图 (4) 3.1.3源程序 (4) 3.1.4实验步骤 (7) 3.1.5实验记录 (8) 4体会 (9) 参考文献 (10)

1实验目的与要求 1、熟悉分支、循环程序的结构及控制方法,掌握分支、循环程序的调试方法; 2、加深对转移指令及一些常用的汇编指令的理解; 3、加深对常用DOS功能调用指令的理解,进一步熟悉TD的使用。 2实验容 设计实现一个学生成绩查询的程序。 1、实验背景 在以BUF为首址的字节数据存储区中,存放着n个学生的课程成绩表(百分制),每个学生的相关信息包括:(占10个字节,结束符为数值0),语文成绩(1个字节),数学成绩(1个字节),英语成绩(1个字节),平均成绩(1个字节)。 例如: N EQU 1000 BUF DB ‘zhangsan’,0,0 ;学生,不足10个字节的部分用0填充 DB 100, 85, 80,? ; 平均成绩还未计算 DB ‘lisi’,6 DUP(0) DB 80, 100, 70,? DB N-3 DUP( ‘TempValue’,0,80,90,95,?) ;除了3个已经具体定义了学生信息的 成绩表以外,其他学生的信息暂时假 定为一样的。 DB ‘wangwu’,0,0,0,0 DB 85, 85, 100, ? 2、功能一:提示并输入学生 (1)使用9号DOS系统功能调用,提示用户输入学生。 (2)使用10号DOS系统功能调用,输入学生。输入的字符串放在以in_name为首址的存储区中。 (3)若只是输入了回车,则回到“(1)”处重新提示与输入;若仅仅输入字符q,则程序退出,否则,准备进入下一步处理。 3、功能二:以学生查询有无该学生 (1)使用循环程序结构,在成绩表中查找该学生。

汇编语言实验报告..

汇编语言课程设计 学院: 专业: 姓名: 学号:

汇编语言是计算机专业的一门重要的专业基础课,主要介绍汇编语言程序设计的基本原理和方法。汇编语言是一门理论性和实践性较强的课程,辅助课堂教学的实验有助于帮助学生理解汇编语言的基本原理,锻炼学生的动手能力,提高学生的综合应用知识的能力。 目录 1 利用DEBUG调试汇编语言程序段……………………………………… 2 初级程序的编写与调试实验(一) ................................................................................. 3 初级程序的编写与调试实验(二)………………………………………... 4 汇编语言程序上机过程 .......................................................................................................... 5分支程序实验…………………………………………………………… 6 循环程序实验……………………………………………………………..

1 利用DEBUG调试汇编语言程序段 一.课程目的 1.熟悉DEBUG有关命令的使用方法; 2.利用DEBUG掌握有关指令的功能; 3.利用DEBUG运行简单的程序段。 二.课程内容 1.进入和退出DEBUG程序; 2.学会DEBUG中的 1)D命令(显示内存数据D 段地址:偏移地址) 例1:-D100 2)E命令(修改指定内存) 例1:-E100 41 42 43 44 48 47 46 45 -D 100,L08 结果:08F1:0100 41 42 43 44 48 47 46 45 例2:-E 100: 08F1:0100 76 42 :42是操作员键入 此命令是将原100号内存内容76修改为42,用D命令可察看。 3)R命令(显示当前寄存器的内容) 4)T命令(设置陷井,单步执行) 5)A命令(将指令直接汇编成机器码输入到内存中。) 6)G命令等的使用(执行A命中输入的汇编指令) 3.用DEBUG,验证乘法、除法、加法、减法、带进位加、带借位减、堆栈操作指令、串操作指令的功能。 三.课程要求 1.仔细阅读有关DEBUG命令的内容,对有关命令,要求事先准备好使用的例子;四.环境 PC微机 DOS操作系统或Windows 操作系统 MASM.EXE,LINK.EXE,https://www.360docs.net/doc/4f13855068.html,或宏汇编集成环境 五.方法步骤 1.在DOS提示符下,进入DEBUG程序; 2.在DOS目录下启动DEBUG; 3.详细记录每一步所用的命令,以及查看结果的方法和具体结果。 R, D, E 命令:

武汉理工大学嵌入式应用开发Android实验报告

学生学号实验课成绩 武汉理工大学 学生实验报告书 实验课程名称《嵌入式应用软件开发》 开课学院计算机科学与技术学院 指导老师姓名 学生姓名 学生专业班级 2014 —2015 学年第二学期

实验课程名称:嵌入式应用开发 实验项目名称ADT的安装与配置实验成绩 实验者专业班级组别 同组者实验日期年月日第一部分:实验分析与设计(可加页) 一、实验内容描述(问题域描述) 实验目的: 1.了解Android应用编程所需要的工具。 2.掌握Android应用环境的安装与配置。 3.掌握Android模拟器的建立与运行。 二、实验基本原理与设计(包括实验方案设计,实验手段的确定,试验步骤等,用硬件逻辑或 者算法描述) 实验原理: Android应用是基于Java语言开发的,主要采用Eclipse IDE进行程序的开发。Google 提供了完整的基于Android的开发应用环境。主要涉及的软件包括: 1.JDK版本要在1.5以上。 2.Eclipse-SDK 3.Android-SDK 4.ADT插件 下载相应组件并且安装完成以后,可以配置相应的模拟器。 实验步骤: 1.安装ADT,Eclipse等相关软件。 2.配置软件,包括环境变量,Eclipse下相关配置。 3.运行模拟器配置工具,构建一个模拟器。 三、主要仪器设备及耗材 1.普通PC一台。 2.Windows7操作系统。 3.Eclipse软件及其他需要的开发工具

第二部分:实验调试与结果分析(可加页) 一、调试过程(包括调试方法描述、实验数据记录,实验现象记录,实验过程发现的问题等) 实验中出现的错误包括: 1.环境变量配置错误。 2.ADT和SDK版本不一致。 3.Eclipse和ADT版本不一致等问题。 可以查看相应文档,查看环境变量该如何配置。Eclipse和ADT版本的对应等。 二、实验结果及分析(包括结果描述、实验现象分析、影响因素讨论、综合分析和结论等) 这里给出实验过程中的一些截图: Figure1 Android Virtual Device Manager Figure2 SDK Manager 三、实验小结、建议及体会 这次实验让我学习了如何配置Android开发环境,如何使用Android Device Manager来创建模拟器。同时,让我对Android有了一个简单的认识。

相关文档
最新文档