微机原理实验标准实验报告

合集下载
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

实验一汇编语言上机实验

实验目的:

1、学习及掌握汇编语言源程序的书写格式和要求。

2、学会使用EDIT、MASM、LINK、DEBUG等软件工具。

3、熟练掌握在计算机上编辑、汇编、连接及运行汇编语言程序的方法。

实验仪器:

1、微型计算机一台(带DOS或WINDOWS操作系统)

2、MASM开发套件

实验原理:

1、调试程序DEBUG能进行汇编程序调试。

2、DOS功能调用

为了使用方便,将DOS层功能模块所提供的88个子程序统一顺序编号从00H到57H。DOS系统功能调用方式如:

(1)将子程序编号送入AH寄存器;

(2)置入口参数;

(3)执行中断指令:INT 21H。

实验步骤:

1、通过DEBUG编写、运行汇编程序

(1)DEBUG程序的启动

在DOS操作系统状态下,可直接调入DEBUG程序,键入命令格式如下:

A或C>DEBUG[d:][path][filename[.exe]

在启动DEBUG时,如果输入了文件名(filename),则DEBUG程序把指定文件装入内存。

(1)(2)键入程序并汇编

用DEBUG的A命令送入程序(下划线部分为程序员输入部分):

E:\huibian>debug↙

-a↙

1387:0100 mov al,32↙

1387:0102 mov dl,34↙

1387:0104 add dl,al↙

1387:0106 sub dl,30↙

1387:0109 mov ah,2↙

1387:010B int 21↙

1387:010D int 20↙

1387:010F↙

-

(要求学生截图)

当键入A命令时,自动产生所送内存单元的段地址和偏移地址。通过偏移地址可以看到每条指令占有内存单元多少个字节,当程序段键完后,只键入回车键,就退出汇编状态,回到DEBUG状态‘—’。其中送入数据为十六进制数,不需要键入H。

(2)将汇编程序段存入磁盘,其中‘e1’为文件名。

-n e1↙

-r cx↙

CX 0000

:000d↙

-w↙

Writing 0000D bytes↙

-

(要求学生截图)

(3)反汇编

可以用反汇编U命令将键入的程序调出,并且可以得到每条汇编指令的机器码。-u 100 10d↙

1387:0100 B032 MOV AL,32

1387:0102 B234 MOV DL,34

1387:0104 00C2 ADD DL,AL

1387:0106 80EA30 SUB DL,30

1387:0109 B402 MOV AH,02

1387:010B CD21 INT 21

1387:010D CD20 INT 20

-

(要求学生截图)

(4)执行程序

用DEBUG的G命令执行刚刚汇编的程序:

-g =100 10d↙

6

AX=0236 BX=0000 CX=000D DX=0036 SP=FFEE BP=0000 SI=0000 DI=0000 DS=1387 ES=1387 SS=1387 CS=1387 IP=010D NV UP EI PL NZ NA PE NC 1387:010D CD20 INT 20

(要求学生截图)

(5)-退出DEBUG返回DOS状态,输入q命令,回车。

-q↙

E:\huibian>

2、在屏幕上显示“Hello,world!”

(1)设定源程序的文件名为ABC.ASM。文件中的程序为:

DA TA SEGMENT

BUF DB 'Hello, world !$'

DA TA ENDS

STACK SEGMENT STACK

DW 36 DUP(?)

STACK ENDS

CODE SEGMENT

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

START: MOV AX,DA TA

MOV DS,AX

MOV DX,OFFSET BUF

MOV AH,9

INT 21H

MOV AH,4CH

INT 21H

CODE ENDS

END START

(2)、在DOS状态下键入以下命令:C:\MASM> EDIT ABC.ASM

此时屏幕的显示状态如下图所示。

进入EDIT后,屏幕的第一行是菜单栏。可以选用Alt键激活菜单,然后用光标和回车键选择所需功能项,在弹出下拉菜单中选择所需功能,或按Esc键退出菜单选择,用File 主菜单下的“Save”存盘功能保存文件。最后通过选择File菜单下的Exit项退出EDIT编辑环境。

(3)将源程序文件汇编成目标程序文件

C:\MASM> MASM ABC.ASM

源程序建立以后,在DOS状态下,采用宏汇编程序MASM对源程序文件进行汇编,屏幕显示如下图。

(4)用连接程序生成可执行程序文件

经汇编以后产生的目标程序文件(.OBJ文件)并不是可执行程序文件,必须经过连接以后,才能成为可执行文件(即扩展名为.EXE)。

C:\MASM>LINK ABC

连接过程如下图所示。

(5)程序的执行

当我们建立了正确的可执行文件以后,就可以直接在DOS状态下执行该程序。

C:\MASM> ABC.EXE

如下图所示。

3、程序改错:

源程序:

data segment

out1 db 'Hello world'

ax db 'My name is DJX'

data ens

code segment

相关文档
最新文档