80C51汇编语言.ppt

  1. 1、本文档共54页,可阅读全部内容。
  2. 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
80C51汇编语言

第4章 80C51的汇编语言程序设计 单片机应用系统由硬件系统和应用程序构成 4.1 程序编制的方法和技巧 任务分析 流程图符号 强化模块观念 标号(即符号地址) 操作数 4.3 基本程序结构 一般不影响标志寄存器PSW的状态。 4.3 基本程序结构 (无分支、无循环) (单分支、双分支、多分支) (2种:先执行,后判断;先判断,后执行) 4.4 子程序及其调用 减法子程序 编写多字节无符号数的减法子程序 设2个多字节无符号数的低字节地址分别存于R0R1中,低字节在高地址单元。相减后的差存放在减数原来的位置 子程序入口:(R0)=被减数低字节地址 (R1)=减数低字节地址 (R7)=字节数 子程序出口: (R1)=差的高字节地址(起始地址) NSUB: CLR C NSUB1:MOV A, @R0 SUBB A,@R1 MOV @R1,A DEC R0 DEC R1 DJNZ R7,NSUB1 INC R1 RET 乘法子程序 编写双字节无符号数的乘法子程序 设双字节的无符号被乘数存放在R2、R3中,乘数存放在R4、R5中,R0指向积的高字节 子程序入口:( R2、R3)=被乘数 (R4、R5)=乘数 (R0)=预存放积的低字节的单元地址 子程序出口: (R0)=积的高字节的单元地址 MOV A, R2 MOV B, R5 MUL AB INC R0 INC R0 ACALL RADD MOV A, R2 MOV B, R4 MUL AB INC R0 ACALL RADD INC R0 RET MOV A, R3 MOV B, R5 MUL AB ACALL RADD MOV A, R3 MOV B, R4 MUL AB INC R0 ACALL RADD 查表子程序 利用子程序实现c=a2+b2 设a、b、c分别存放于内部RAM的30H、31H、32H单元中 子程序入口:(A)=预平方数 子程序出口:(A)=平方值 SQR: MOV DPTR, #TAB MOVC A, @A+DPTR RET TAB:DB 0,1,4,9,16,25,36,49,64,81 十六进制数转换为ASCII码 将1位十六进制数(即四位二进制数)转换为相应 的ASCII码。设十六进制数存放在R0中,转换后的ASCII码存放在R2中 子程序入口:(R0)=十六进制数 子程序出口:(R2)=ASCII码 十六进制数转换为ASCII码 多十六进制数转换为ASCII码。 子程序入口:(R0)=十六进制数低字节地址 (R2)=字节数 子程序出口:(R0)=十六进制数高字节地址 (R1)=ASCII码的高位地址 MOV A,@R0 ANL A,#0FH ADDC A,#16 MOVC A,@A+PC MOV @R1,A INC R1 MOV A,@R0 SWAP A ANL A#07H ADD A,#7 MOVC A,@A+PC MOV @R1,A INC R0 INC R1 DJNZ R2,LP DEC R1 RET ASC:DB 30H,31H,32H--- 二进制数与十进制数之间的转换 双字节二进制数转换为BCD码 设(R2R3)为双字节二进制数,(R4R5R6)为转换完的压缩型BCD码 子程序入口:(R2R3)=十六位二进制数 子程序出口:(R4R5R6)=转换完的压缩型BCD码 D=b15*215+b14*214+…+b1*2+b0 =(((b15*2)+b14)*2+…+b1)*2+b0 =((((0*2+b15)*2)+b14)*2+…+b1)*2+b0 CLR A MOV R4,A MOV R5,A MOV R6,A MOV R7,#16 CLR C MOV A,R3 RLC A MOV R3,A MOV A,R2 RLC A MOV R2,A 延时子程序 1m延时子程序 4.5 简单I/O设备的并口直接驱动示例 验证程序段 MAIN:MOV A,20H ; SWAP A PUSH ACC ;预转换的数据(在低半

文档评论(0)

yan698698 + 关注
实名认证
内容提供者

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

1亿VIP精品文档

相关文档