微机原理实验指导书汇编

上传人:今*** 文档编号:108303750 上传时间:2019-10-23 格式:DOC 页数:22 大小:266KB
返回 下载 相关 举报
微机原理实验指导书汇编_第1页
第1页 / 共22页
微机原理实验指导书汇编_第2页
第2页 / 共22页
微机原理实验指导书汇编_第3页
第3页 / 共22页
微机原理实验指导书汇编_第4页
第4页 / 共22页
微机原理实验指导书汇编_第5页
第5页 / 共22页
点击查看更多>>
资源描述

《微机原理实验指导书汇编》由会员分享,可在线阅读,更多相关《微机原理实验指导书汇编(22页珍藏版)》请在金锄头文库上搜索。

1、- 1 - 校内讲义校内讲义 计算机应用技术计算机应用技术 实验指导书实验指导书 编写:张海蓉编写:张海蓉 主审:李主审:李 玲玲 吉林大学通信工程学院吉林大学通信工程学院 - 2 - 2006.5.202006.5.20 - 1 - 目目 录录 实验一 算术运算实验1 实验二 BCD 码运算实验.2 实验三 字符和字符串显示实验3 实验四 人机对话实验4 实验五 数据排序实验(选作)5 实验六 数制转换实验(选作)5 附录一:DEBUG 调试工具 .7 附录二:汇编语言编程环境17 -1- 实验一 算术运算实验 一、实验目的 1掌握汇编调试程序 DEBUG 的常用命令和功能。 2掌握算术运算

2、程序的编写方法。 3学会 DEBUG 环境下调试程序的方法。 二、实验内容 注:以下题目中数据按低地址存放低位数据,高地址存放高位数据。 题目 1:两个无符号数相加,将结果数存入指定地址单元。被加数,加数及 和存放地址及数据如下: 地址数据 被加数2000:00009FH 2000:00016BH 加数2000:00025CH 2000:000342H 和2000:0004 2000:0006 题目 2:两个无符号数相减,将差存入指定地址单元。被减数,减数及差的 存放地址及数据如下: 地址数据 被减数2000:01008CH 2000:010142H 减数2000:010292H 2000:0

3、1035AH 差2000:0104 2000:0105 题目 3:两个无符号数相乘,将积存入指定地址单元。被乘数,乘数及积存 放的地址及数据如下: 地址数据 被乘数2000:100056H 2000:10012CH 乘数2000:10023AH 2000:10031CH 积2000:1004 2000:1007 题目 4:两个无符号数相除,将商及余数存入指定的地址单元。被除数,除 -2- 数,商及余数存放的地址及数据如下: 地址数据 被除数2000:02002AH 2000:02013BH 2000:02024CH 2000:02035DH 除数2000:02047CH 2000:02055D

4、H 商2000:0206 2000:0207 余数2000:0208 2000:0209 三、实验报告 1实验用源程序。 2实验方法及结果分析。 3实验心得体会。 实验二 BCD 码运算实验 一、实验目的 1进一步掌握 DEBUG 使用方法。 2掌握 BCD 码运算程序编写方法。 二、实验内容 题目 1:计算两个不等长压缩 BCD 码之和。其地址和数据为(低位低地址, 高位高地址) 。 地址数据 被加数2000:000046H 2000:000178H 加数2000:000294H 和2000:0003 2000:0005 题目 2:计算两个非压缩 BCD 码之积。其地址和数据为(低位低地址,

5、高位 高地址) 。 -3- 地址数据 被乘数2000:000033H 2000:000137H 2000:000238H 2000:000334H 乘数2000:000434H 积2000:0005 2000:0009 三、实验报告 1实验用源程序。 2实验方法及结果分析。 3实验心得体会。 实验三 字符和字符串显示实验 一、实验目的 1掌握宏汇编语言源程序编辑方法。 2掌握宏汇编程序 MASM.EXE 将宏汇编语言程序汇编成目标程序,连接程 序 LINK.EXE 将目标程序连接成 DOS 下可执行文件的方法。 3掌握利用 DOS 系统功能调用显示字符和字符串、输入字符串的方法。 二、实验内容

6、 题目 1:按宏汇编语言程序程序的格式,采用 INT 21H 的 2 号功能调用显示: I like computer very much. 题目 2:按宏汇编语言程序程序的格式,采用 INT 21H 的 9 号功能调用显示 一串汉字字符串: 我的计算机工作正常. 注:汉字字符串按 DB 定义数据。 题目 3:按宏汇编语言程序程序的格式,采用 INT 21H 0A 号功能调用输入 一字符串: I hope you work hard. 之后,再将输入的字符串从内存中取出重新在屏幕上显示一次。 -4- 三、实验方法 1利用编辑程序来编辑宏汇编语言源程序。源程序的文件的扩展名为. ASM。 2利用

7、 MASM.EXE 宏汇编程序程序将源程序汇编成目标文件: AMASM 盘号:文件名.ASM 盘号:文件名.OBJ。 若汇编产生严重错误(Severe Error) ,利用编辑程序修改源程序,直至无此种 错误为止。对于警告错误,可不进行修改而继续下一步。 3利用连接程序 LINK.EXE 将目标程序转换成 DOS 下可执行文件.EXE。 4在 DOS 环境下执行生成的可执行文件: D:文件名 四、实验报告 1实验用源程序。 2实验方法及结果分析。 3实验心得体会。 实验四 人机对话实验 一、实验目的 1进一步掌握字符串显示方法。 2掌握键盘输入字符处理及分析方法。 3熟悉交互式程序编写特点及方

8、法。 二、实验内容 题目 1:屏幕显示计算机提问: Do you like this book ? 若用户回答 N,计算机回答: You may go to the next store. 若用户回答 Y,计算机回答: I think you will buy it. 题目 2:屏幕显示计算机提问: Would you like tea or coffee? 用户用键盘输入回答,并把回答从内存中取出再次在屏幕上显示。 三、实验报告 1实验用源程序。 -5- 2实验方法及结果分析。 3实验心得体会。 实验五 数据排序实验(选作) 一、实验目的 1掌握比较数据大小的方法。 2掌握数据排序,插入数据

9、的方法。 3掌握显示某一数据区数据的方法。 二、实验内容 题目 1:键盘输入十个十六进制字节数据,存入给定的存储单元中,用冒泡 排序法将数据按从大到小的顺序排列好,在屏幕上显示出来。 题目 2:已知数据为:41H, 70H, 03H, 53H, 88H, 16H, 8EH, 3FH 用冒泡排序法将数据按从小到大的顺序排列好,再由键盘键入 75H,将它插 入这组数据中,并保持从小到大的顺序不变。将插入数据后的数组在屏幕上显示 出来。 三、实验报告 1实验用源程序。 2实验方法及结果分析。 3实验心得体会。 实验六 数制转换实验(选作) 一、实验目的 1进一步掌握 DEBUG 和汇编环境的使用方法

10、。 2学会调试循环程序和子程序的方法。 二、实验内容 题目 1:十进制数据转换为十六进制数。将 8 位 BCD 码 35 26 38 74(高位数 据存放低地址,低位数据存放高地址) ,转换成十六进制数,存放在指定存储单元 中。 地址数据 BCD 码2000:000035H -6- 2000:000126H 2000:000238H 2000:000374H 十六进制码2000:0004 2000:0007 题目 2:十六进制数据转换为十进制数。利用 DOS 系统功能调用,取当前系 统时间并显示。 三、实验报告 1实验用源程序。 2实验方法及结果分析。 3实验心得体会。 -7- 附录一:DEB

11、UG 调试工具 DEBUG.COM 是 MS DOS(Microsoft Operating System)磁盘操作系统提供的 实用程序。该程序可编辑、汇编、反汇编、调试和运行 8086 汇编语言程序。 一、DEBUG 命令特征 1 “-”为进入 DEBUG 的提示符,其后可输入 DEBUG 命令。 2DEBUG 命令可带一个或多个参数,命令与参数不区分大小写。 3命令与参数可用分隔号(空格或逗号)隔开,2 个连续的十六进制值之间 必须用分隔号隔开。下列命令等效: -D CS:100 110 -D,CS:100 110 4中断命令时,可按“Ctrl+Break”组合键。 5每一个命令,在按回车

12、后有效。 6对于产生大量输出的命令,可按“Ctrl+Numlock”组合键,使显示停止向 上滚动,以便阅读,再按任意键即可继续显示输出。 7各种控制键及各种 DOS 编辑键,在 DEBUG 中都可使用。 8若输入某行发生语法错误,则显示这一行,指出错误所在。 如:-D CS:100 CS:110 Error 这时可重新输入。 9DEBUG 命令中使用地址格式 段基址: 其中段基址可以是段寄存器名,也可以是十六进制值,也可以缺省。系统只 识别十六进制值,其后不用加 H。 如:-D CS:100 -D 92F:100 -D 100(使用默认的 DS 指定的段) 地址范围的格式:段基址: 或段基址:

13、 L 如:-D CS:100 110 -D 92F:100 L10 二、DEBUG 环境下指令使用规则 1所有数字值全为十六进制数,可输入 1-4 个十六进制数字字符。 2重复前缀、LOCK 前缀助记符在相关指令之前输入,也可置于指令前一行。 -8- 3可以使用段超越助记符,如 CS:、DS:、ES:、SS:。 4串操作助记符,必须说明是字节还是字操作。 5跨段返回时的助记符为 RETF。 6DEBUG 能自动汇编短、近和远的转移和调用。可用“NEAR PTR”和 “FARPTR”前缀,其中“PTR”可缺省。 如:3000:0500JMP 502; 2 字节长的短转移指令 3000:0600J

14、MP NEAR 608; 3 字节长的近转移指令 0100:0800JMP FAR 70A; 5 字节长的远转移指令 7可用 BYTE PTR(或缩写为 BY)前缀表示字节存储单元,WORD PTR(或缩写为 WO)前缀表示字存储单元,说明操作数类型。 如:ADD BYTE PTR128, 10 DEC WORD PTRSI 8直接寻址的存储单元缺省段跨越前缀时,段基址取 DS 值。 如:MOV BX, 1000; BXDS:1000H 9支持各种形式寄存器间接寻址命令。 如:ADD BX, 34BXSI-1 POP BP+DI 10可使用 DB 或 DW 直接把字节或字数据送入相应存储单元。

15、 如:DB 1, 3, 5, THIS IS AN EXAMPLE DW 1000, 5000, BACH 三、DEBUG 启动和寄存器初值 1启动启动 D:DEBUG 驱动器名: 路径 文件名 .扩展名 参数 如:D:DEBUG prt.exe - 2寄存器初值寄存器初值 DEBUG 程序启动后,初始化各寄存器和标志位的内容和状态。 (1)段寄存器(CS、DS、ES 和 SS)置于自由存储空间的底部,即 DEBUG 程序结束后的第一个段,随使用 DOS 版本及内存大小的不同而不同。 (2)指令指针 IP 置为 0100。 (3)将 AX、BX、CX、DX、BP、SI 和 DI 置为 0。 (

16、4)FR 的各标志位 IF 为 1,其它标志位置 0。 当 DEBUG 调用*.EXE 文件,则把段寄存器、堆栈栈顶指针 SP 置为文件所规 定的值,文件长度包含在 BX 和 CX 中(高位在 BX 中,低位在 CX 中) 。 -9- 四、DEBUG 命令 1汇编命令汇编命令 格式:-A 地址 功能:由指定地址开始,输入汇编语言语句,A 命令把它们汇编成机器码后, 从指定地址单元开始连续存放。若在命令中没有指定地址且前面用过汇编命令, 则接着上一汇编指令的最后一个单元开始存放。若在命令中没有指定地址且前面 也没有用过汇编命令,则从 CS:IP 指定的地址单元开始存放。A 命令用直接回车 或“CTRL+C”退出。 如:D:DEBUG -A XXXX:0100MOV AL, 40 0102MOV CH, 20 0104JMP 10F 010

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 高等教育 > 大学课件

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号