资源描述:
《东北大学计算机硬件实验三.docx》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库。
1、东北大学计算机硬件技术基础实验报告专业班级:姓名:学号:实验题目:循环程序设计日期:2018.11.15实验目的:1)加深对循环结构的理解;2)掌握循环程序的设计方法;3)熟练掌握DEBUG的常用命令,学会用DEBUG调试程序。实验内容:设STR字符串是以0结尾。试编写一个把字符串中的所有大写字母改为小写字母的程序,并将转换后的字符串显示输出。b5E2RGbCAP实验步骤:1、输入源程序如下:DATA SEGMENTSTR DB ‘HOWarEYoU!’,0DATA
2、 ENDSCODE SEGMENT ASSUMECS:CODE,DS:DATASTART: MOV AX,DATAMOV DS,AXMOV SI,OFFSETSTR 。取字符串开始地址AGAIN: MOV DL,[SI] 。取一字符p1EanqFDPwOR DL,DL 。是否到字符串尾?JZ
3、 OK 。到字符串尾,转OKDXDiTa9E3dCMP DL,’A’ 。否则,判断是否为大写字母RTCrpUDGiTJB NEXT 。否,转NEXT5PCzVD7HxACMP DL,’Z’JA NEXT 。否,转NEXTADD DL,20H
4、 。是大写字母,改为小写字母jLBHrnAILgMOV [SI],DL 。送回到字符串中NEXT: MOV AH,2INT 21HINC SI 。调整指针JMP AGAIN 。继续循环OK: MOV AH,0INT 16HCODE
5、 ENDS END STARTRET5/52.保存源文件,执行emu8086汇编源程序,点击compile生成.obj目标文件,结果无错误。3.执行run连接程序,生成exe可执行文件,结果无错误。4.点击vars,得到结果。实验结果1.输入程序,得到如下界面:2.点击compile,保存程序:3.点击保存,点击run:5/54.运行程序,得到结果:思考题:如果程序要求把小写字母都改为大写字母,程序段该如何修改?答:只要把大写的“Z”和“A”改成“z”和“a”,
6、再把ADD改为SUB即可。DATA SEGMENTSTR DB ‘HOWarEYoU!’,0DATA ENDSCODE SEGMENT ASSUMECS:CODE,DS:DATASTART: MOV AX,DATAMOV DS,AXMOV SI,OFFSETSTR 。取字符串开始地址AGAIN: MOV DL,[SI] 。取一字符x
7、HAQX74J0XOR DL,DL 。是否到字符串尾?JZ OK 。到字符串尾,转OKLDAYtRyKfECMP DL,’a’ 。否则,判断是否为大写字母Zzz6ZB2LtkJB NEXT 。否,转NEXTdvzfvkwMI1CMP DL,’
8、z’JA NEXT 。否,转NEXTSUB DL,20H 。是小写字母,改为大写字母rqyn14ZNXIMOV [SI],DL 。送回到字符串中NEXT: MOV AH,2INT 21HINC SI