[高等教育]单片机第4章.ppt

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

4.1.1 程序设计语言 三大类: 机器语言 用二进制编码(机器码)指令表示的机器能直 接执行的语言 汇编语言 用助记符、符号地址、标号符号指令代替机器 码指令的语言。 由汇编语言编写的用户程序------------汇编语言源程序 用于将汇编语言源程序编译成机器语言程序的工具软件 ---------汇编程序。 高级语言 面向过程和问题的接近人们自然语言和常用数 学表达方式的语言。 高级语言都有编写源程序和编译两个过程(BASIC除外) 上述三种语言中 机器语言和汇编语言几乎是一类机器一种形式,高级语言则是独立于机器的通用语言,然而机器语言和汇编语言对于本专业则是最常用的。 4.1.2 汇编语言格式 1 语句的格式 格式 标号:操作码 操作数 ;注解 “标号:” 段可有可无,用于表示指令的地址 “操作码” 段用缩略英文字助记符代表指令的操作 “操作数” 段由二、十、十六进制数或符号地址表 示 参与操作的数(见P83) 操作数常有两部分中间由“,”分隔即 “第一操作数,第二操作数” “;注解” 段可有可无,用于说明指令的操作 2 机器语言和汇编语言的形式 地址栏指令首字节存放的地址,也是“标号”(要是有的话)的实际地址 如表中ADD A,#0AH的首地址为2002H,即指令240AH的24H存放在2002H单元中0AH存放在2003H单元 标号“START”实际地址就是2000H 符号“$”代表本指令位置 指令SJMP $常用于表示程序到此停止 其机器码80FEH中的FEH=2006H-2006H-2即 -2 的补码形式 4.1.3 汇编语言的构成 汇编语言由两种语句构成 1 指令性语句(助记符指令语句) 编译后产生机器码的语句也即是指令系统中指令的助记符形式(第三章介绍的指令) 2 指示性语句(伪指令语句) 供汇编程序使用的编译后不产生机器码的语句,又称伪指令 常用的八个伪指令 ORG 16位地址或标号 (起始语句) 表示后续指令编译后由“16位地址或标号”所指定的位置开始存放 END (源程序结束语句) 表示程序到此结束 字符名 EQU 数据或汇编符 (变量赋值) 对指定“字符名”赋值,表示后续用到的“字符名”由“数据或汇编符” 替换。所以本语句应出现在程序的开头。 字符名 DATA 表达式 (变量赋值) 本指令与EQU类似,用于对指定“字符名”赋值,表示程序中 用到的“字符名” 将被替换为“表达式” 这里“表达式”不能是汇编号(如R0~R7) DB 项或项表 (8位表格赋值) 由当前位置开始存放一组8位二进制数 DW 项或项表 (16位表格赋值) 由当前位置开始存放一组16位二进制数(按高字节在前, 低字节在后次序) DS 表达式 (预留空间) 由当前位置开始保留指定数量的一段存储空间 字符名 BIT 位地址 (位地址赋值) 对“字符名”赋以一个位地址 例: ORG 1000H 1000 78 50 START:MOV R0,#50H 1002 79 80 MOV R1,#80H 1004 7A AA MOV R2,#0AAH 1006 7B BB MOV R3,#0BBH 1008 74 FF MOV A, #0FFH 100A F6 MOV @R0, A 100B 74 0F MOV A, #0FH 100D 5B ANL A, R3 100E 04 INC A 100F FC MOV R4, A 1010 80 FE REP: SJMP REP 1012 20 30 40 TB: DB 20H,30H,40H 1015 -- -- --…-- -- DS 10 ↑ END 预留10个单元 说明: 1 源程序起始有ORG语句,结束有END语句 2 程序存放于1000H开始 3 编译到DB语句时的地址为1012H则数表 20H,30H,40H由此开始存放至1014H 4 自1015H开始留10个单元 5 SJMP 语句的偏移量用符号地址REP 这里的源地址为1010H入口地址也是1010H 实际偏移量REL=1010—1010—2= —2(补码为FEH) 6 本程序共有31个字节长(1000H~101EH) 4.2 源程序的设计与汇编 4.2.1 程序设计步骤 一般程序设计围绕下面几个问题: 要做什么? (任务书) 用何方法做? (

文档评论(0)

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

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

1亿VIP精品文档

相关文档