预览加载中,请您耐心等待几秒...
1/6
2/6
3/6
4/6
5/6
6/6

在线预览结束,喜欢就下载吧,查找使用更方便

如果您无法下载资料,请参考说明:

1、部分资料下载需要金币,请确保您的账户上有足够的金币

2、已购买过的文档,再次下载不重复扣费

3、资料包下载后请先用软件解压,在使用对应软件打开

汇编作业报告一 学院:软件学院 班级:软件工程1 姓名: 学号: 指导老师:曾锋 一问题 使用循环语句计算1+2+3+…+100,并把结果保存在物理地址12345H指向的字存储单元中 二问题分析 1.利用loop循环实现累加 2.利用“incbx“实现所加数字逐次加1 3.物理地址“12345H“可视为1234:0005 4.最后存储单元类型为“字“,则需在程序运行中的结果先保存在16位通用寄存器中。 三程序实现 1.编写源代码 完整代码如下: DATASSEGMENT ;此处输入数据段代码 DATASENDS STACKSSEGMENT ;此处输入堆栈段代码 STACKSENDS CODESSEGMENT ASSUMECS:CODES,DS:DATAS,SS:STACKS START: MOVDX,0 MOVBX,1 MOVCX,100;此处输入代码段代码 s:ADDDX,BX incBX loops MOVBX,1234H MOVDS,BX movBX,5 MOV[BX],DX MOVAH,4CH INT21H CODESENDS ENDSTART 2.运行及调试 1)进入调试 图1.r命令查看各寄存器初始值 2)t命令逐条执行代码 图2 3)遇到“Loop0009”使用p命令 图3 4)查看12345H地址单元字型数据 用“d1234:5”查看 由“高地址内存单元存放字型数据的高位字节,低地址内存单元存放字型数据的低位字节”知12345H存储单元存放字型数据为13BA。 三总结 1.应注意Loop循环执行次数,此次作业中就因次数错误不能得到正确结果。 2.masm集成环境中调试前勿忘程序需先运行