单片机原理与接口技术ch.pptx

  1. 1、本文档共106页,可阅读全部内容。
  2. 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
第四章 汇编指令§4.1 汇编语言概述计算机程序设计语言是指计算机能够理解和执行的语言。程序设计语言的种类很多,归纳起来有三种: 机器语言、汇编语言和高级语言。编程时采用哪种语言由程序设计语言的特点和适用场合决定。 §4.1 汇编语言概述名 称特 点缺 点优 点适用场合机器语言用机器码书写指令 不易被人们识别和读写。难写、难读、难交流 计算机可以直接识别和执行无汇编语言 用符号书写指令(用助记符表示操作码,特殊符号表示操作数) 机器不能直接识别;程序员必须了解机器的结构和指令系统,不易推广和普及;不能移植,不具备通用性 易为人们识别、记忆和读写实时控制系统 高级语言 用以英语为基础的语句编程 机器不能直接识别;执行时间长 易于推广和交流;不依赖于机器,具有通用性 科学运算和数据处理 机器语言、汇编语言和高级语言比较§4.1 汇编语言概述汇编语言(AssemblyLanguage)是面向机器的程序设计语言。在汇编语合中,用助记符代替操作码,用地址符号或标号代替地址码。这样用符号代替机器语言的二进制码,就把机器语言变成了汇编语言。于是汇编语言亦称为符号语言。使用汇编语言编写的程序,机器不能直接识别,要由一种程序将汇编语言翻译成机器语言,这种起翻译作用的程序叫汇编程序,汇编程序是系统软件中语言处理系统软件。汇编程序把汇编语言翻译成机器语言的过程称为汇编。§4.1 汇编语言概述在开发环境中编写的汇编程序,有很大一部分是面向汇编器的伪指令。伪指令是程序源代码被编译时,由编译器识别和执行的命令。伪指令是汇编编译器语法格式的一部分,它与CPU处理器无关。伪指令用于定义逻辑段、选择内存模式、定义变量类型和创建过程等。§4.1 汇编语言概述优点 汇编语言直接同计算机的底层软件甚至硬件进行交互,它具有如下一些优点:能够直接访问与硬件相关的存储器或I/O端口;能够不受编译器的限制,对生成的二进制代码进行完全的控制;能够对关键代码进行更准确的控制,避免因线程共同访问或者硬件设备共享引起的死锁;能够根据特定的应用对代码做最佳的优化,提高运行速度;能够最大限度地发挥硬件的功能。§4.1 汇编语言概述缺点 同时还应该认识到,汇编语言是一种层次非常低的语言,它仅仅高于直接手工编写二进制的机器指令码,因此不可避免地存在一些缺点: 编写的代码非常难懂,不好维护; 很容易产生bug,难于调试; 只能针对特定的体系结构和处理器进行优化; 开发效率很低,时间长且单调。§4.2 寻址方式 一、汇编指令格式 HCS12汇编语言源程序的格式: 标号: 操作码 操作数 ;注释 1. 标号 1) 可以组成标号的字符有字母(a~z,A~Z)、数字(0~9)、?、_、$及点号(.),但开头的第一个字符不能为数字; 2) 标号后必须带“:”; 3) 标号长度通常不超过16个字符; 4) 标号在程序中只能定义一次。§4.2 寻址方式 2. 操作码 不区分字母大小写。 3. 操作数 操作数可以是地址、标号或指令码定义的常数,也可以是由运算符构成的表达式。 操作数多于1个时,操作数间要用“,”分隔。 1) 常数数制前缀标号十六进制$八进制@二进制%十进制或无§4.2 寻址方式 2) “#”标识 一个常数前添加“#”标识表示一个立即数,不加“#”标识时表示一个地址。 3) “.”和“*”标识 当字符“.”和“*”标识单独用在表达式时,表示当前指令的地址。 4. 注释§4.2 寻址方式 二、寻址方式 §4.2 寻址方式 1. 隐含寻址(INH) 格式:INST 说明:指操作数隐含在指令的操作码中。 指令的操作数部分空白。 例如:INX ;操作数是寄存器X的内容 CLRA ;操作数是寄存器A的内容§4.2 寻址方式2. 立即寻址(IMM)格式:INST #opr8/#opr16说明:指操作数由指令直接给出的寻址方式。操作数带“#”号。 例如:LDAA #$15 ;$15→累加器ALDS #$02FF ;$02FF→栈指针SP§4.2 寻址方式3. 直接寻址(DIR)直接寻址为绝对地址寻址,操作数效地址紧随操作码之后。格式:INST opr8a说明:直接寻址的操作数为地址的低8位,高8位默认为$00,可对存储器的$0000~$00FF的256B地址范围进行寻址。操作数为绝对地址,不带“#”号。 §4.2 寻址方式3. 直接寻址(DIR)例如:LDAA $99 ; 地址$99中的数据→累加器A§4.2 寻址方式 4. 扩展寻址(EXT) 扩展寻址也为绝对地址寻址,其有效地址紧随操作码之后。 格式:INST opr16a 说明:扩展寻址的操作数为16位地址,可对存储器的64KB地址范围进行寻

文档评论(0)

136****1820 + 关注
实名认证
内容提供者

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

1亿VIP精品文档

相关文档