资源描述:
《微机原理实验报告2011》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库。
1、微机原理与应用实验报告专业:班级:姓名:学号:时间:指导教师:二○一一年五月改编云南农业大学工程技术学院--------------------------微机原理与应用实验报告实验一8086基本指令及程序结构实验报告姓名:学号:专业:年级:一、实验目的1、进一步熟悉8086的基本指令2、熟悉8086的仿真软件emu8086的应用3、掌握8086汇编源程序的编程特点二、主要实验设备4、PC机1台5、eum8086软件1套三、实验过程及结果双击PC桌面eum8086打开该软件,在File菜单下,选择N
2、ew,exetemplate项,建立新文件,进行以下各项练习,并回答问题:1、寻址方式实验:(1)在光标处输入:MOVAX,0767HMOVBX,67MOVCH,11101100BMOVDX,23+12点击右边按钮:CompileandEmulate进行汇编并进入仿真窗口,此时按该窗口上端的SingleStep按钮,单步执行上述程序,回答以下问题:以上指令中目的操作数的寻址方式是,源操作数的寻址方式是。指令执行后,AX=,BX=,CX=。思考题:为什么DX的值仍是“23”?(2)删除上述程序,输入以
3、下指令:MOV[2000H],1234HMOV[3000H],5678HMOV[2000H],[3000H]以上各指令中目的操作数的寻址方式是。重复上述运行步骤,提示的错误信息是:,为避免上述错误,可用以下指令:(3)删除上述程序,输入以下指令:MOVBX,0123HMOVAL,BX重复上述运行步骤,提示的错误信息是:,为避免上述错误,可用以下指令:7云南农业大学工程技术学院--------------------------微机原理与应用实验报告(4)删除上述程序,输入以下指令:COUNTEQU0
4、6HMOVCOUNT[SI][BX],2233HINCBXMOVBX,COUNT[SI][BX]上述程序中EQU是指令,该类指令只在汇编期间起作用,在可执行程序中无对应的代码。最后1条指令的寻址方式是,其物理地址为。重复上述运行步骤后,BX=。思考题:为什么BX不等于0033H或2200H?2、基本指令实验:(1)机器码:输入以下指令:MOVAL,05HMOVAH,03HMOVBX,0304HADDAX,BXANDAX,00FFH点击右边按钮:CompileandEmulate进行汇编并进入仿真窗口
5、,则可写出以上指令的机器码(十六进制)是:其中MOVBX,0304H的机器码是行。(2)交换指令:输入以下指令:MOVAX,4455HXCHGAL,AHMOVBX,1122HXCHGBL,BHXCHGAX,BX执行上述指令后,AX=,BX=。(3)堆栈操作:输入以下指令:MOVAX,1122HMOVBX,3344HMOVCX,5566HMOVDX,7788HPUSHAXPUSHBXPUSHCX7云南农业大学工程技术学院--------------------------微机原理与应用实验报告PUSH
6、DXINCSPPOPCXPOPAXPOPBXPOPDX执行上述指令后,AX=,BX=,CX=,DX=。思考题:为什么会出现错位现象?(4)标志寄存器:已知两个带符号数—110和+72,试编写程序求(—110)—(+72),其程序为:执行程序,回答以下问题:a)标志寄存器的值是(十六进制)。b)计算结果是否正确:。(5)已知AX=1234H,CL=03H,分别执行以下指令并回答问题:(a)SALAX,CLAX=。(b)SHLAX,CLAX=。(c)SARAX,CLAX=。(d)SHRAX,1AX=。(
7、e)ROLAX,CLAX=。(f)RORAX,CLAX=。(g)RCLAX,1AX=。(h)RCRAX,CLAX=。7云南农业大学工程技术学院--------------------------微机原理与应用实验报告实验二编程及汇编实验报告姓名:学号:专业:年级:一、实验目的1、了解汇编程序的基本使用方法2、熟悉程序的编辑,汇编等开发步骤二、主要实验设备1、PC机1台2、汇编程序软件1套三、实验过程及结果1、用写字板编辑以下程序(请不要录入中文注释),并在C:MASM目录下存储为jisuan.As
8、m。CRLFMACRO;建立宏指令CRLFMOVDL,0DH;显示回车(CR)MOVAH,02H;调用DOS的2号功能INT21H;启动中断MOVDL,0AH;显示换行符(CR)MOVAH,02HINT21HENDMDATASEGMENTDATA1DB33H,39H,31H,37H,34H;数据47193的ASCII码DATA2DB36H,35H,30H,38H,32H;数据28056的ASCII码DATAENDSSTACKSEGMENTSTADB20DUP(?);堆