单片微机原理及应用课件第四章汇编语言程序设计.pptVIP

单片微机原理及应用课件第四章汇编语言程序设计.ppt

  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文档。上传文档
查看更多
单片微机原理及应用课件第四章汇编语言程序设计

第4章 汇编语言程序设计 ;4.1 汇编语言基本概念;4.1.1 程序设计语言 ;;4.1.2 汇编语言的语句结构 ;汇编语言及汇编过程; 汇编程序的汇编过程 汇编有两种方法:手工汇编、机器汇编。 ;源程序 ; 两次扫描过程。 第一次扫描:检查语法错误,确定符号名字; 建立使用的全部符号名字表; 每一符号名字后跟一对应值(地址或 数)。 第二次扫描:是在第一次扫描基础上,将符号地址转 换成地址(代真); 利用操作码表将助记符转换成相应的目 标码。;;;;信息表示方法: 二进制(B) 十六进制(H) 十进制(D或无字尾) PC现行值($) ASCII码(‘ ’) 指令标号等。 为区分数字和字符,凡数字以0~9开头。 如:MOV A,#0A4H 4、注释段 为了便于阅读和交流,对程序进行注释。汇编时对注释部分不予理会。;4.1.3 伪指令 ; 2.EQU:赋值(或等值指令); 3.DB:定义字节数据(Define Byte); 4.DW:定义字数据 (Define Word); 5.DS:定义存储区(Define Store); 6.BIT:位定义;7. DATA 数据地址赋值指令;8.END:汇编结束 源程序结束指令。在END以后所写的指令,汇编程序都不予处理。一个源程序只能有一个END指令,放在程序结尾。;;4.2 汇编语言程序设计;4.2.1 汇编语言程序设计步骤;流程图符号;语句 3;4.2.2 顺序程序 ;结束;;4.2.3 分支程序 ;条件满足?;;;; 3.多向分支程序设计举例;K=?;;小结: 1、汇编程序有哪三种基本结构? 2、构成分支程序,常用到哪些判断语句? ; 4.2.4 循环程序 ;循环结构不但使程序简练,而且大大节省存储空间。 循环程序包含四部分: 1、初始化部分 (循环计数器、变量置初值) 2、循环处理部分(主体,需要重复执行的部分) 3、循环控制部分(修改地址指针、修改变量、检测          循环结束条件) 4、循环结束部分(对结果分析、处理,存放结果);先处理,后判断: ;; 2.循环程序设计举例;A=0?; 参考源程序如下:;多重循环设计 循环体中还包含着一个或多个循环结??,即双重或多重循环。 【例4.5】设8031使用12MHz晶振,试设计延迟100ms的延时程序。;2、多重循环设计 循环体中还包含着一个或多个循环结构,即双重或多重循环。 例4.6 设8031使用12MHz晶振,试设计延迟100ms的延时程序。;内循环延时: (1 + 2 × CTR)T = 500us(假设)    则CTR = 250 实际延时:[1 + 2 × 250] × 1us = 501us ? 外循环延时:T +(501 + 2T)× CTS = 100ms = 100 000us    所以 , CTS = 198.8 取 199   实际延时:[1 + (501 + 2)×199] = 1000.98ms ; 4.2.5 子程序 ;RET;LCALL A ; 2.子程序设计举例;;;4.2.6 位操作程序 ;P3.1 P1.1 30H 31H RS1 RS0;(P3.1? P1.1 ) ?[(30H + 31H) ? RS1] ? RS0= P1.0;软件实验一 S1.ASM; 一、实验要求;软件实验二 S2.ASM; 二进制到BCD 码转换; 二进制到ASCII码转换;软件实验三 S3.ASM;软件实验四 内存块移动 S4.ASM;软件实验5 数据排序;; 用冒泡法对数进行排序(由小到大) 思路:将相邻两数比较,将小的数调到前面。 ;这就是所谓的“冒泡法”。 经第一趟(共3次),已得到最大数09。然后,进行第二趟比较 ,对余下的前面3个数按上法进行比较。 第一趟要进行两两比较3次。 第二趟要进行两两比较2次。 如有N个数,则要进行N-1次比较。;软件实验5 数据排序 S5.ASM;THANK YOU VERY MUCH !

文档评论(0)

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

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

1亿VIP精品文档

相关文档