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

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

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

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

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

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

. 西安邮电大学 〔计算机学院〕 课内实验报告 实验名称:寻址方式与根本指令实验 专业名称:通信与信息工程 班级:通工1205 学生姓名:付彤 学号〔8位〕:03121124 指导教师:宁晓菊 实验日期:2021年11月 实用文档. . 一,实验目的及实验环境 1,熟悉80*86寻址方式及根本指令的功能,进一步理解和稳固课堂学习内容。 2,掌握汇编语言设计上机过程,掌握汇编语言源程序结构,为后续汇编语言程 序设计打好根底。 3,熟悉Microsoft的DEBUG或Borland的TurboDEBUG调试工具的使用方法。 一.实验内容 1,读懂以下源程序,使用EDIT生成名为EX11.ASM的源程序,汇编生成 EX11.OBJ文件和EX11.LST文件,连接生成EX11,EXE文件;用EDIT翻开 EX11.LST文件,了解.LST文件包含的信息;使用DEBUG调试工具单步执行 EX11.EXE程序,注意观察IP值得变化,并答复以下问题。 (1)程序装入后,代码段存放器CS的内容为〔1172H〕,代码段第一条可执行指令MOV AX,DATA对应的机器代码为〔B87111H〕,它是一个〔3〕字节指令,注意观察执行 该指令时IP值的变化情况,该指令源操作数DATA的寻址方式为〔立即数寻址〕其 值为〔1171〕 (2)执行完MOVDS,AX指令后,数据段存放器DS的内容为〔1171H〕,源程序在数据 段中定义的数据82H,68H和88H被装入的存储存储单元的物理地址分别为〔11792H〕 〔11778H〕和〔11798H〕。 (3)程序中第一条ADDAL,[BX]指令对应的机器代码为〔8A07〕它是一个〔2〕字节指 令,注意观察执行该指令时IP值的变化情况;该指令中源操作数的寻址方式为〔存 放器间接寻址〕;该操作数所在的存储单元的逻辑地址〔DS〕:(BX)为 〔1171:0000〕,其物理地址为〔11170H〕;执行完该指令后〔AL〕=〔EA〕H,CF= 〔0〕,OF=(0),ZF=(0),SF=(1),AF=(0),PF=(0);假设操作数为无符号数,计算结果是否 正确〔正确〕?假设两操作数为带符号数,计算结果是否正确〔错误〕?假设计算 结果正确,结果是正数还是负数〔负数〕? (4)执行完第二条ADDAL,[BX]指令后,〔AL〕=(68)H,CF=(1),OF=(1),ZF=(0),SF= (1),AF=(1),PF=(1);假设两操作数为无符号数,计算结果是否正确〔错误〕?假设两 操作数为带符号数,计算结果是否正确〔正确〕? (5)指令MOVSUM,AL中的目录操作数的寻址方式为〔直接寻址〕?该指令执行完后, 注意观察〔DS〕:0003H单元中值的变化,该单元的值变为〔68〕H。 2读懂以下源程序;编辑、汇编、连接生成EX12.ASM、EX12.OBJ、EX12.LST、EX12.EXE 文件;使用DEBUG单步执行EXE12.EXE文件,并答复以下问题。 (1)代码段的前三条指令MOVAX,STACK、MOVSS,AX和MOVSP,LENGTHSTL的功 能为堆栈初始化,试问执行完这三条指令后,堆栈栈底所在单元的逻辑地址〔SS〕: 〔SP〕为_1171:0100____;执行PUSHAX指令后堆栈指针存放器〔SP〕=__00FE__H, 此时,〔SS〕:〔SP+1〕和〔SS〕:〔SP〕单元的值为__5B08___H;执行完PUSHBX 后〔SP〕=___00FC__H,此时,〔SS〕:〔SP+1〕和〔SS〕:〔SP〕单元的值为__4CA3___H; 执行完POPAX后〔SP〕=__00FE___H;执行完POPBX后〔SP〕=___0100__H; 此时〔AX〕=__4CA3___H,〔BX〕=__5B0A___H。请读者通过对堆栈操作指令执 行情况的观察,进一步掌握进、出栈操作过程。 (2)执行ADDAX,BX后〔AX〕=〔A7AD〕H,CF=(0),OF=1,ZF=0,SF=1,AF=0,PF=0; 假设两操作数为无符号数,计算结果是否正确?〔正确〕假设两操作数为带符号数,那么计 实用文档. . 算结果是否正确?〔错误〕。 (3)执行ANDAX,BX指令后〔AX〕=4802H,CF=0,OF=1,ZF=0,SF=1,AF=0,PF=0. 3指出以下指令错误的原因,上机运行,观察汇编程序〔MASM。EXE〕给出的出错信息, 改正后再上机验证。 (1)MOVBP,BL类型不匹配 (2)MOV[BX],[BP]源操作数和目的操作数不能同时为存放器 (3)MOV[BX],20H操作数类型不明确 (4)INC[SI]操作数类型不明确 (5)AD