8086指令集操作码-实验报告.doc_第1页
8086指令集操作码-实验报告.doc_第2页
8086指令集操作码-实验报告.doc_第3页
8086指令集操作码-实验报告.doc_第4页
8086指令集操作码-实验报告.doc_第5页
已阅读5页,还剩4页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

8086指令集操作码 实验报告一、 实验目的利用debug工具的e和u功能找出8086/8088指令系统的指令格式中各种操作码编码对应的指令功能。二、 实验预习1、每条指令16个字节不等2、指令的第一字节为操作码,规定指令的操作类型。第二字节规定操作数的寻址方式接着以后的36 字节依据指令的不同取舍。3、第一个字节的八个二进制位中前六位为操作码的主要部分,之后一位是D字段,然后是W字段,W指出操作数类型:W=0 为字节,W=1 为字,D指出操作数的传送方向:D=0 寄存器操作数为源操作数,D=1 寄存器操作数为目标操作数。关于DOS的输入输出重定向:D:debug out1.txtD: 该命令使用了DOS的输入输出重定向功能,小于号()之后的文件名(out1.txt)表示debug命令的所有输出内容写入该文件(而原先这些输出是写到显示器)。三、 实验步骤1、 基本要求部分A、 试探法通过一步步逐个输入操作码来确定得到操作码00代表的指令为ADD,继续观察上面结果,了解D、W字段的作用B、 利用DOS的输入输出重定向功能在记事本中写入保存为txt文件,在打开debug,输入生成输出文件,验证指令进行多输入尝试输入全部指令在文件in.txt中,将其反汇编结果输出到out.txt中输入文件(由于文件太大,仅截取一小部分)输出文件(由于文件太大,仅截取一小部分)关于结果的总结和分析详见实验总结2、 较高要求部分A、 寻址方式研究寻址方式可以采取与研究指令操作码相同的方法,先将操作码固定,变化第二字节即寻址方式部分即可。B、 利用C+生成输入文件只变化操作码的程序如下:#include#include#includeusing namespace std;int main()ofstream f1(d:inin.txt);int i,j;for(i=0;i16;i+)for(j=0;j16;j+)f1e 100 hexijendlu 100 105endl;f1qendl;f1.close();return 0;程序得到的输入输出文件部分截图:输入:输出:指令操作码与寻址方式均变化的程序如下:#include#include#includeusing namespace std;int main()ofstream f1(d:inin2.txt);int i,j,k,v;for(i=0;i16;i+)for(j=0;j16;j+)for(k=0;k16;k+)for(v=0;v16;v+)f1e 100 hexij kvendlu 100 105endl;f1qendl;f1.close();return 0;此程序生成的输入文件将不同操作码及寻址方式排列出来便于总结程序得到的输入输出文件部分截图:输入:输出:四、 实验总结操作码字段:前6位确定是什么操作,第7位为D字节,第8位为W字节。W指出操作数类型:W=0 为字节,W=1 为字,D指出操作数的传送方向:D=0 寄存器操作数为源操作数,D=1 寄存器操作数为目标操作数。例如:000000dw 为 ADD操作,但0000010W时也为ADD操作五、 实验心得此

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论