嵌入式微机原理.docVIP

  1. 1、本文档共7页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  5. 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  6. 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  7. 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  8. 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
嵌入式微机原理

《嵌 入 式 微 机 原 理 实验二 分支结构程序设计 实验目的 掌握分支结构程序设计的基本方法。 掌握无符号数和带符号数比较大小转移指令的区别。 熟悉典型指令的功能及其应用。 实验内容 在数据区中定义3个带符号字节变量。 编写程序将其中的最大数找出并送到MAX单元中。 编程思路 该题目采用分支程序设计方法,为了实现指定功能,应从以下3个方面考虑: 初始化数据存储区:在内存设定3个字节变量和一个MAX单元,分别保存3个字节数据和最终结果。 3个数据的比较:先将第一个数送到AL寄存器,与第二个数进行比较,两个数据中的大数送AL保存,然后再与第三个数进行比较,大数依然保存到AL中,这样两两比较后,AL的内容就是3个数中的最大数,将其送到MAX单元中即可。 程序中要确定带符号数比较大小转移时应选择哪一组条件转移指令,以满足题目要求。 实验参考程序 本实验的参考程序设计如下: DATA SEGMENT ;数据段定义 X DB -50 ;X定义为字节数据,赋初值-50 Y DB 100 ;Y定义为字节数据,赋初值100 Z DB 40 ;Z定义为字节数据,赋初值40 MAX DB ? ;MAX定义为字节数据,预留空间 DATA ENDS CODE SEGMENT ;代码段定义 ASSUME DS:DATA,CS:CODE ; IP,CS,DS=()? START: MOV AX,DATA ;初始化DS. IP =()? MOV DS,AX MOV AL,X ;取X到AL中 CMP AL,Y ;X和Y比较 JG NEXT ;如XY转NEXT. IP =()?. MOV AL,Y ;否则Y取到AL中 CMP AL,Z ;Y和Z比较 JG EXIT ;如YZ转EXIT. IP =()? MOV AL,Z ;否则Z取到AL中 JMP EXIT ;无条件跳转到EXIT. IP =()? NEXT: CMP AL,Z ;X和Z比较 JG EXIT ;如XZ转EXIT. IP =()? MOV AL,Z ;否则Z取到AL中 EXIT: MOV MAX,AL ;AL中内容送到MAX单元 MOV AH,4CH ;返回DOS INT 21H CODE ENDS END START ;汇编结束 实验三 单循环结构程序设计 实验目的 熟悉单循环结构程序设计的方法,注意循环的初始值设定和退出循环的条件。 掌握在无符号字节整数数组中找出最小数的程序设计方法,注意数组指针的应用。 熟悉典型指令的功能及其应用。 实验内容 要求从内存中BUF单元开始存放的10个无符号字节整数数组中找出最小数,将其值保存在AL寄存器中。 注意数组中每个数据地址的变化,合理选用相关指令。 编程思路 该题目要求掌握单循环程序设计的方法,为了实现相关功能,应从以下3个方面考虑: 确定数组中数据的起始地址,采用地址指针的变化进行合理指向。 设定单循环结构中的初始入口、循环体、判断条件等。 由于已知循环的次数,可确定计数器使用,选择LOOP指令实现规定功能。 实验参考程序 本实验的参考程序设计如下: DATA SEGMENT BUF DB 12H,35H,61H,01H,52H,8AH,0FFH,10H,2BH,3FH CN EQU $-BUF ;定义数组指针变量 DATA ENDS CODE SEGMENT ASSUME CS:CODE,DS:DATA; IP,CS,DS=()? START: MOV AX,DATA MOV DS,AX MOV BX,OFFSET BUF ;取数组偏移地址. BX =()? MOV C

文档评论(0)

haihang2017 + 关注
实名认证
文档贡献者

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

1亿VIP精品文档

相关文档