宏指令设计.docx昆明理工大学信息工程与自动化学院学生实验报告
(201 —201 学年第 学期)
课程名称:汇编语言程序设计 开课实验室: 201年 月 日
年级、专业、班
学号 姓名
成绩
实验项目名称
宏指令设计
指导教师
教
师
评
语
教师签名:
年 月 日
一、实验目的、要求
实验四:宏指令设计
1) 掌握宏指令库的设计方法,并设计程序来调用其中的宏指令;
2) 编程实现32位二进制数除以16位二进制数,并把结果用十进制数形式显示在屏幕上。
要求采用宏指令库实现;
3) 观察并记录运行结果。
二、实验原理及基本技术路线图
:
建立宏指令库:
可以把一些常用的宏指令集中在一个文件中形成宏指令库,用EDIT等任 何文本编辑程序创建宏指令库,库名由用户自己起,而且对库的扩展名没有特 殊要求。库中的宏指令以源代码形式出现。
INCLUDE伪指令:把另一个源文件包含到当前源文件中。
:
三、 使用仪器、材料
1) 操作系统:win 7
2) 软件:
四、 实验方法和步骤 :
建立宏指令库:
宏指令库名:MACRO. LIB(另附)
宏指令功能及其名称:初始化DS寄存器-INIT、保存寄存器-PUSHREG、恢复寄 存器-POPREG、清屏-CLRSCRN、设置光标-CURSOR、显示字符串-DISP、把16位 二进制数转换为十进制数的ASCLL串-BIN_DEC、返回操作系统-RETRUN。
建立汇编程序:使用文本编辑器编写汇编程序并把文件后缀改为*.asm,此处 为 yqt. asm (另附)。
:输入命令cmd进入ms-dos窗口,键入MASM命令,输入文件名yqt. asm, 生成文件名默认为缺省。通过汇编可以把用汇编语言书写的源程序翻译成机器 语言的目标代码、检查用户源程序中的错误且显示出错信息、生成列表文件等。
E:\??\am\???>MfiSM
Microsoft (R) Macro Assembler Version
Copyright (C) Microsoft Corp 1981-1985, 1987. All rights reserved.
Source filename [.ASM]:KSIKSmI
Object filename []:
Source listing []:
Cross-reference []:
50124 , 398692 Bytes symbol space free
0 Warning Errors
0 Severe Errors
:键入LINK命令,对通过汇编生成的文件yqt. obj进行连接,生成可 执行的目标文件。
E:\??\am\???>[INi<1
Microsoft (R) Overlay Linker Version
Copyright (C) Microsoft Corp 1983-1987. All rights reserved.
Object Modules [ .OBJ]:fcTOMlliM
Run File []:
List File []:
Libraries [.LIB]:
:。
The result is: 5678
:使用DEBUG命令对yqt. exe文件进行调试。
用反汇编命令U显示可执行代码
144E
144E
144E
144E
144E
144E
144E
144E
144E
144E
144E
144E
144E
144E
144E
144E
144E
0000 B84C14 0003 8ED8 0005 8B160200 0009 A10000 000C F7360400 0010 8D361C00
0014 8BC0 0016 B90A00 0019 3D0000 001C 740C 001E 33D2 0020 F7F1 0022 80CA30 0025 8814 0027 4E 0028 EBEF 002fi 90
MOV
MOV
DS, AX
V WR wp R V vepp
AX,[0000]
WORD PTR [0004]
SI,[001C]
AX, AX
AX, 0000
002A
DX,DX
CX
DL,30
SI
0019
1UE:002B 52
PUS
宏指令设计 来自淘豆网www.taodocs.com转载请标明出处.