第4章80C51单片微机的程序设计[m].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文档。上传文档
查看更多
第4章80C51单片微机的程序设计[m]

实验一 清零、移数、判断;实验报告要求: 1.写明实验日期、桌号 2.写明实验要求; 3.编程,加标注 4.写出调试过程,遇到的问题及解决方法 5.总结实验目的,写出收获体会; 第四章 80C51单片微机的程序设计 ;4.1概述 ● 汇编语言格式 ● 伪指令语句 4.2 80C51汇编语言程序设计 ● 顺序结构程序设计 ● 分支结构程序设计 ● 循环结构程序设计 ● 子程序设计 ● 程序设计举例;4.1概述 4.1.1 汇编语言格式 ;例:把片外存储器2200H单元中的数送入片内70H单元中。 标号域 操作码域 操作数域 注释域 BEGIN:MOV DPTR,#2200H ;(DPTR)=2200H MOV R0,#70H ;(R0)=70H MOVX A,@DPTR ;(A)=((DPTR)) MOV @R0,A ;((R0))=(A) ; 伪指令:仅在汇编时起控制作用,是为??编服务的一些指令。 伪操作:由伪指令确定的操作称为伪操作。 “伪”体现在汇编时不产生机器指令代码,不影响程序的执行,仅指明在汇编时执行一些特殊的操作。 ;⒈ ORG (Origin) 汇编起始地址伪指令 指令格式为: ORG <表达式> 例: ORG 1000H START:MOV A,#12H ⒉ END(END of assembly) 汇编结束伪指令 一定放在程序末尾! ⒊ EQU(EQUate)赋值伪指令 指令格式为:<标号> EQU <表达式> 含义:把表达式赋值于标号,标号和表达式都是不可少。 例: AA EQU 30H K1 EQU 40H MOV A,AA ; (30H)→A MOV A,K1 ;(40H)→A;4、DB (Define Byte) 定义字节伪指令 指令格式为:<标号> DB <表达式或表达式表> 例: ORG 2000H TABLE: DB 73H,04,100,32,00 5、 DW (Define Word) 定义字伪指令 指令格式为:<标号> DW <表达式或表达式表> 例:DW 100H,3456H,814 表示按顺序存入01H,00H,34H,56H,03H,2EH (DB、DW定义的表一般数的个数不得超过80个);6 、DS (Define Storage) 定义存储区伪指令 指令格式为:标号 DS 表达式 含义:通知汇编程序,在目标代码中,以标号为首地址保留表达式值的若干存储单元以备源程序使用。汇编时,对这些单元不赋值。 例: BASE DS 100H 注意:DB、DW、DS等伪指令只能应用于程序存储器, 不能用于数据存储器。 7、 BIT 位定义伪指令 命令格式为:字符名称 BIT 位地址 含义:给字符名称赋予位地址。例:RED BIT P1.0 SETB RED;例1. 伪指令应用 ORG 8100H BUFFER DS 10H DW “A B” DW 100H,1ACH,-814 说明:① 从8100H至810FH为缓冲区空间 ② (8110H)=41H (‘A’) (8111H)=42H (‘B’) ③ 8112H单元起存放01H、00H、01H、ACH、FCH、D2H ; 4.2 80C51汇编语言程序设计 ;⑷ 汇编和调试; 流程图符号和说明: ;ORG 0030H START:MOV DPTR, #TABLE MOV A, 20H MOVC A, @A+DPTR MOV 21H, A SJMP $ ORG 0100H TABLE:DB 0,1,4,9,16,25 END; 设被加数存放于片内RAM的20H(低位字节)、21H(高位字节),加数存放于22H(低位字节)和23H(高位字节),运算结果的和数存放于20H(低位字节)和21H(高位字节)中。实现16位相加,(如果有进位位保存在10H中)。 ORG 0100H ADD_2:PUSH ACC ;将A中内容进栈保护 MOV R0,#20H ;将20H地址送R0

文档评论(0)

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

分享好文档!

1亿VIP精品文档

相关文档