搜档网
当前位置:搜档网 › 《汇编语言上机环境及基本步骤》实验报告

《汇编语言上机环境及基本步骤》实验报告

汇编语言上机环境及基本步骤

一、实验目的:

1.掌握编写汇编源程序的基本格式。

2.熟悉汇编语言上机环境。

3.掌握汇编源程序的编辑和修改,熟悉EDIT或记事本的使用方法。

4.掌握汇编源程序编译、连接成可执行文件的过程,熟悉MASM,LINK的使用方法。

二、实验内容:

在屏幕上显示并打印字符串“This is a sample program.”

三、实验仪器

微机一台

四、实验步骤:

1.在某盘如E盘,以自己的名字的汉语拼音建立一个工作目录(文件夹,名称不要太

长,不超过8个字符比如zhangsan),将文件MASM.EXE,LINK.EXE等复制到该目录

下,编辑的源文件也保存到该目录下。

从WINDOWS进入DOS环境:C:\>

2.用EDIT编辑SW1.ASM源文件。

(1). 从当前目录进入自己的目录下,

C:\>E: 回车

E:\> CD zhangsan ↙回车

键入EDIT并回车:

E:\ zhangsan>EDIT

根据菜单提示进行各种操作。

(2)进入EDIT编辑------EDIT是一种全屏幕编辑软件,可输入、编辑、修改、保存、另存源程序非常方便。

说明:也可在WIDNDOWS环境下用记事本编辑源文件,在保存时,保存类型应选择所有文件,不能选择文本文件(*.txt),否则在编译时会找不到源文件的。

(3).编辑新文件:

a、在EDIT编辑器中输入汇编源程序。

b、检查输入有无错误。

c、打开文件菜单FILE→选择另存为SA VE AS┅→输入文件名为:SW1.ASM→保

存。

注意:保存到你自己的文件夹中

d、若需要修改此文件,用FILE菜单→选择打开OPEN→输入文件名SW1.ASM,即

可修改。修改后注意重新再存盘。

(4).编辑汇编源程序

a、在EDIT(或记事本)中输入源程序。

b、检查。

c、存盘。可保存为SW1.ASM

3.用汇编程序MASM将SW1.ASM文件汇编,生成SW1.OBJ目标文件。

(1).一般简单程序只需生成.OBJ文件,可键入简化命令:

E:\zhangsan>MASM SW1;↙

若有错误,则显示错误行号及错误性质,如:

SW1.ASM(5):error A2006:undefined symbor:xxxx

(2).若有错重新进入EDIT进行修改。修改后并再存盘,退出编辑,回到DOS,再汇编。E:\ zhangsan >MASM SW1;↙

(3).没有任何错误时,显示:

Assembling:SW1.asm

表示汇编成功,生成SW1.OBJ文件。

(4).用DIR命令查看应有SW1.OBJ:

E:\ zhangsan >DIR SW1.*

4.用连接程序LINK将SW1.OBJ文件连接,生成SW1.EXE可执行文件。

(1).一般仅生成SW1.EXE文件, 可键入简化命令:

E:\ zhangsan >LINK SW1;↙

若有错误,则显示错误信息,则应返回编辑、修改、存盘,再汇编、连接直到连接成功,生成SW1.EXE可执行文件。

(2).用DIR命令查看应有SW1.EXE:

E:\ zhangsan >DIR SW1.*↙

5.运行SW1.EXE文件

E:\ zhangsan>SW1 ↙

执行SW1.EXE文件,屏幕应显示:“This is a sample program.”。由连接程序生成的.EXE,在DOS下,直接键入文件名(不要扩展名.EXE)就可以把文件装入内存,并立即执行。但有的程序没有直接显示结果;对于较复杂程序难免会出现错误,直接观察很难找到错误所在,这样就要借用调试程序进行调试。

实验现象记录:记录调试过程中出现的问题及修改措施,并记录程序执行结果。

五、实验源程序

DA TA SEGMENT

DA1DB 'This is a simple program.'

DB 0DH,0AH,' $'

DA TA ENDS

STACK SEGMENT

ST1 DB 100 DUP(?)

STACK ENDS

CODE SEGMENT

ASSUME CS:CODE,DS:DA TA,SS:STACK

START:MOV AX, STACK

MOV SS, AX

MOV AX, DATA

MOV DS, AX

MOV AH, 9

MOV DX, OFFSET DA1

INT 21H

MOV AH,4CH

INT 21H

CODE ENDS

END START

汇编语言实验7实验报告

汇编语言实验7实验报告 一、实验目的 本次实验旨在通过汇编语言编写程序,实现对字符串的操作和输出。 二、实验内容 1. 编写一个汇编程序,要求从键盘输入一个字符串,并将其逆序输出到屏幕上; 2. 编写一个汇编程序,要求从键盘输入两个字符串,并将它们拼接起来后输出到屏幕上。 三、实验过程 1. 字符串逆序输出程序 首先,需要从键盘输入一个字符串。为了方便起见,我们可以先规定字符串的最大长度为100。接着,我们需要定义两个变量: ``` buffer db 100 ; 用于存储输入的字符串

length dw ? ; 存储输入的字符串长度 ``` 其中,db代表定义字节型变量,dw代表定义双字节型变量。 然后,我们需要使用INT 21H中断来读取用户输入的字符串。具体而言,我们可以使用下面这段代码: ``` mov ah, 0Ah ; 设置INT 21H功能号为0Ah mov dx, offset buffer ; 将buffer的地址传给DX寄存器 int 21h ; 调用INT 21H中断 ``` 该代码会将用户输入的字符串存储在buffer中,并且将其长度存储在length变量中。 接着,我们需要将该字符串逆序输出到屏幕上。为了实现这个功能,我们可以使用栈来存储字符串中的每个字符,并逐个弹出来输出。具体而言,我们可以使用下面这段代码: ``` mov si, offset buffer + 1 ; 将si寄存器指向字符串的第一个字符

mov cx, length ; 将cx寄存器设置为字符串长度 dec cx ; 字符串长度需要减1 reverse: push byte ptr [si] ; 将当前字符压入栈中 inc si ; 指向下一个字符 loop reverse ; 循环直到所有字符都被压入栈中 mov ah, 02h ; 设置INT 21H功能号为02h,表示输出一个字符print: pop dx ; 弹出栈顶元素 int 21h ; 输出该字符 loop print ; 循环直到所有字符都被弹出并输出完毕 ``` 2. 字符串拼接程序 首先,需要从键盘输入两个字符串。为了方便起见,我们可以先规定每个字符串的最大长度为50。接着,我们需要定义三个变量: ``` buffer1 db 50 ; 存储第一个输入的字符串 buffer2 db 50 ; 存储第二个输入的字符串

《汇编语言》实验报告

《汇编语言》实验报告 实验名称:汇编语言实验报告 实验目的:通过实验了解汇编语言的基本概念、语法结构和程序设计方法,掌握汇编语言的编写方法。 实验时间:2024年1月1日 实验地点:实验室 一、实验背景 汇编语言是计算机硬件和软件之间的桥梁,通过汇编语言可以直接操作计算机的底层硬件。汇编语言是一种低级语言,使用汇编语言可以实现对计算机内存、寄存器等硬件资源的直接操作,从而实现程序的功能。本实验通过编写汇编语言程序,加深对汇编语言的理解。 二、实验过程 1. 确定实验环境:使用DOSBox模拟DOS环境进行汇编程序编写和调试。 2. 编写第一个汇编程序:编写一个简单的汇编程序,将字符串“Hello, World!”输出到屏幕上。 3.程序分析: a.定义要输出的字符串,将字符串存储在数据段中。 b.设置段寄存器,将数据段地址加载到DS寄存器中。 c.设置显示模式和光标位置。

d.将字符串逐个字符输出到屏幕上。 e.关闭显示模式。 4. 编译运行:使用汇编语言的编译器将汇编程序转换成机器码,并在DOSBox中运行程序。 5.调试程序:根据程序运行结果和分析,调试程序中存在的错误,并进行改正。 三、实验结果与分析 经过多次编写和调试,我们成功实现了将字符串“Hello, World!”输出到屏幕上的功能。通过程序分析和调试过程,加深了对汇编语言的理解和掌握。 四、实验总结 通过本次实验,我们深入了解了汇编语言的基本概念、语法结构和程序设计方法。通过实际编写汇编语言程序,对汇编语言的编写方法有了更加深入的认识。同时,通过调试程序的过程,我们也提高了自身的问题解决能力和分析能力。在今后的学习和工作中,我们将继续学习和深入研究汇编语言,提高自己的编程能力和创新思维能力。 总体而言,本次实验给我们带来了很大的收获,我们以后将更加努力地学习汇编语言,提高自己的编程水平,为以后的学习和工作做好充分的准备。

汇编语言语法实验实验一报告

汇编语言语法实验实验一报告 一、实验目的 通过实验一的学习和实践,掌握汇编语言的基本语法和编写方法,了解汇编语言的特点和应用场景,培养编程思维和动手能力。 二、实验内容 本实验主要包括以下内容: 1.汇编语言的基本语法和常用指令的学习:如数据定义、变量定义和常量定义等。 2.汇编语言程序的编写:通过编写简单的汇编语言程序,实践掌握汇编语言的语法和用法。 三、实验过程 1.熟悉汇编语言的基本语法和常用指令。 在开始实验之前,我详细研读了《汇编语言入门教程》等教材,了解了汇编语言的基本语法和常用指令。我学习了数据定义、变量定义和常量定义等语法规则,并熟悉了汇编语言的寻址方式和数据传输、算术运算、逻辑运算等常用指令的编写方法。 2.编写汇编语言程序。 为了深入理解和掌握汇编语言的编写方法,我编写了一个简单的求和程序。 代码如下:

```assembly .data a dw 5 ; 定义一个字类型变量a b dw 10 ; 定义一个字类型变量b sum dw ? ; 定义一个字类型变量sum,用于存放求和结果 .code mov ax, a ; 将变量a的值存入寄存器ax add ax, b ; 将变量b的值加到寄存器ax中 mov sum, ax ; 将寄存器ax的值存入变量sum中 mov ax, 4c00h ; 退出程序指令 int 21h ``` 该程序实现了两个变量的求和,并将结果存入变量sum中。程序运行 的过程中,先将变量a的值存入寄存器ax中,然后将变量b的值加到寄 存器ax中,最后将寄存器ax的值存入变量sum中。最后,使用退出程序 指令退出程序。 四、实验结果 我成功地编写了求和程序,并进行了编译和运行。在程序运行结束后,可以得到正确的求和结果。这说明我在实验过程中准确理解了汇编语言的 语法规则和编写方法。

汇编语言实验报告4

程及屏幕字符显示程序 一、实验目的 1、熟练掌握汇编语言的程序格式,程序设计方法;学会使用masm6.11对源程序进行编译、链接、 调试和运行 2、利用DOS功能调用INT21H的2号和9号功能进行屏幕显示的方法。 3、利用^Break退出程序的方法及局限性。 4、汇编程序的编写 二、实验任务 1学习汇编语言程序的上机过程 2. 利用INT 21的09H号功能调用显示字符串。验证以下程序 1)用A命令在100H处键入下列程序: MOV AH, 9 MOV DX,110 INT 21 INT 20 2)用A命令在110H处键入下列字符串的ASCII码: DB 'This is a sample!$' 3)用N命令和W命令将此程序(包括数据区)存入文件名为https://www.sodocs.net/doc/dc19211158.html,的磁盘文件中。(存入前BX:CX必须置为文件长度值)。

4)用Q命令退出DEBUG。 5)在DOS命令下打AA,运行此程序,即在屏幕上显示'This is a sample!'字符串,若不出现,用DEBUG 检查程序有无错误。

(给出结果截图) 3、利用INT 21H 2号功能显示字符: 1)用A命令在100H处键入下列程序: XOR DL,DL MOV CX,100 LOP: MOV AH,2 INT 21 INC DL PUSH CX MOV CX,8 DELY: PUSH CX MOV CX,256 J: LOOP J POP CX LOOP DELY POP CX LOOP LOP INT 20

2)用G命令运行程序,即在屏幕上依次缓慢的显示256个ASCII字符。仔细观察每个字符,和IBM-PC ASCII码表对照,看07H-0DH处控制字符显示结果与表上有何不同? 3)按CTRL+BREAK退出此程序,若一次不行可多做几次。 4 编写一个简化的段定义结构程序: 先提示输入数字“Input number:0-9”,然后在下一行显示输入的数字,结束;如果不是键入 了0-9 数字,就提示错误“ERROR!”,继续等待输入数字。 (给出程序清单及调试结果。) .model small .stack .data

汇编语言上机环境及基本操作

汇编语言上机环境及基本操作汇编语言是一种低级语言,它直接面向硬件,可以直接访问计算机的底层资源。为了学习和实践汇编语言,我们需要了解如何搭建汇编语言上机环境以及其基本操作。本文将介绍汇编语言上机环境的安装和基本操作的步骤,并给出一些示例。 1. 汇编语言上机环境的安装 在搭建汇编语言的上机环境之前,我们首先需要确认计算机的操作系统。通常,我们可以在Windows操作系统上进行汇编语言的开发和调试。下面是汇编语言上机环境的安装步骤: 1.1 下载汇编语言开发工具 汇编语言开发工具有很多种,比如MASM、NASM等。根据个人的喜好和需求选择合适的工具进行下载。 1.2 安装汇编语言开发工具 双击下载文件并按照提示完成安装过程。一般来说,安装过程中可使用默认配置,无需特殊设置。 1.3 配置环境变量 配置环境变量可以使得我们在任意路径下都可以运行汇编语言代码。找到系统环境变量中的"Path"变量,添加汇编语言开发工具的安装路径。例如,如果您选择了MASM,将其安装路径添加到"Path"变量中即可。

安装好汇编语言开发工具后,我们就可以开始进行汇编语言的实践了。 2. 汇编语言的基本操作 接下来我们将介绍汇编语言的一些基本操作,包括编写代码、汇编、链接和运行等。 2.1 编写汇编语言代码 打开一个文本编辑器(如记事本),编写汇编语言的代码。汇编语言与高级语言相比,语法更为底层,需要对计算机的底层结构有一定的了解。可以参考相关教材或者网络资源,编写简单的汇编语言代码。 2.2 汇编 将编写好的汇编语言代码保存为.asm文件。然后,打开命令提示符(或者使用汇编语言开发工具自带的命令行工具),进入.asm文件所在目录,并执行如下命令进行汇编: > asm 文件名.asm 汇编成功后,将生成相应的.obj文件。 2.3 链接 汇编语言代码中可能会引用一些外部的库文件,我们需要将这些库文件与生成的.obj文件进行链接。使用如下命令进行链接: > link 文件名.obj 文件名.lib

实验一-8086汇编语言上机调试及基本操作.

实验一:8086汇编语言上机调试及基本操作 (验证性) 1、实验目的: (1)掌握常用DEBUG命令: G,D,R,T,U,Q。 (2)掌握工具软件EMU8086。 (3)掌握完整程序设计方法的格式,能正确书写数据段,代码段等。 (4)掌握简单的数值转换算法 2、实验说明: 计算机中的数值有各种表达方式,这是计算机的基础。掌握各种数制之间的转换是一种基本功。 3、程序框图:对于0-999(即000H-3E7H)范围内的二进制数 4、参考程序: ; 将AX中的三位数拆为三个BCD码, 并存入Result 开始的三个单元 DATA SEGMENT; 数据段 RESULT_1 DB 1 RESULT_2 DB 1 RESULT_3 DB 1 DATA ENDS STACK SEGMENT STACK ; 堆栈段 STA DB 64 DUP(0) STACK_TOP DB 0 STACK ENDS CODE SEGMENT; 代码段

ASSUME CS:CODE , DS:DATA , ES:DATA , SS:STACK START: MOV AX, DATA MOV DS, AX ; 设置数据段 MOV AX, STACK MOV SS, AX ; 设置堆栈段 LEA SP, STACK_TOP ; 设置栈顶指针 MOV AX, 2afH MOV CL, 100 DIV CL MOV RESULT_1, AL ; 除以100, 得百位数 MOV AL, AH MOV AH, 0 MOV CL, 10 DIV CL MOV RESULT_2, AL ; 余数除以10, 得十位数 MOV RESULT_3, AH ; 余数为个位数 MOV AX,4C00H ; 返回DOS INT 21H ; CODE ENDS END START ; 最后一行要按回车键 5、实验及报告要求: 1)用合适的编辑软件编辑以上源文件并存入合适目录;要求补充注释未注释的 伪指令和指令; 2)分别在DOS和Windows下编译、连接生成可执行文件,比较两个环 境下生成的机器码的长度和内容;试指出第2、5、7、10、14条指令的IP和机器码。 3)分别在debug和emu8086下调试该可执行文件,给出程序运行时的各段 地址(CS=?,DS=?SS=?ES=?)举例说明debug的t,d,g,u等命令操作方法并对寄存器的变化作出解释;试改变被转换的三位数,并解释转换过程中标志寄存器中各标志位的结果;如何观察转换结果的变化?4)写出完整的实验报告,特别是“实验结果”与“实验总结体会”部分,是评分的 主要依据。 5)实验总结中要求结合实验中的经验、教训或体会对汇编语言格式、调试方法 和微机原理学习方法作出总结。 6、思考题: 1)用单步执行命令t运行程序,运行到mov ax, 4c00h,int 21h指令后,cs和 IP寄存器内容前后有何变化?产生变化的原因是什么? 2)试写出将BCD转换成二进制码的汇编程序。

微机原理汇编语言的上机过程 实验报告

微机原理技术与接口实验报告 学院: 专业: 班级: 姓名: 学号:

汇编语言程序的上机过程 实验目的 通过简单地操作了解汇编语言程序的基本内容,体会汇编语言的运行,为以后的实验打下一定的基础。 实验原理及操作步骤 一、上机环境 要运行调试汇编语言程序,至少需要以下程序文件: ?编辑程序:https://www.sodocs.net/doc/dc19211158.html,或其他文本编辑工具软件,用于编辑源程序。 ?汇编程序:MASM.EXE,用于汇编源程序,得到目标程序。 ?连接程序:LINK.EXE,用于连接目标程序,得到可执行程序。 ?调试程序:DEBUG.EXE,用于调试可执行程序。 二、上机过程 汇编语言程序上机操作包括:编辑、汇编、连接和调试几个阶段。 1.编辑源程序 用文本编辑软件创建、编辑汇编源程序。常用编辑工具有:https://www.sodocs.net/doc/dc19211158.html,、记事本、Word等。 无论采用何种编辑工具,生成的文件必须是纯文本文件,所有字符为半角,且文件扩展名为.asm(文件名不分大小写,由1~8个字符组成)。 2.汇编 用汇编工具对上述源程序文件(.asm)进行汇编,产生目标文件(.obj)等文件。 汇编程序的主要功能是:检查源程序的语法,给出错误信息;产生目标程序文件;展开宏指令。 汇编过程如下: 在DOS状态下,输入命令:MASM MYFILE.ASM(回车),即启动了汇编程序。 此命令执行后,会出现下面的3行信息,依次按回车键(即选择默认值)即可建立3个输出文件,其扩展名分别为:.OBJ(目标文件),.LST(列 表文件)和.CRF(交叉引用文件)。 Object Filename [MYFILE.OBJ]: Source Listing [Nul.LST]: Cross Reference [Nul.CRF]: 依次按回车键,进行选择后,汇编程序就对汇编源程序进行汇编。如果汇 编过程中发现有语法错误,则屏幕上会显示出错语言的位置和出错的类型。

汇编语言程序设计的实验环境及上机步骤

汇编语言程序设计的实验环境及上机步骤 一、实验环境 汇编语言程序设计的实验环境如下: 1.硬件环境 微型计算机(Intel x86系列CPU)一台 2.软件环境 ⏹Windows98/2000/XP操作系统 ⏹任意一种文本编辑器(EDIT、NOTEPAD(记事本)、UltraEDIT等) ⏹汇编程序(MASM.EXE或TASM.EXE) ⏹连接程序(LINK.EXE或TLINK.EXE) ⏹调试程序(DEBUG.EXE或TD.EXE) 文本编辑器建议使用EDIT或NOTEPAD,汇编程序建议使用MASM.EXE,连接程序建议使用LINK.EXE,调试程序建议使用TD.EXE。 二、上机实验步骤 注:以下步骤适用于除汇编语言程序设计的实验一到实验四外的所有实验(实验一到实验四仅使用TD.EXE)。 1.确定源程序的存放目录 建议源程序存放的目录名为ASM(或MASM),并放在C盘或D盘的根目录下。如果没有创建过此目录,请用如下方法创建: 通过Windows的资源管理器找到C盘的根目录,在C盘的根目录窗口中点击右键,在弹出的菜单中选择“新建”→“文件夹”,并把新建的文件夹命名为ASM。 请把MASM.EXE、LINK.EXE、DENUG.EXE和TD.EXE都拷贝到此目录中。 2.建立ASM源程序 建立ASM源程序可以使用EDIT或NOTEPAD(记事本)文本编辑器。下面的例子说明了用EDIT文本编辑器来建立ASM源程序的步骤(假定要建立的源程序名为HELLO.ASM),用NOTEPAD(记事本)建立ASM源程序的步骤与此类似。 在Windows中点击桌面左下角的“开始”按钮→选择“运行”→在弹出的窗口中输入“https://www.sodocs.net/doc/dc19211158.html, C:\ASM\HELLO.ASM”,屏幕上出现EDIT的编辑窗口,如图1所示。

汇编上机实验报告

实验一认识Tddebug集成操作软件实验日志 指导教师曾素华实验时间:2013 年04 月02 日学院计算机科学与技术专业计算机科学与技术 班级0411005 学号2010211912 姓名李新娱实验室s401 一、实验题目 认识Tddebug集成操作软件 二、实验目的 1.熟悉汇编程序的开发过程。 2.认识Tddebug集成操作软件。 3.掌握在Tddebug集成环境中编辑、编译、连接汇编语言程序方法。 4.掌握INT 21H软件中断来调用DOS内部子程序的方法 三、实验内容及说明 1.实验内容:数据传送实验 1)编程将数据段中的一个字符串传送到附加段中,并输出附加段中的目标字符串 到屏幕上。参见示例出程序。 2)修改此程序,采用字符串传送指令完成。 2.实验中使用DOS功能调用(INT 21H): 参见教材《32位微型计算机原理与接口技术》89页 (1)显示字符串 入口:AH=09H 调用参数:DS:DX=串首地址,‘$’为结束字符。 (2)返回DOS系统 入口:AH=4CH 调用参数:AL=返回码 四、实验主要步骤 要求一数据传送实验 1.运行Tddebug软件,选择Edit菜单编写实验程序

2.使用Compile菜单中的Compile和Link对实验程序进行汇编、连接,生成执行文件。

3.使用Rmrun菜单中的Run运行程序,观察运行结果。

4.使用Rmrun菜单中的Debug调试程序,查看程序段、数据段、附加段装入内存后的分配情况。单步执行数据传送指令后,观察各寄存器及数据区的内容。过程如下: 3)按F7单步执行,在代码区中有一个三角,表示正在执行的指令。每一条指令 的执行一定会使目标寄存器和状态寄存器发生变化,从相关窗口看结果。 4)检查内存数据区的内容,关键是找出用户程序的数据段和附加段: ●方法1:在CPU窗口按Tab键使内存数据显示区成为活动区,按Ctrl+G键, 输入:“DS或ES寄存器的值:偏移地址”,即可显示用户指定的数据区 ●方法2:选择菜单View| Dump,弹出内存数据显示窗口。 3) 查看执行结果:按Alt+F5,切换到用户窗口。

汇编语言上机指导及例示(川大微机原理实验资料和内容以及MASM使用方法)

汇编语言上机指导及例示、习题 从如何建立源文件到进行调试作下简要的介绍,并配例题说明。由于本人水平有限,在下文 在如有错误及可以进一步修改的地方请大家指出 汇编语言上机过程: 一、上机前的软件准备: MS-DOS操作系统(如:MSDOS6.22 , MSDOS7.0 等) 文本编辑器(如:https://www.sodocs.net/doc/dc19211158.html, , TURBO.EXE , TC.EXE , C.EXE 等) 汇编程序(如:MASM.EXE , ASM.EXE 等) 连接程序(如:LINK.EXE 等) 调试程序(如:DEBUG.EXE 等) 二、汇编程序建立过程: a.建立汇编源程序─通过───→ b.编译为目标文件─↓┬─→d.连接为可执行文件 ↑ │ c.不通过,重新修改(语句错误)↓ ├──────────────────────┘↓ ↑ f.不正确,用调试工具调试,重新修改(逻辑错误)↓ └────────────────────────────←e运行 ↓正确 g.完成 三、现在对(二)的每一个标有字母的过程(PROCEDURE)进行详细说明 PROCEDURE a:建立汇编源程序(即:建立文件名.asm) 这个过程就相当于我们在纸上编写源程序代码一样,只不过是将纸变为了计算机,这个过程也称源代码录入。将源程序代码录入计算机的方法很多,下面将介绍具体方法。 1.通过MD-DOS自带的EDIT.EXE文本编辑器进行输入,在DOS提示符下键入:EDIT回车,这时如果你系统内可调用时,EDIT的操作画面便会出现在屏幕上,你就可在提示下进行录入了,当录入完毕后,选择存盘并给你输入的文件起一个文件名,形式:filename.asm ;(其中filename为你起的文件名,由1-8个字符组成),asm 是为汇编程序识别而必须加上去的,不可更改。存盘后在DOS下可用DOS命令DIR来查看,如果看到了所存的文件存在,就可以进行进程b。 2.如果你的系统中没有EDIT,也可用你所熟悉的文本编辑器进行录入、编辑,如可用c语言和pascal语言的文本编辑器来编辑,最后将文件存为filename.asm的形式即可。 PROCEDURE b:编译目标文件(即:编译为.obj .lst .crf文件) 这个过程计算机将把你编的正确的源代码编译为机器语言、程序清单及交叉引用表的目标文件。如果此时你的程序有语句错误,系统将报错,并指出在第几行,什么类型的错误,你可根据提示去逐一修改。现介绍具体过程:

实验二 汇编语言程序上机过程及调试

实验报告二 课程微机原理实验名称汇编语言程序上机过程以及调试第页专业电子信息班级__ __ 学号_ __ 姓名 实验日期:2014 年 3 月10 日报告退发(订正、重做) 一、实验目的 学习汇编语言程序设计的基本步骤,即编辑(EDIT)程序、汇编(MASM)、连接(LINK)和运行,使对汇编语言程序设计有一个初步的认识。 二、实验内容 1、学习使用全屏幕文本编辑软件EDIT。用EDIT输入一段给定的源程序。 2、用MASM对已存盘的源程序进行汇编,形成目标文件(.OBJ);如有错误,再返回到 EDIT进行修改。 3、用LINK对上述形成的目标文件进行连接,形成可执行文件(.EXE) 4、在DOS提示符下运行该可执行文件。 [汇编语言程序的编写格式] 汇编语言程序一般由几个段组成,它们分别是堆栈段,数据段,代码段。任何一个源程序至少必须有一个代码段和一条作为源程序结束的伪指令END。段的定义有两种格式,分述如 下: 1,完整的段定义格式: 一个段由段头,段体,段尾组成,形式如下: 段名SEGMENT[定位类型][组合类型][‘类别’] … … 段名ENDS 其中SEGMENT后的参数一般可省略,详细说明参阅后面的有关章节。 2,简化的段定义格式(MASM5.0版本提供)每段以.开始后跟固定的段名,一般形式如下: DOSSEG .MODEL 存储类型;“存储类型”可选择为SMALL。 .STACK[大小];堆栈段,“大小”指定堆栈的字节数。 .DATA;数据段。 .CODE[名字];代码段;一般只有一个代码段,名字可缺少 … … 例1:用完整的段定义编写一源程序。 NAME EXAM1;可以省略 DATA SEGMENT;定义数据段,以下是数据段的内容 STR1 DB “HELLO,WELCOME!”,13,10,‘$’ STR2 DB “DO YOU LIKE COMPUTER?(Y/N)”,13 10,‘$’

汇编语言实验报告

汇编语言程序设计实验报告 东南大学计算机科学与技术学院

实验一汇编运行环境及方法、简单程序设计一、程序说明 本程序用来比较两个字符串string1和string2所含的字符是否相同。若相同则显示‘Match’,否则显示‘No match’。 在程序的数据段先定义两个字符串string1和string2,再定义两个字符串mess1和mess2,分别代表‘Match’和‘No match’。再代码段比较字符串string1和string2,通过比较判断是否相同。若相同则显示‘Match’,否则显示‘No match’ 二、调试说明 1.在DOS提示符下,进入MASM目录 2.在MASM目录下启动EDIT编辑程序,输入源程序,并对其进行汇编、连接和运行。 (1)调用edit输入、编辑源程序并保存在指定目录中 (2)用汇编程序MASM对源程序汇编产生目标文件obj。 (3)用连接程序Link产生执行文件exe。 (4)执行程序 3.记录每一步所用的命令,以及查看结果的方法和具体结果。三、源程序清单和debug截图

1.实验代码mycode1.asm ;PROGRAM TITLE GOES HERE--Compare string ;********************************************************* datarea segment ;define data segment string1 db 'Move the cursor backward.' string2 db 'Move the cursor backward.' mess1 db 'Match.',13,10,'$' mess2 db 'No match!',13,10,'$' datarea ends ;********************************************************* prognam segment ;define code segment ;--------------------------------------------------------- main proc far assume cs:prognam,ds:datarea,es:datarea start: ;staring execution address ;set up stack for return push ds ;save old data segment sub ax,ax ;put zero in AX push ax ;save it on stack ;set DS register to current data segment mov ax,datarea ;datarea segment addr mov ds,ax ;into DS register

《汇编语言上机环境及基本步骤》实验报告

汇编语言上机环境及基本步骤 一、实验目的: 1.掌握编写汇编源程序的基本格式。 2.熟悉汇编语言上机环境。 3.掌握汇编源程序的编辑和修改,熟悉EDIT或记事本的使用方法。 4.掌握汇编源程序编译、连接成可执行文件的过程,熟悉MASM,LINK的使用方法。 二、实验内容: 在屏幕上显示并打印字符串“This is a sample program.” 三、实验仪器 微机一台 四、实验步骤: 1.在某盘如E盘,以自己的名字的汉语拼音建立一个工作目录(文件夹,名称不要太 长,不超过8个字符比如zhangsan),将文件MASM.EXE,LINK.EXE等复制到该目录 下,编辑的源文件也保存到该目录下。 从WINDOWS进入DOS环境:C:\> 2.用EDIT编辑SW1.ASM源文件。 (1). 从当前目录进入自己的目录下, C:\>E: 回车 E:\> CD zhangsan ↙回车 键入EDIT并回车: E:\ zhangsan>EDIT 根据菜单提示进行各种操作。 (2)进入EDIT编辑------EDIT是一种全屏幕编辑软件,可输入、编辑、修改、保存、另存源程序非常方便。 说明:也可在WIDNDOWS环境下用记事本编辑源文件,在保存时,保存类型应选择所有文件,不能选择文本文件(*.txt),否则在编译时会找不到源文件的。 (3).编辑新文件: a、在EDIT编辑器中输入汇编源程序。 b、检查输入有无错误。 c、打开文件菜单FILE→选择另存为SA VE AS┅→输入文件名为:SW1.ASM→保 存。 注意:保存到你自己的文件夹中 d、若需要修改此文件,用FILE菜单→选择打开OPEN→输入文件名SW1.ASM,即 可修改。修改后注意重新再存盘。 (4).编辑汇编源程序 a、在EDIT(或记事本)中输入源程序。 b、检查。 c、存盘。可保存为SW1.ASM

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

实验报告 实验名称汇编语言程序设计 | | 专业班级:信息安全 学号: 姓名: 实验一汇编语言上机过程和Debug常用调试命令 一.实验目的: 学习程序设计的基本方法和技能,熟练掌握用汇编语言设计、编写、调试和 运行程序的方法。 二.实验题目: 熟悉与实验有关的系统软件(如编辑程序、汇编程序、连接程序和调试程序等)的使用方法。在调试过程中,学习及掌握debug程序的各种操作命令。 三.问题描述: 试编写一程序:比较两个字符串string1和string2所含的字符是否相同, 若相同则显示‘match’; 否则,显示‘no match’。

四.方法说明: a) 使用ws、tc或EDIT编辑程序来建立源文件,然后存盘,使系统返回DOS。 b) 用汇编程序masm(或asm)对源文件汇编产生目标文件obj 如:汇编指示出错则需重新调用编辑程序修改错误,直至汇编通过为止。 c) 用连接程序link 产生执行文件EXE. d) 执行程序,可直接从DOS执行程序。 e) 使用debug程序调试程序的方法。 五.实验步骤: 1.调用字处理程序EDIT 建立以sample.asm文件 datarea segment string1 db ‘move the cursor backward.’ string2 db ‘move the cursor backward.’ mess1 db ‘Match..’,13,10,’$’ mess2 db ‘No match!..’,13,10,’$’ datarea ends prognam segment

main proc far assume cs:prognam,ds:datarea,es:datarea start: push ds sub ax,ax push ax mov ax,datarea mov ds,ax mov es,ax lea si,string1 lea di,string2 cld mov cx,25 repz cmpsb jz match lea dx,mess2 jmp short disp

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

基础汇编语言程序设计实验 【实验目的】 1.了解教学计算机的指令格式、指令编码、选择的寻址方式和每一条指令的具体功能,为 进一步学习运算器组成和控制器设计打好基础。 2.了解汇编语言的语句与机器语言的指令之间的对应关系,了解伪指令在汇编过程中的作 用。 3.学习教学机监控程序的功能、监控命令的使用方法,体会软件系统在计算机组成中的地 位和作用。 【实验内容】 1.学习联机使用TH-UNION+教学实验系统和仿真终端软件PCEC. 2.使用监控程序的R命令显示/修改寄存器内容、D命令显示存储器内容、E命令修改存储 器内容。 3.使用A命令写一小段汇编程序,U命令反汇编刚输入的程序,用G命令连续运行该程序, 用T、P命令单步运行并观察程序单步执行情况; 【实验内容】 1.用R命令查看寄存器内容或修改寄存器的内容 1)在命令行提示符状态下输入: R↙;显示寄存器的内容 注:寄存器的内容在运行程序或执行命令后会发生变化。 2)在命令行提示符状态下输入: R R0↙;修改寄存器R0的内容,被修改的寄存器与所赋值之间可以无空 格,也可有一个或数个空格 2.用D命令显示存储器内容 在命令行提示符状态下输入: D 2000↙ 3. 用E命令修改存储器内容 在命令行提示符状态下输入: E 2000↙ 4.用D命令显示这几个单元的内容 D 2000↙ 可以看到这六个地址单元的内容变为0000 1111 2222 3333 4444 5555。 5. 用A命令键入一段汇编源程序,主要是向累加器送入数据和进行运算,执行程 序并观察运行结果。 1)在命令行提示符状态下输入: A 2000↙;表示该程序从2000H(内存RAM区的起始地址)地址开始 2)用U命令反汇编刚输入的程序 在命令行提示符状态下输入: U 2000↙ 在相应的地址会得到输入的指令及其操作码 3)用G命令运行前面键入的源程序 G 2000↙

汇编语言实验报告一.doc

汇编语言实验报告 (实验一) 一.实验目的 1.掌握汇编语言程序的上机步骤; (1)用编辑程序(如EDIT、记事本等)编辑汇编语言源程序(建立.ASM文件)。 (2)用MASM程序产生OBJ文件。 (3)用LIINK程序产生EXE文件。 (4)程序的运行(用DEBUG或在DOS下直接运行)。 2.掌握DEBUG的使用方法。 二.程序说明 1.在数据段DATA中有两个数据X和Y,假设X=1122H,Y=3344H,编程求两个字的和,结果存放到Z单元中。 2.从SOURCE_BUFFER单元开始存放了20个字母A,编程将这个20个字母A 的字符串传送到DEST_BUFFER开始的单元中。 3.从SOURCE_BUFFER单元开始存放了20个字母A,编程将这个20个字母A 的字符串向下移10个单元。 三.设计思想 1、将1122H和3344H分别存放在双字x,y中,定义双字Z,x,y带进位相加放入Z中。 2、定义数据段source_buffer,把数据段地址放入ds寄存器,定义附加段extra_buffer,把 附加段地址放入es寄存器,移动整个字符串。 3、定义数据段附加段,先移高位,这样要移20次。 四.程序代码 1、 DATA SEGMENT X DW 1122H Y DW 3344H Z DW ? DATA ENDS ;数据段定义结束 STACK SEGMENT ;堆栈段定义开始 DW 40 DUP(0) STACK ENDS ;堆栈段定义结束 CODE SEGMENT ;代码段定义结束 ASSUME CS:CODE,SS:STACK,DS:DATA START: MOV AX,DATA MOV DS,AX ;设置数据段的开始地址 MOV DX,X

汇编语言上机指导

汇编语言上机指导 一、概述 汇编语言是一种低级别的程序设计语言,它直接使用计算机的指令集架构来编写程序。而在进行汇编语言的实际操作时,上机指导是必不可少的一环。本文将为您提供一份汇编语言上机指导,以帮助您在实践中更好地掌握汇编语言的应用。 二、实验环境与所需工具 在进行汇编语言的上机实验之前,您需要准备以下工具和环境: 1. 计算机:一台能够运行汇编语言开发环境的计算机; 2. 汇编语言开发环境:例如MASM、NASM等; 3. 文本编辑器:用于编写汇编源代码的工具,例如Notepad++、Sublime Text等; 4. 模拟器或调试器:用于模拟或调试汇编程序的工具,例如DOSBox、Emu8086等。 三、实验步骤 1. 安装汇编语言开发环境:根据您选择的汇编语言开发环境,下载并安装相应的软件。 2. 创建汇编源代码文件:使用文本编辑器创建一个新的文本文件,并将其保存为.asm文件格式。

3. 编写汇编程序:根据实验要求或题目要求,使用汇编语言编写相应的程序代码。在编写过程中,需要熟悉所选汇编语言的语法和指令集。 4. 保存源代码文件:在编写完成后,保存源代码文件,并注意文件的命名规范和格式要求。 5. 编译源代码:打开所选汇编语言开发环境,并将源代码文件导入到该环境中。使用编译器将源代码文件转换为可执行文件。 6. 运行汇编程序:在模拟器或调试器中加载生成的可执行文件,并运行程序。通过观察程序的运行结果,验证程序代码的正确性和准确性。 7. 调试程序:如果程序在执行过程中出现错误或异常,可以使用调试器来逐步调试程序,找出错误的原因,并进行修正。 8. 优化程序:经过测试和调试后,可以根据实验需求对程序进行优化或改进,提高程序的性能和效率。 9. 文档整理:在上机实验结束后,对实验过程、实验结果和实验心得进行文档整理。将实验相关的代码、截图和注释整理成文档,并附上你的实验心得和体会。 四、注意事项 1. 在编写汇编程序时,需要遵循所使用汇编语言的语法和规范,注意标识符的命名规则和字符集的使用限制。

汇编语言实验报告一

实验1 实验学时: 2 实验地点:二综实验日期: 2014.10.20 一、实验目的 掌握汇编编程规范,熟悉编程环境。 二、实验内容 1. 编程:向内存0:200-0:23F依次传送数据0-63(3FH)。 2. 编程:编写code段代码,用push指令将a段中的word数据逆序存储 到b段中。 三、实验步骤算法及关键代码 1. 1)问题分析 利用LOOP循环循环64次; 设置段地址及偏移地址从0020:0000开始; 2)编写代码 主要代码如下: CODES SEGMENT ASSUME CS:CODES,DS:DATAS,SS:STACKS START: MOV AX,0020h MOV DS,AX MOV AX,0 MOV BX,AX

S: MOV [BX],AX INC AX INC BX;此处输入代码段代码 LOOP S MOV AH,4CH INT 21H CODES ENDS END START 3)保存、运行及调试代码 利用T及P命令执行代码; 最后利用D命令查看0020:0000~0020:003F内存,结果如图1.; 图1. 2. 1)问题分析 在代码中使用入栈实现逆序存储; 利用LOOP循环实现8个数据的入栈; 2)编写代码 主要代码如下: ASSUME CS:CODES,DS:a,SS:b a segment dw 1,2,3,4,5,6,7,8 a ends b segment dw 0,0,0,0,0,0,0,0 b ends CODES SEGMENt START: MOV AX,b MOV SS,AX MOV SP,10H

汇编语言实验报告

计算机专业类课程 实 验报 告 课程名称:汇编程序语言设计 学院:计算机科学与工程 专业:计算机科学与技术 学生姓名:林* 学号:************* 指导教师:胡* 日期:2014年12 月15 日电子科技大学计算机学院实验中心

电子科技大学 实验报告 实验一 1、实验名称:汇编源程序的上机调试操作基础训练 2、实验学时:4 3、实验内容和目的: 实验内容: 1.DEBUG命令的使用 2.程序的调试与运行 1.编写程序计算以下表达式: Z=(5X+2Y-7)/2 设X、Y的值放在字节变量VARX、VARY 中,结果存放在字节单元VARZ中。 实验目的: 1.掌握DEBUG的基本命令及其功能 2.学习数据传送和算术运算指令的用法 3.熟悉在PC机上编辑、汇编、连接、调试和运行汇编语言程序的过程。 4、实验原理: 1.编辑源程序,建立一个以后缀为.ASM的文件. 2.汇编源程序,检查程序有否错误,有错时回到编辑状态,修改程序中错误行。无错时继续第3步。 3.连接目标程序,产生可执行程序。 4.用DEBUG程序调试可执行程序,记录数据段的内容。 5、实验器材(设备、元器件) pc、window7平台、masm5开发环境

6、实验步骤: 1、在数据段中分别用两个单元varx和vary存放变量x 和y;另一个单元varz用来存放运算结果Z; 2、由于是字节变量,所以用al 存放变量x的值,然后将al 左移两位得到4*x,再把al 加上x,进而得到5*x; 3、再用bl存放变量y 的值,用add命令得到2*y,之后把al 与bl相加,再用sub命令减去7,得到(5*x+2*y-7)的值,并保存到al中; 4、最后将al右移一位,得到最后的z=(5*x+2*y-7)/2,并把al 的值送入varz单元; 5、运行程序,使用-d 命令查看内存单元的信息; 7、实验数据及结果分析: 实验代码如下: 电子科技大学计算机学院实验中心

单片机实验报告KeilC的使用与汇编语言上机操作

单片机实验报告KeilC的使用与汇编 语言上机操作 单片机实验报告:Keil C的使用与汇编语言上机操作 一、实验目的 1.掌握Keil C的使用方法,了解其集成开发环境下的单片机编程流程。 2.掌握汇编语言的基本语法和指令,通过上机操作熟悉其应用。 3.通过实际操作,增强动手能力和解决问题的能力。 二、实验设备 1.单片机开发板 2.Keil C软件 3.电脑及编程器 三、实验原理及步骤 1.Keil C使用介绍 Keil C是一款广泛使用的单片机集成开发环境,它提供了包括编译器、调试器、仿真器等在内的全套开发工具。使用Keil C可以方便地进行代码编写、编译、调试和模拟,适用于多种单片机开发。 2.汇编语言基础 汇编语言是一种直接与硬件相关的编程语言,它通过特定的指令集直接控制硬件进行操作。汇编语言具有高效、直接的特点,但编写和理解相对困难。本实验主要学习并熟悉汇编语言的基本语法和指令。 3.实验步骤 (1) 在Keil C中创建新项目,选择合适的单片机型号。 (2) 创建源文件,编写汇编程序。 (3) 对源文件进行编译,生成目标文件。

(4) 将目标文件下载到单片机开发板进行调试和运行。 四、实验内容及分析 1.在Keil C中创建新项目并选择单片机型号。在创建项目时,需要选择正确 的单片机型号,这将直接影响到程序的编写和运行。根据实际需要,我们选择了AT89C51作为实验用的单片机。 2.创建源文件并编写汇编程序。在Keil C中,可以方便地创建新的源文件, 并在其中编写汇编程序。例如,下面是一个简单的汇编程序,用于点亮开发板上的LED灯: MOV P1, #1 // 将1赋值给P1端口 此程序将使P1端口的所有引脚输出高电平,从而点亮LED灯。 3.对源文件进行编译并生成目标文件。在Keil C中,可以通过简单的点击完 成编译操作。编译成功后,将生成一个目标文件(如*.obj文件)。 4.将目标文件下载到单片机开发板进行调试和运行。在Keil C中,可以通过 仿真功能模拟程序的运行,也可以通过调试功能查看程序运行过程中的细节信息。如果程序运行无误,将在单片机开发板上看到预期的结果。 五、实验总结与体会 通过本次实验,我们深入了解了Keil C的使用方法和单片机编程的基本流程。同时,通过实际操作,我们熟悉了汇编语言的应用和编程技巧。虽然汇编语言相对于高级语言更为复杂,但在特定场合下(如对性能要求极高或与硬件直接交互时),其高效性和直接性具有不可替代的优势。因此,掌握汇编语言对于单片机开发具有重要的意义。在未来的学习和实践中,我们将进一步运用和发展所学的知识和技能,为科学研究和工程实践做出贡献。

相关主题