2022年2022年汇编语言程序设计实验 .pdf
![资源得分’ title=](/images/score_1.gif)
![资源得分’ title=](/images/score_1.gif)
![资源得分’ title=](/images/score_1.gif)
![资源得分’ title=](/images/score_1.gif)
![资源得分’ title=](/images/score_05.gif)
《2022年2022年汇编语言程序设计实验 .pdf》由会员分享,可在线阅读,更多相关《2022年2022年汇编语言程序设计实验 .pdf(33页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、目录目录 . 1实验一利用DEBUG 熟悉常用指令的使用 . 2一、实验目的. 2二、示例 . 2三、实验题 . 2实验二汇编程序和连接程序的使用. 6一、实验目的。. 6二、示例。 . 6三、实验题。. 8实验三顺序结构程序设计. 11一、实验目的. 11二、示例 . 11三、实验题 . 12四、实验报告. 15实验四循环结构程序设计. 16一、实验目的. 16二、示例 . 16三、实验题 . 18实验五分支结构程序设计. 21一、实验目的. 21二、示例 . 21三、实验题 . 22实验六子程序设计. 29一、实验目的. 29二、实验题 . 29名师资料总结 - - -精品资料欢迎下载 -
2、 - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 1 页,共 33 页 - - - - - - - - - 实验一利用DEBUG 熟悉常用指令的使用一、实验目的熟悉指令系统, 掌握常用指令的用法;通过实验加深对各种寻址方式的理解;能熟练使用 DEBUG 中的命令对指令进行反汇编,观察并了解机器代码。二、示例请分别用一条汇编语言指令完成如下功能:(过程略)。1.用寄存器 BX 和 SI 的基址变址寻址方式把存储器的一个字节与AL 寄存器的内容相加,并把结果送到AL 中。ADD AL,BXSI 2.用位移量为0520H 的直接寻址方
3、式把存储器中的一个字与3412H 相加,并把结果送回该存储单元。ADD WORF PTR 0520H,3412H 三、实验题1.调试、验证下列指令的结果,已知(DS) =2000H , (BX )=0100H , (SI)=0002H , (BP)=0200H, (SS)=2300H , (20100)=12H, (20101)=34H, (20102)=56H, (20103)=78H,(21200)=2AH , (21201)=4CH , (21202)=B7H , (21203)=65H , (23204)=88H,说明各指令执行完后AX 寄存器的内容。 要求输入指令, 相应存储单元的内
4、容要事先设置,单步P执行,观察执行结果。(设置存储器的值)名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 2 页,共 33 页 - - - - - - - - - .MOV AX,1200H .MOV AX,BX .MOV AX,1200H .MOV AX,BX .MOV AX,1100BX 名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 3 页,共 33 页 - - -
5、- - - - - - .MOV AX,BXSI .MOV AX,1100BXSI .MOV AX,BP+SI+04 2、上机调试、 验证教材习题3.15。单步执行、 观察运行结果并与自己的判断进行比较。(1)1234 (2)4321 名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 4 页,共 33 页 - - - - - - - - - (3)CFA0 (4)9D60 名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - -
6、名师精心整理 - - - - - - - 第 5 页,共 33 页 - - - - - - - - - 实验二汇编程序和连接程序的使用一、实验目的。熟悉汇编语言的上机环境,学习EDIT,MASM,LINK程序的使用,掌握建立、汇编、链接、运行汇编语言程序的过程。二、示例。试编写一程序,要求比较两个字符串STRING1 和 STRING2 所含字符是否相同,若相同则显示MATCH,若不相同则显示NO MATCH 。用串比较功能来完成程序所要求的功能。上机步骤如下:1、调用 EDIT.COM程序建立汇编语言源程序.ASM 建立好的源文件以EX_1.ASM 为文件名存盘DATA SEGMENT ST
7、RING1 DB Visual Basic STRING2 DB Visual Basic COUNT EQU $-STRING2 MESS1 DB MATCH!,13,10,$ MESS2 DB NO MATCH!,13,10,$ DATA ENDS code segment assumecs:code,ds:data,es:data mainproc far start: push ds subax,ax push ax movax,data movds,ax moves,ax ;main program movcx,count lea si,string1 lea di,string2
8、名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 6 页,共 33 页 - - - - - - - - - cld repzcmpsb jz mes1 movdx,offset mess2 jmp disp0 mes1:movdx,offset mess1 disp0: mov ah,9 int 21h exit: ret main endp code ends end start修改字符串,使其不同,并对以上源程序重新汇编、连接、运行,结果输出为: NO MATCH!修改前:名师资料
9、总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 7 页,共 33 页 - - - - - - - - - 修改后:三、实验题。1、上机完成以上示例程序。2、完成课堂例题,并用DEBUG 运行,观察结果。data segment X db 6 Y db ? data ends code segment assumecs:code,ds:data 名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - -
10、 - 第 8 页,共 33 页 - - - - - - - - - start: movax,data movds,ax moval,x mov y,5 addy,al mov ah,4ch int 21h code ends end start 程序:名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 9 页,共 33 页 - - - - - - - - - 改变后:名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精
11、心整理 - - - - - - - 第 10 页,共 33 页 - - - - - - - - - 实验三顺序结构程序设计一、实验目的学习数据传送指令和算术运算指令的用法;掌握数据定义伪指令的格式,会用DEBUG中的 D 命令观察DB 、DW 、DD 存储数据的格式;熟悉汇编语言的基本框架,掌握编写汇编语言程序的基本方法。二、示例试问如下程序执行到exit 时,字单元A、B、D、D+1、D+2 中的内容各是什么?源程序如下:data segment a db10 b dw20 ddb 30,40,50 data ends code segment assume cs:code,ds:data
12、start: moval,data movds,ax mov al,d+1 add al,d mov a,al mov al,d+1 add al,d+2 mov b,al addd,10 addd+1,20 addd+2,30 exit: mov ah,4ch int 21h code ends 名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 11 页,共 33 页 - - - - - - - - - end start 阅读以上程序,运行程序并用debug 调试分析出结果。字单元
13、 A:4C5A 。字单元 B:2B5A 。字单元 D:3C2B 。字单元 D+1:503C。字单元 D+2:0050。三、实验题1、 求表达式Y=A*X2+B*X+C 的值,已知 A、 B、 C 分别存放在DATAA 、 DATAB 、 DATAC字节单元, X 存放在 TABL 字节单元,结果Y 放入 RESULT 字单元。要求:在DEBUG 下多次修改X 的值,观察执行结果Y;修改原程序,从键盘上输入X 的值,观察执行结果Y。(见书 P471) data segment dataadb 1 databdb 3 datacdw 5 tabldb7 resultdw ? data ends c
14、ode segment assumecs:code,ds:data 名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 12 页,共 33 页 - - - - - - - - - start: movax,data movds,ax moval,tabl mul al muldataa movbx,ax moval,tabl muldatab addax,bx addax,datac movresult,ax exit: mov ah,4ch int 21h code ends end
15、start 运行结果为16 进制的 4B,即 75,计算正确。在修改 X 值为 9 后,运算结果为71,即 113,计算正确。继续修改 X 值为 3,运行结果为17,即 23,计算正确。data segment dataadb 1 databdb 3 datacdw 5 名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 13 页,共 33 页 - - - - - - - - - tabldb ? resultdw ? data ends code segment assumecs:co
16、de,ds:data start: movax,data movds,ax mov ah,01 int 21h sub al,30h movtabl,al mul al muldataa push ax moval,tabl muldatab popbx addax,bx addax,datac movresult,ax exit: mov ah,4ch int 21h code ends end start 从键盘上输入X 值为 7,输出结果为4B。2、上机完成教材习题3.11(P108) ,写出正确结果。data segment tabledw 10,20,30,40,50 entrydw
17、 3 data ends code segment ASSUME DS:data,cs:code start: movax,data movds,ax movbx,offset table 名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 14 页,共 33 页 - - - - - - - - - addbx,entry mov ax,bx code ends end start AX=1E00H 。四、实验报告写出程序清单,记录运行结果;总结DEBUG 中 U、E、D、T、G命令的功
18、能。U命令的功能:将主存内容按照机器代码形成汇编指令显示;E命令的功能:用于修改主存内容;D命令的功能:显示主存单元的内容;T命令的功能:每执行一条指令就显示运行结果;G命令的功能:从指定地址处开始运行程序,直到遇到断点或者程序正常结束。名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 15 页,共 33 页 - - - - - - - - - 实验四循环结构程序设计一、实验目的理解单重循环与多重循环程序的结构及执行过程;掌握循环控制指令的用法,会使用数据串操作指令编程;熟练掌握循环结
19、构程序的设计方法和利用设置断点调试程序的方法。二、示例1、单循环程序已知当前数据段中DADT1 和 DADT2开始分别存放若干字节数据,数据个数相同, 编制程序检查两数据块中数据是否相同,若相同,则在屏幕上显示1,否则显示0。【参考程序如下】DSEG SEGMENT ;定义段。DATA1 DBABCDEFG3 ;定义字符串赋值给变量。DATA2 DBABCDEF3G ;定义字符串赋值给变量。CNT DW8;定义变量。DSEG ENDSCSEG SEGMENTASSUME CS:CSEG,DS:DSEG START :MOVAX,DSEG ;赋值。MOVDS,AX MOVDL,31H ;赋值。L
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 2022年2022年汇编语言程序设计实验 2022 汇编语言 程序设计 实验
![提示](https://www.taowenge.com/images/bang_tan.gif)
限制150内