寻址方式与基本指令实验.doc

  1. 1、本文档共7页,可阅读全部内容。
  2. 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
西 安 邮 电 大 学 (计算机学院) 课内实验报告 实验名称: 寻址方式与基本指令实验 专业名称: 通信与信息工程 班 级: 通工1205 学生姓名: 付彤 学号(8位): 指导教师: 宁 晓 菊 实验日期: 2014年11月 一,实验目的及实验环境 1,熟悉80*86寻址方式及基本指令的功能,进一步理解和巩固课堂学习内容。 2,掌握汇编语言设计上机过程,掌握汇编语言源程序结构,为后续汇编语言程序设计打好基础。 3,熟悉Microsoft的DEBUG或Borland的Turbo DEBUG调试工具的使用方法。 实验内容 1,读懂下列源程序,使用EDIT生成名为EX11.ASM的源程序,汇编生成EX11.OBJ文件和EX11.LST文件,连接生成EX11,EXE文件;用EDIT打开EX11.LST文件,了解.LST文件包含的信息;使用DEBUG调试工具单步执行EX11.EXE程序,注意观察IP值得变化,并回答下列问题。 程序装入后,代码段寄存器CS的内容为(1172H),代码段第一条可执行指令MOV AX,DATA对应的机器代码为(B87111H),它是一个(3)字节指令,注意观察执行该指令时IP值的变化情况,该指令源操作数DATA的寻址方式为(立即数寻址)其值为(1171) 执行完MOV DS,AX指令后,数据段寄存器DS的内容为(1171H),源程序在数据段中定义的数据82H,68H和88H被装入的存储存储单元的物理地址分别为(11792H)(11778H)和(11798H)。 程序中第一条ADD AL,[BX]指令对应的机器代码为(8A07)它是一个(2)字节指令,注意观察执行该指令时IP值的变化情况;该指令中源操作数的寻址方式为(寄存器间接寻址);该操作数所在的存储单元的逻辑地址(DS):(BX) 为(1171:0000),其物理地址为(11170H);执行完该指令后(AL)=(EA)H,CF=(0),OF=(0),ZF=(0),SF=(1) ,AF=(0) ,PF= (0);若操作数为无符号数,计算结果是否正确(正确)?若两操作数为带符号数,计算结果是否正确(错误)?若计算结果正确,结果是正数还是负数(负数)? 执行完第二条ADD AL,[BX]指令后,(AL)=(68)H,CF=(1) ,OF= (1),ZF=(0) ,SF= (1),AF=(1) ,PF=(1) ;若两操作数为无符号数,计算结果是否正确(错误)?若两操作数为带符号数,计算结果是否正确(正确)? 指令MOV SUM,AL中的目录操作数的寻址方式为(直接寻址)?该指令执行完后,注意观察(DS):0003H单元中值的变化,该单元的值变为(68)H。 2 读懂下列源程序;编辑、汇编、连接生成EX12.ASM、EX12.OBJ、EX12.LST、EX12.EXE文件;使用DEBUG单步执行EXE12.EXE文件,并回答以下问题。 代码段的前三条指令MOV AX,STACK、MOV SS,AX和MOV SP,LENGTH STL的功能为堆栈初始化,试问执行完这三条指令后,堆栈栈底所在单元的逻辑地址(SS):(SP)为_1171:0100____;执行PUSH AX指令后堆栈指针寄存器(SP )=__00FE__H,此时,(SS):(SP+1)和(SS):(SP)单元的值为__5B08___H;执行完PUSH BX后(SP)=___00FC__H,此时,(SS):(SP+1)和(SS):(SP)单元的值为__4CA3___H;执行完POP AX后(SP)=__00FE___H;执行完POP BX后(SP)=___0100__H;此时(AX)=__4CA3___H,(BX)=__5B0A___H。请读者通过对堆栈操作指令执行情况的观察,进一步掌握进、出栈操作过程。 (2) 执行ADD AX,BX后(AX)=(A7AD)H,CF=(0),OF=1,ZF=0,SF=1,AF=0,PF=0;若两操作数为无符号数,计算结果是否正确?(正确)若两操作数为带符号数,则计算结果是否正确?(错误)。 (3) 执行AND AX,BX指令后(AX)=4802H,CF=0,OF=1,ZF=0,SF=1,AF=0,PF=0. 3指出下列指令错误的原因,上机运行,观察汇编程序(MASM。EXE)给出的出错信息,改正后再上机验证。 MOV BP,BL 类型不匹配 MOV [BX],[BP] 源操作数和目的操作数不能同时为寄存器 MOV [BX],20H 操作数类

文档评论(0)

dashewan + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档