《汇编语言程序设计实验报告二分支循环程序实验.docx》由会员分享,可在线阅读,更多相关《汇编语言程序设计实验报告二分支循环程序实验.docx(6页珍藏版)》请在得力文库 - 分享文档赚钱的网站上搜索。
1、汇编语言程序设计实验报告二分支循环程序实验 汇编语言程序设计实验报告二(分支循环程序实验) 一、实验目的 1、掌握分支程序、循环程序的设计方法。 2、熟悉DEBUG程序的使用方法。 3、掌握汇编语言程序的编辑、汇编、连接以及调试过程。 二、实验内容 1、编写一程序,将内存中某一区域的数据传送到另一个区域中(要求用循结构,不考 虑数据块重叠问题)。 2、编写一程序,将内存中某一区域的数据传送到另一区域(要求考虑数据块重叠问 题)。 三、实验准备 1、预习数据传送指令,熟悉分支和循环程序设计方法。 2、预习DEBUG调试程序的使用方法。 3、根据实验内容要求,编写好实验源程序。 四、实验步骤 1、
2、用QE或其它编辑软件,在计算机上编辑源程序,使其正确无误。 2、汇编、连接源程序,产生.EXE可执行文件。 3、运行程序。 (1)进入DEBUG。打入DEBUGT 。MYPROG为所编程序的文件名。 (2)先用G命令连续剧连续执行程序,程序执行完毕后,观察运行结果。如果执行后是对的,说明程序编写是正确的,如果结果不对,说明程序有错误, 则执行下一步。 (3)检查程序。在程序中设置若干断点,以便杳出错误所在。 (4)采用单步命令T或执行程序,观察各寄存器和存储单元内容,以便找到错误之处。 五、实验报告要求 1、列出程序清单,并给出程序流程图。 2、 3、 4、说明本实验中是如何使用DEBUG 六
3、、流程图勤 N 题一流程图 书馆 题二流程图 七、程序清单 题一程序清单: STACK SEGMENT STACK STACK DB 100 DUP(0) STACK ENDS DA TA SEGMENT PARA DA TA SOUR DB 0、1、2、3、4、5、6、7、8、9 DEST DB 10 DUP(?) DB $ DA TA ENDS SEGMENT PARACODE ASSUME CS:CODE MAIN PROC FAR START:PUSH DS MOV AX,0 PUSH AX MOV AX,DATA MOV DS,AX MOV CX,10 MOV SI,offset S
4、OUR MOV DI, offset DEST AGAIN: MOV AL,SI MOV DI,AL INC SI IN DI LOOP AGAIN MOV DX,offset DEST MOV AH,09H INT 21H RET MAIN ENDP CODE ENDS END START 题二程序清单: DA TA SEGMENT PARA DA TA STRG DB ABCDEFGHIJKLMNOP STG1 EQU STRG+4 STG2 EQU STHG+8 STRSE EQU 6 DA TA ENDS STACK SEGMENT PARA CODE DB 100 DUP(0) ST
5、ACK ENDS CODE SEGMENT PARA CODE ASSUME CS:CODE,DS:DATA,ES:DATA,SS:STACK PROC FAR START: PUSH DS MOV AX,0 PUSH AX MOV AX,DATA MOV DS,AX MOV ES,AX MOV CX,STRSE MOV SI,OFFSET STG1 MOV DI,OFFSET STG2 CLD PUSH SI ADD SI,STRSE-1 CMP SI,DI POP SI JL MOVE STD ADD SI,STRSE-1 ADD DI,STRSE-1 MOVE: REP MOVSB RET MAIN ENDP CODE ENDS END START