2第三章汇编语言程序设计.pptVIP

  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文档。上传文档
查看更多
2第三章汇编语言程序设计

最早人们只能用机器语言(二进制)编写程序; 为了方便记忆,人们开始用助记符形式的汇编语言编写程序,称为低级语言。然后再用汇编系统将其翻译成机器语言,该过程称为汇编; 为了用更接近人的语言编写程序,程序设计师们发明了高级语言,如: BASIC、FORTRAN、PASCAL、 C、JAVA 然后再用编译系统将其翻译成机器语言,该过程称为编译; 机器只能识别机器语言。所以必须用编译系统将高级语言编写的源程序编译成机器语言,用汇编系统将用汇编语言编写的源程序汇编成机器语言; 由低级或高级语言构成的程序称为源程序,由机器语言构成的程序称作目标程序; 源程序 目标程序 例1:将20H单元的两个压缩BCD码拆开变成ASCII码,存入21H、22H单元。(假设20H中的BCD码 程序设计概述--基本步骤 题意分析 画出流程图 分配内存及端口 编制源程序 仿真、调试程序 固化程序 行李计价:当G≤5,M=G×3; 当G>5,M=G×3+(G-5)×(5-3) FRT: MOV A,40H ;取行李重量计价单位G MOV R3,A MOV B,#03H ;M=G×3 MUL AB MOV R2,A ;暂存3G MOV A,R3 ;取回G CJNE A,#05H,L1 ;G≤5 ? SJMP WETC L1: JC WETC ;是,转至WETC SUBB A,#05H ;否则M=3G+2(G-5) RLC A ADD A,R2 MOV 41H,A WETC: MOV 41H,R2 ;存结果M RET 包含多次重复执行的程序段,循环结构使程序紧凑。 循环程序的构成 单重循环 简单循环结构:循环体中不套循环。 例:求n个单字节数据的累加,设数据串已在43H起始单元,数据串长度在42H单元,累加和不超过2个字节。 循环控制方法:计数控制、特征标志控制。 一.计数控制: 设循环计数器,控制循环次数。正计数和倒计数两种方式。 例:为一串7位ASCII码数据的D7位加上奇校验,设数据存放在片外RAM的2101H起始单元,数据长度在2100H单元。 二.特征控制:设定循环结束标志实现循环控制。 例:找正数表最小值。正数表存在片外RAM中以LIST为起始单元,用-1作为结束标志。 多重循环 循环体中套循环结构。以双重循环使用较多。 例将内存一串单字节无符号数升序排序。 步骤: 每次取相邻单元的两个数比较,决定是否需要交换数据位置。 第一次循环,比较N-1次,取到数据表中最大值。 第二次循环,比较N-2次,取到次大值。 … 第N-1次循环:比较一次,排序结束。 SORT: MOV A,#N-1 ;N个数据排序 MOV R4,A ;外循环次数 LOOP1: MOV A,R4 MOV R3,A ;内循环次数 MOV R0,#TAB ;设数据指针 LOOP2: MOV A,@R0 ;取二数 MOV B,A INC R0 MOV A,@R0 CJNE A,B,L1 ;比较 L1: JNC UNEX ;A≥B,不交换 DEC R0 ;否则交换数据 XCH A ,@R0 INC R0 MOV @R0,A UNEX: DJNZ R3,LOOP2 ;内循环结束? DJNZ R4,LOOP1 ;外循环结束? RET 软件延时程序。 用循环程序将指令重复多次执行,实现软件延时。 试计算延时程序的执行时间。 源程序 指令周期(M) 指令执行次数 查表程序 表格是事先存放在ROM中的,一般为一串有序的常数,例如平方表、字型码表等。 表格可通过伪指令DB来确定。 通过查表指令MOVC A,@A+DPTR MOVC A,@A+PC来实现。 子程序 子程序设计 一.子程序入口用标号作为子程序名。 二.调用子程序之前设置好堆栈。 三.用返回指令RET结束子程序,并保 证堆栈栈顶为调用程序的返回地址。 四.子程序嵌套须考虑堆栈容量。 五.提供足够的调用信息: 如:子程序名、子程序功能、入口参数和出口参数、子程序占用的硬件资源、子程序中调用的其他子程序名。 入口参数:调用子程序之前,需要传给子程序的参数。 出口参数:子程序送回调用程序的结果参数。 例:将R4R5R6中三个字节数

文档评论(0)

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

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

1亿VIP精品文档

相关文档