




已阅读5页,还剩7页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
福建农林大学计算机与信息学院实验报告系: 计算机 专业: 计算机科学与技术 年级: 2014 姓名 学号: 实验室号_ 计算机号 实验时间:2016-10-29指导教师签字: 刘庆连 成绩: 实验四 子程序设计1.实验目的 (1)学习子程序的编写,主子程序的调用; (2)不同模块间程序的调用和调试。2.实验内容1)数据段中的3个字符,调用子程序将其逐个显示出来。子程序的功能是显示一个字符。单步执行,对CALL语句和RET语句观察SP,IP的变化,并用D命令查看栈顶的内容。DATASEGMENTMAGDB ABCDATAENDSCODESEGMENTASSUMECS: CODE, DS: DATASTART:MOVAX, DATA MOVDS, AX MOVSI, 0 MOVCX, 3LL:MOV DL, MAGSICALL MADD INCSI LOOPLLMOVAH, 4CHINT21HMADDPROCMOV AH, 02H INT 21HRETMADDENDPCODEENDS END START2)阅读S31.ASM和S32.ASM两个模块中的程序,并分别汇编,然后连接成一个可执行文件S31.EXE。具体步骤如下:MASM S31.ASM(分别汇编)MASM S32.ASMLINK S31 S32 (将两个文件连接成为一个文件名为S31)S31.EXE (运行)3)编程:利用主程序调用子程序,比较BUF1和BUF2缓冲区中不相等的字符,并将不相等的字符显示出来。(也可以将找到的不相等字符逐个显示,用INT 21H的02功能调用)4)编程:子程序搜索指定字符缓冲区中是否有N,如果有用Y替代。调用子程序将BUF1,BUF2,BUF3中的N全部用Y替代。附源程序:NAME S31.ASM不同模块间的段间调用。从键盘输入2位非压缩BCD数,存入AX寄存器中。为了将其转换为二进制数,编写一个子程序TRAN。显示子程序DISP完成将16进制数转换为对应的ASCII码并显示该字符,显示子程序在另一模块S32中。输入数据为00时结束。EXTRNDISP: FARCODESEGMENTPARA CODEASSUMECS: CODESTART:MOVAH, 01H INT21H MOVBL, AL INT21H MOVAH, AL MOVAL, BLCMPAX, 3030H JEEXIT CALLNEAR PTR TRAN CALLFAR PTR disp JMPSTARTEXIT:MOV AH, 4CH INT21HTRANPROCNEAR ;将输入的ASCII码转换成2进制数ANDAX, 0F0FH ;将ASCII码转换成非压缩BCD码,;高位在AL中 MOVBL, AH MOVCL, 10D MULCL ADDAL, BLRETTRANENDPCODEENDSEND STARTNAMES32.ASMPUBLICDISPCODE1SEGMENTPARA CODEASSUMECS: CODE1DISP PROC FAR MOVBL, AL MOVBH, 00 MOVCH, 4ROLL:MOVCL, 4 ROLBX, CL MOVDL, BL ANDDL, 0FH CMPDL, 9 JBENEXT1 ADDDL, 07HNEXT1:ADDDL, 30H MOVAH, 02H INT21H DECCH JNZROLLRETDISPENDPCODE1 ENDSEND5)编一个子程序:输入一个字符,显示出来。6)编一个子程序:输入一个字符串,显示出来。4算法描述及实验步骤题1:依题输入相应的代码如下,运行-调试-单步执行,对CALL语句和RET语句观察SP,IP的变化,并用D命令查看栈顶的内容。题3及4,5,6按要求编写即可5调试过程 无6. 实验结果【题一】实验结果如下有上图可知,当程序运行到call语句之前,SP一直保持0000不变,而IP则一直在增加。继续单步执行程序由上图,当程序在RET语句之前运行时,SP、IP每次都是分别按2和1递增,当运行到RET语句时,SP还是按照2来递增,而IP出现了变化,这次却减少了很多,说明指针回撤执行下一个循环。【题二】按要求把s31 s32 分别汇编连接形成一个s31.exe文件,如下汇编s31汇编s32Link s31 s32形成一个s31.exe的文件【题三】编写代码如下运行结果如下图BUF1=HELLO WORLD!BUF2=HOLLO WOLLD 比较可知BUF1与BUF2中不同的字符有ER!,结果与预期一致【题四】编写代码如下运行结果如下图分析:有图可知,结果将BUF1和BUF2中的n改为了y完成题目要求.【题五】编一个子程序:输入一个字符,显示出来编写代码如下【题六】编一个子程序:输入一个字符串,显示出来编写代码如下7. 总结通过本次上机实验,学会了子程序的编写和主子程序的调用,并且掌握了在不同模块间程序的调用和调试。在本次实验中,再一次加深了对汇编程序的汇编以及连接运行的方法。附录:【题3代码】DATA SEGMENTBUF1DB HELLO WORLD!LEN=$-BUF1 BUF2 DB HOLLO WOLLDDATA ENDSCODESEGMENT ASSUME CS:CODE,DS:DATA START: MOV AX, DATA MOV DS, AX LEA SI, BUF1 LEA DI, BUF2 MOV CX,LEN CALL CMPP MOV AH, 4CH INT 21H CMPP PROCNEAR ;子程序 L1:MOV DL,SI CMP DL,DI JZ NEXT MOV AH,02H INT 21HNEXT:INC SI INC DI LOOP L1 RET ;子程序返回 CMPP ENDP CODE ENDS END START【题4代码】DATA SEGMENT BUF1 DB aaanaannaaan,0ah,0dh,$ LEN1=$-BUF1 BUF2 DB bbnnnbbbbnnn, $ LEN2=$-BUF2DATA ENDSCODE SEGMENT ASSUME CS: CODE, DS: DATASTART:MOVAX, DATA MOV DS, AX LEA SI, BUF1 MOV CX, LEN1 CALL CMMP LEA SI, BUF2 MOV CX, LEN2 CALL CMMP MOV AH, 4CH INT 21HCMMP PROC MOV DX, SI CMP1:CMP BYTE PTRSI, n JNE NOTN MOV AL, y MOV SI, AL NOTN:INC SI LOOP CMP1 MOV AH, 09H ;显示字符串 INT 21H RETCMMP ENDPCODE ENDS END START【题5代码】STACKS SEGMENT STACK DW 128 DUP(?)STACKS ENDSCSEG SEGMENT PARA PUBLIC CODEASSUME CS:CSEG START: MOV AH,01INT 21HMOV DL,ALMOV AH,02INT 21HMOV AL,0MOV AH,4CHINT 21HCSEG ENDS END START【题6代码】STACKS SEGMENT STACK DW 128 DUP(?) STACKS ENDS DSEG SEGMENT MSG DB 0DH,0AH,$ BUF DB 20,?,20 DUP(?) DSEG ENDS CSEG SEGMENT PARA PUBLIC CODE A
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 上半年党工作总结
- 入场安全教育培训
- 电商安全培训
- 期刊论文有哪些部分
- 金融学专业本科毕业论文选题
- 工商管理的专业课
- 《中小学安全教育日》教学
- 心理活动准备与实施指南
- 端午假期安全教育
- 毕业论文用电脑怎么写
- 2025安全生产月一把手讲安全公开课主题宣讲三十三(60P)
- 2024-2025学年山东省济南市市中区八年级(下)期末数学试卷(含解析)
- 2025至2030中国二甲醚汽车行业市场分析及竞争形势与发展前景预测报告
- 儿童用药合理使用课件
- 2025年七一党课-作风建设永远在路上学习教育党课
- 2025-2030年中国发泡包装行业市场现状供需分析及投资评估规划分析研究报告
- 2025至2030中国材料疲劳试验机行业项目调研及市场前景预测评估报告
- 2025年陕西、山西、宁夏、青海四省(陕晋宁青)高考 生物真题试卷 附答案
- 2024年西昌市教育和体育局考核聘用公立幼儿园教师真题
- 2025年全国高考数学真题全国2卷
- 2025年衣物清洁多元化发展趋势白皮书-天猫家清第一财经商业数据中心
评论
0/150
提交评论