单片机原理及应用第二章.ppt

  1. 1、本文档共125页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
第2章 MCS-51单片机指令系统与汇编语言程序设计 指令系统:一台计算机所能识别、执行的指令的集合。 机器语言:指令系统是一套控制计算机执行操作的二进制编码,称为机器语言。特点:机器语言指令是计算机惟一能直接识别和执行的指令。 汇编语言:利用指令助记符来描述指令系统的一套计算机指令。 特点:计算机的指令系统一般都是利用汇编语言描述的,是由计算机硬件设计所决定的。指令系统没有通用性。 2.1.1 汇编语言指令格式与伪指令 1.常用单位与术语 位(bit):计算机所能表示的最小的、最基本的数据单位,指一个二进制位。 字节(Byte):一个连续的8位二进制数码,1Byte=8bit。 字(Word):通常由16位二进制数码组成,即1Word=2Byte。 字长:计算机一次处理二进制数码的位数。 2.汇编语言指令格式 伪指令:汇编程序的控制命令。是程序员发给汇编程序的命令。功能:设置符号值、保留和初始化存储空间、控制用户程序代码的位置。 (1)定位伪指令ORG 格式:ORG n 其中:n——绝对地址,十六进制数、标号或表达式。 功能:规定编译后的机器代码存放的起始位置。 规定:在一个汇编语言源程序中允许存在多条定位伪指令,但每一个n值都应和前面生成的机器指令存放地址不重叠。 例如: ORG 1000H START:MOV A,#20H MOV B,#30H ┇ (2)结束汇编伪指令END 格式:[标号:] END [表达式] 功能:源程序的汇编到此结束,其后的任何内容不予理睬。放在汇编语言源程序的末尾。 (3)赋值伪指令EQU 格式:字符名称x EQU 赋值项n 功能:将赋值项n的值赋予字符名称x。程序中凡出现该字符名称x就等同于该赋值项n,其值在整个程序中有效。 规定:在使用时,必须先赋值后使用。赋值项n可以是常数、地址、标号或表达式。 (5)定义双字节伪指令DW 格式:[标号:] DW x1, x2,…, xn 功能:将双字节数据(数据组)顺序存放在从标号指定地址单元开始的存储单元中。 规定:xi——16位数值常数,先存高8位入低位地址单元。 (6)预留存储空间伪指令DS 格式:[标号:] DS n 功能:从标号指定地址单元开始,预留n个存储单元。 规定:汇编时不对预留存储单元赋值。n——数据,表达式。 注意:DB、DW、DS伪指令只能对程序存储器进行赋值和初始化工作,不能用来对数据存储器进行赋值和初始化工作。 (7)定义位地址符号伪指令BIT 格式:字符名称x BIT 位地址n 功能:将位地址n的值赋予字符名称x。 规定:程序中凡出现该字符名称x就代表该位地址。位地址n——绝对地址,符号地址。 (8)数据地址赋值伪指令DATA 格式:字符名称x DATA 表达式n 功能:把表达式n的值赋值给左边的字符名称x。 规定: n——数据或地址,包含所定义的“字符名称x”在内的表达式,但不能为汇编符号。 DATA与EQU的主要区别是:EQU必须先定义后使用,DATA无限制。 EQU ——源程序的开头,DATA——源程序的开头或末尾。 2.1.2 指令的分类 MCS-51指令系统有111条指令,分类如下: 1. 按指令字节数分类 单字节(49条),双字节(46条),3字节(16条)。 2. 按指令执行时间分类 单机器周期指令(65条)、双机器周期指令(44条)和四机器周期指令(2条)。 3. 按功能分类 数据传送指令(29条)、算术操作指令(24条)、逻辑操作指令(24条)、控制转移指令(17条)和位操作指令(17条)。 2.1.3 指令中的常用符号 MCS-51指令系统共有44种助记符,类似于8086。常用符号如下: Rn(n=0~7):工作寄存器组R0~R7中的任一个寄存器。 Ri(i=0或1):工作寄存器组中用于间址的寄存器R0, R1。 #data:8位直接参与操作的立即数。 #data16:16位直接参与操作的立即数。 direct:片内RAM的8位单元地址。 addr11:11位目的地址,主要用于ACALL和AJMP指令中。 addr16:16位目的地址,主要用于LCALL和LJMP指令中。 rel:8位二进制地址偏移量(补码),取值范围为?128~+127,主要用于相对转移指令,以形成转移的目的地址。 DPTR:数据指针,用于

文档评论(0)

word.ppt文档 + 关注
实名认证
内容提供者

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

1亿VIP精品文档

相关文档