微机接口实验指导书.docVIP

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
第 PAGE \* Arabic 10 页第 PAGE \* Arabic 10 页第 PAGE \* Arabic 10 页 实验一:熟悉8086CPU内部结构 一、实验要求 利用emu8086软件模拟8086CPU。编写程序在emu8086上运行,观察8086个寄存器的值。 二、实验目的 1、熟悉emu8086软件 2、掌握8086汇编指令 3、熟悉8086内部结构 4、熟悉8086CPU存储器结构 三、实验内容 1.安装emu8086软件,运行该软件,仔细阅读文档《emu8086中文指南》相关部分。 2.熟悉emu8086工作界面。 3.在emu8086编辑窗口中,编写一断汇编语言程序,试编写一程序计算以下表达式的值。w=(v-(x*y+z- 5))/x。设x、y、z、v的值存放在字节变量X、Y、Z、V中,结果存放在字变量W之中。   (1)执行“assembler”窗口下“compile and load in the emulator”(或者直接按F5)。运行 “Run” 按钮。查看“vars”中的运行结果。 (2)单步执行程序,观察指令在内存中执行时的CS:IP变化情况。 (2)观察AX、BX、CX 、DX、CS、IP、SS、SP、BP、SI、DI、DS、ES、各个寄存器的值。 (3)查看内存,ALU和flag变化情况。 4.认真填写实验报告。 附录:参考代码 data segment X DB 3 Y DB 3 Z DB 2 V DB 11 W DW 2 DUP(?) ends stack segment dw 128 dup(0) ends code segment start: mov ax, data mov ds, ax mov es, ax MOV Al,X MUL Y MOV CX,AX MOV Al,Z ADD CX,AX SUB CX,5 MOV Al,V SUB AX,CX DIV X MOV W,AX MOV AH,4CH INT 21H ends end start 实验二 8086系统软中断 一. 实验目的: 了解INT? 21H各功能模块的作用及用法 二. 实验要求: 1. 掌握系统软中断的调用方法 2 了解dos功能调用所完成的功能 3 掌握如何根据题目要求利用系统调用完成所需的功能 4 掌握系统调用的方法, 包括入口参数设置,功能号设置,系统调用和出口参数获得 三 实验原理 DOS功能调用与BIOS功能都通过软件中断调用。在中断调用前需要把功能号装入AH寄存器,把子功能号装入AL寄存器,除此之外,还需要在CPU的寄存器中提供专门的调用参数。一般来说,调用DOS或BIOS功能时,有以下几个步骤: (1)将调用参数装入指定的寄存器。 (2)如需功能调用号,把它装入AH。 (3)如需子功能调用号,把它装入AL。 (4)按中断号调用DOS或BIOS。 (5)检查返回参数是否正确。 四. 实验内容: 1. Int 21h AH 功能 调用参数 返回参数 1H 从键盘输入一个字符并回显在屏幕上 ? AL=字符 2H 在显示器上显示一个字符 DL=字符 0AH 键盘输入到缓冲区 DS:DX=缓冲区首址 (DS:DX)=缓冲区最大字符数 (DS:DX+1)=实际输入的字符数 09H 显示字符串 DS:DX=串地址 字符串以‘$’结尾 AL=字符 4CH 带返回码终止,返回到DOS AL=返回码 ? 分别按照以下要求编写程序 (1)输入单个字符(AH=01H) 格式: mov ah,01h int 21h 出口参数:al-输入字符的ASCII码 要求:从键盘上输入数字,并判断是否是字符 ’Y’ (2)输出单个字符(AH=02H) 格式: mov ah,02h int 21h 入口参数:dl-输出字符的ASCII码 要求:实现输出3+5的和8 注:字符转ASCII码加30h... (3)编写代码,完成输入一个字符,并显示 字符8 (4)输入字符串(AH=0AH) 格式: mov ah,0Ah int 21h 入口参数: ds:dx-缓冲区首地址 (ds:dx)=设计的最大字符数 出口参数: (ds:dx+1)=实际输入的字符数 要求:输入一个字符串(最多20个字符) (5)输出字符串(AH=09H) 格式: mov ah,09h int 21h 入口参数: · ds:dx-字符串首地址 · 字符串必须用$作为结束符 例:输出

文档评论(0)

ccccccxx + 关注
官方认证
文档贡献者

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

认证主体临沂冉通信息技术有限公司
IP属地山东
统一社会信用代码/组织机构代码
91371300MA9576790T

1亿VIP精品文档

相关文档