大学计算机第三次实验报告答案,东北大学计算机硬基础 第三次实验报告.doc

东北大学计算机硬基础 第三次实验报告

东 北 大 学

计算机硬件技术基础实验报告

专业班级:姓名:学号:实验题目:循环程序设计日期:

一、实验目的

1)加深对循环结构的理解;

2)掌握循环程序的设计方法;

3)熟练掌握DEBUG的常用命令,学会用DEBUG调试程序。

二、实验内容

设STR字符串是以0结尾。试编写一个把字符串中的所有大写字母改为小写字母的程序,并将转换后的字符串显示输出。

三、算法描述流程图

四、实验步骤

1. 输入源程序:

DATA????? SEGMENT

STR??????? DB????????? ‘HOW arE YoU!’,0

DATA????? ENDS

CODE???? SEGMENT

????????????? ASSUME CS:CODE,DS:DATA

START:?? MOV????? AX,DATA

MOV????? DS,AX

MOV????? SI,OFFSET STR?????????? ;取字符串开始地址

AGAIN:?? MOV????? DL,[SI]??????????????????????? ;取一字符

OR???????? DL,DL???????????????????????? ;是否到字符串尾?

JZ?????????? OK????????????????????????????? ;到字符串尾,转OK

CMP?????? DL,’A’????????????????? ?????? ;否则,判断是否为大写字母

JB?????????? NEXT????????????????????????? ;否,转NEXT

CMP?????? DL,’Z’

JA????????? NEXT????????????????????????? ;否,转NEXT

ADD?????? DL,20H??????????????????????? ;是大写字母,改为小写字母

MOV????? [SI],DL??????????????????????? ;送回到字符串中

NEXT:??? MOV????? AH,2

INT??????? 21H

INC??????? SI??????????????????????????????? ;调整指针

JMP??????? AGAIN??????????????????????? ;继续循环

OK:???????? MOV????? AH,4CH

INT??????? 21H

CODE???? ENDS

????????????? END?????? START

2. 保存源文件,执行masm汇编源程序,生成obj目标文件,结果无错误。

3. 执行link连接程序,生成exe可执行文件,结果无错误。

4. 执行debug调试程序,使用t参数单步执行程序,输入“HOW arE YoU!’”,观察结果是否改成小写字母。

五、实验结果

1. 执行masm编译源程序生成OBJ文件

2. 执行link连接程序,生成exe可执行文件得到如下界面:

3. 执行debug调试程序,使用t参数单步执行程序,

4. 执行d参数命令察看Z所在的地址单元中的数据为0BB0:0000及以后字节单元中存放是否改成大写字母,得到如下界面:

六、思考题

如果程序要求把小写字母都改为大写字母,程序段该如何修改?

答: 只要把大写的“Z”和“A”改成“z”和“a”即可。

DATA????? SEGMENT

STR??????? DB????????? ‘HOW arE YoU!’,0

DATA????? ENDS

CODE???? SEGMENT

????????????? ASSUME CS:CODE,DS:DATA

START:?? MOV????? AX,DATA

MOV????? DS,AX

MOV????? SI,OFFSET STR?????????? ;取字符串开始地址

AGAIN:?? MOV????? DL,[SI]??????????????????????? ;取一字符

OR???????? DL,DL???????????????????????? ;是否到字符串尾?

JZ?????????? OK????????????????????????????? ;到字符串尾,转OK

CMP?????? DL,’a’????????????????? ?????? ;否则,判断是否为大写字母

JB?????????? NEXT????????????????????????? ;否,转NEXT

CMP?????? DL,’z’

JA????????? NEXT????????

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值