网站大量收购独家精品文档,联系QQ:2885784924

[工学]第三章 80C51单片机的指令系统.ppt

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

§3.1 MCS51单片机汇编语言与指令格式 由于构成计算机的电子器件特性所决定, 计算机只能识别二进制代码。 这种以二进制代码来描述指令功能的语言, 称之为机器语言, 用机器语言组成的程序, 称为目标程序。 计算机就是按照机器语言的指令来完成各种功能操作的, 它具有程序简捷、 占用存储空间小、 执行速度快、 控制功能强等特点。 3.1.1单片机的汇编语言 解释程序 什么是汇编语言(1) 汇编语言是一种面向机器的低级程序设计语言 汇编语言以助记符形式表示每一条计算机指令 助记符(mnemonic)是便于人们记忆、并能描述指令功能和指令操作数的符号 助记符一般就是表明指令功能的英语单词或其缩写 什么是汇编语言(2) 用助记符表示的指令就是汇编语言中的汇编格式指令 汇编格式指令以及使用它们编写程序的规则就形成汇编语言(Assembly Language) 用汇编语言书写的程序就是汇编语言程序,或称汇编语言源程序 汇编程序将汇编语言程序“汇编”成机器代码目标模块 什么是汇编语言(3) 汇编语言的主要特点: 汇编语言程序与处理器指令系统密切相关 程序员可直接、有效地控制系统硬件 形成的可执行文件运行速度快、占用主存容量少 汇编语言和高级语言(1) 汇编语言与处理器密切相关 ↘ 汇编语言程序的通用性、可移植性较差 高级语言与具体计算机无关 ↗ 高级语言程序可以在多种计算机上编译后执行 汇编语言和高级语言(2) 汇编语言功能有限、涉及硬件细节 ↘ 编写程序比较繁琐,调试起来也比较困难 高级语言提供了强大的功能,不必关心琐碎问题 ↗类似自然语言的语法,易于掌握和应用 汇编语言和高级语言(3) 汇编语言本质上就是机器语言 ↗ 可以直接、有效地控制计算机硬件 ↗ 易于产生速度快、容量小的高效率目标程序 高级语言不针对具体计算机系统 ↘ 不易直接控制计算机的各种操作 ↘ 目标程序比较庞大、运行速度较慢 汇编语言和高级语言(4) 汇编语言的优点: 直接控制计算机硬件部件 可以编写在“时间”和“空间”两方面最有效的程序 汇编语言的缺点: 与处理器密切有关 需要熟悉计算机硬件系统、考虑许多细节 编写繁琐,调试、维护、交流和移植困难 汇编语言和高级语言(5) 汇编语言的优点使得它在程序设计中占有重要的位置,是不可被取代的 汇编语言的缺点使得人们主要采用高级语言进行程序开发工作 有时需要采用高级语言和汇编语言混合编程的方法,互相取长补短,更好地解决实际问题 汇编语言的应用场合 程序要具有较快的执行时间,或者只能占用较小的存储容量 程序与计算机硬件密切相关,程序要直接、有效地控制硬件 大型软件需要提高性能、优化处理的部分 没有合适的高级语言、或只能采用汇编语言的时候 分析具体系统尤其是该系统的低层软件、加密解密软件、分析和防治计算机病毒等等 3.1.2 机器指令的编码格式 一、单字节指令 1、8位编码仅为操作码: 如:INC A 该指令的编码为:0000 0100B,其十六进制表示为04H,累加器A隐含在操作码中。指令的功能是累加器A的内容加1。 注意:在指令中用“A”表示累加器,而用“ACC”表示累加器对应的地址(E0H)。 2.8位编码含有操作码和寄存器编码 高5位为操作码,低3位为存放操作数的寄存器编码。如:MOV A,R0 编码为1110 1000B,其十六进制表示为E8H(低3位000为寄存器R0的编码)。功能是将当前工作寄存器R0中的数据传送到累加器A中。 二、双字节指令 第一字节表示操作码,第二个字节表示参与操作的数据或数据存放的地址。 如:MOV A,#50H 编码为0111 0100B,0101 0000B。其十六进制表示为74H,50H。功能是将立即数“50H”传送到累加器A中。 三、三字节指令 指令的第一字节表示该指令的操作码,后两个字节表示参与操作的数据或数据存放的地址。如:MOV 20H,#50H 编码为0111 0101B,0010 0000B,0101 0000B。其十六进制表示为75H,20H,50H。功能是将立即数“50H”传送到内部RAM 的20H单元中。 3.1.2 符号指令的格式 一般格式为: 操作助记符 [目的操作数][,源操作数][;注释] 多数指令为两操作数指令;当指令操作数隐含在操作助记符中时,在形式上这种指令无操作数;另有一些指令为单操作数指令或三操作数指令。指令的一般格式中使用了可选择符号“[ ]”,包含的内容因指令的不同可以有或无。 在两个操作数的指令中,通常目的操作数写在左边,源操作数写

文档评论(0)

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

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

1亿VIP精品文档

相关文档