中南实验选读.doc

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
汇编语言程序设计 实验报告 学 院: 信息科学与工程学院 专业班级:  GOT 7 指导老师:   贺建飚 学 号:   i got7 姓 名:    鸟宝宝 实验一 一、实验原理 通过基本的练习,熟悉汇编平台的使用。以方便后期实验以及程序设计时,对基本操作的熟悉,以及一些基本的调试方法。 二、实验目的 1. 8086基本指令及寄存器实验 2. 熟悉包括数据和转移地址有关的寻址方式 3. 了解程序占有的空间和执行时间 4. 熟悉使用数据传输指令、算术指令、逻辑指令、串指令、控制转移指令、处理控制与杂项操作指令等等。 ( 数据传输指令 通用数据传输指令:MOV、PUSH、POP、XCHG 累加器专用传输指令:IN、OUT、XLAT 地址传输指令:LEA、LDS、LES 标志寄存器传输指令:LAHF、SAHF、PUSHF、POPF 类型转化:CBW、CWD 算数指令 加法指令:ADD、ADC、INC 减法指令:SUB、SBB、DEC、NEG、CMP 乘法指令:MUL、IMUL 除法指令:DIV、IDIV 逻辑指令 逻辑运算指令:AND、OR、NOT、XOR、TEST 移位指令:SHL、SAL、SHR、SAR、ROL、ROR、RCL、RCR 串处理指令:MOVS、CMPS、SCAS、LODS、STOS ) 5. 熟悉汇编平台的使用和汇编程序的典型结构 6: 熟悉DEBUG的各种命令 7:了解不同指令对各种条件标志的影响 三、实验内容 程序设计与调试 (1)x,y,z 均为双精度数,分别存放于X,X+2,Y,Y+2,Z,Z+2的存储单元中,用指令序列实现w=x+y+24-z,并用 W,W+2单元存放 w DATAS SEGMENT ;此处输入数据段代码 X dw 0102H dw 0304H Y dw 0506H dw 0708H Z dw 090AH dw 0B0CH W dw 4 dup(?) DATAS ENDS STACKS SEGMENT ;此处输入堆栈段代码 STACKS ENDS CODES SEGMENT ASSUME CS:CODES,DS:DATAS,SS:STACKS START: MOV AX,DATAS MOV DS,AX ;此处输入代码段代码 mov ax,X mov dx,X+2 add ax,Y adc dx,Y+2 add ax,24 adc dx,0 sub ax,Z sbb dx,Z+2 mov W,ax mov W+2,dx MOV AH,4CH INT 21H CODES ENDS END START 每执行一步,观看寄存器、内存、以及标志寄存器是否改变? 试着改变 x,y,z的值,如x,y,z=0BBCC99AAH 观察每一步的变化,请问运行结果正确吗?为啥? 三、实验结果 修改初始值x,y,z=0BBCC99AAH NV变为OV,表明有溢出,结果不正确。 x,y,z,v均为16位带符号数,计算(v-(x*y+z-540))/x 编制程序,用不同的x,y,z,v 带进去,看过程,与结果,并分析结果正确与否 实验二 一、实验原理 根据要求将BX内容从左到右每4位一组在屏幕上显示出来利用循环结构完成每次循环显示一个十六进制数位因而循环次数是已知的计数值为4. 循环体中包括从二进制到所显示字符的ASCII之间的转换以及每个字符的显示后者可以使用DOS功能调用实现。这里采用了循环移位的方法把所要显示的4为二进制数移到最右面以便做数字到字符的转换工作。 二、实验目的 1. 掌握循环程序的设计方法。  2. 掌握汇编语言源程序的编辑、汇编、连接及调试过程。  3. 进一步熟悉利用DEBUG程序修改参数的方法并检查和验证结果的正确性。 4. 学会针对不同的问题选用不同的组织循环的方法。 实验过程 循环可以使用LOOP指令或者条件跳转指令来实现。 Loop指令 DATAS SEGMENT ;此处输入数据段代码 DATAS ENDS STACKS SEGMENT ;此处输入堆栈段代码 STACKS ENDS CODES SEGMENT ASSUME CS:CODES,DS:DATAS

文档评论(0)

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

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

1亿VIP精品文档

相关文档