第3章 mcs-51系列单片机指令系统

第3章 mcs-51系列单片机指令系统

ID:22028954

大小:701.00 KB

页数:204页

时间:2018-10-26

第3章  mcs-51系列单片机指令系统_第1页
第3章  mcs-51系列单片机指令系统_第2页
第3章  mcs-51系列单片机指令系统_第3页
第3章  mcs-51系列单片机指令系统_第4页
第3章  mcs-51系列单片机指令系统_第5页
资源描述:

《第3章 mcs-51系列单片机指令系统》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库

1、第3章MCS-51系列单片机指令系统程序由指令组成,所有指令的集合称为指令系统,它是表征计算机性能的重要指标。本章内容包括指令的分类和指令的格式、MCS-51的寻址方式、常用指令和伪指令以及应用。3.1指令系统概述一台单片机能正常工作,仅有硬件系统是不够的,还必须包括有相应的软件系统,这样才能充分发挥其运算和控制功能。单片机的功能是将从外界接受到的信息,在CPU中进行加工、处理,然后再将结果送往外界,要完成这一系列操作,必须有一套具有特定功能的指令(Instruction)。指令是CPU用于控制功能部件完成某一指定动作的指示和命令。一

2、台微机所具有的所有指令的集合,就构成了指令系统(InstructionSet)。不同的机型有不同的指令系统,指令系统越丰富,说明CPU的功能越强。例如,Z80CPU中没有乘法和除法指令,要进行乘法和除法运算,必须用软件来实现,因此执行速度相对较慢,而MCS-51单片机提供了乘法和除法指令,实现这两种运算要快得多。3.1.1指令的表达形式单片机通过运行程序才能完成相应任务,程序中最基础的部分是计算机的指令。指令有两种表达形式:机器码指令和汇编语言指令。1.机器码指令:由二进制代码用一组“0”和“1”二进制编码来表示一条指令,又称二进制代

3、码指令,它是唯一能被计算机直接识别和执行的指令格式。但是由于这种机器代码不够直观,难以记忆和使用,因此编程人员通常不直接使用它来编写程序。例如二进制代码指令“00101000”{用十六进制表示为“28H”},所要完成的操作是将寄存器R0的内容和累加器A的内容相加,和送入A。这是一条单字节的机器码指令。2.汇编语言指令汇编语言指令是用英文单词或缩写来表示的指令的形式,又成为助记符指令。这种表达形式比较直观,容易记忆,易于编程和阅读。编程人员主要使用汇编语言指令编写程序。但汇编语言指令不能被计算机硬件直接识别和执行,必须通过汇编程序把它翻

4、译成机器码指令才能被计算机执行MCS-5l系列单片机的指令系统具有优化字节效率、执行速度快、功能齐全等特点。MCS-5l单片机的指令系统具有255种操作代码的集合,用汇编语言表示这些指令代码时,只需要记住42种助记符,就能表示33种指令功能。根据指令的助记符和操作数的寻址方式相结合,MCS-5l单片机共有111条指令,同一指令还可以派生出多条指令。在这111条指令中,从指令的存储空间上来看,其中49条是单字节指令,45条是双字节指令,17条是三字节指令,这样可以提高程序存储器的存储效率。对于大多数算术、逻辑运算和转移指令,可具体选用不

5、同地址空间的指令来实现,以提高运算速度和编程效率,并可节省存储空间。从指令的执行时间来看,单周期指令有57条,双周期指令有52条,四周期指令有两条。3.1.2指令格式1.汇编语言指令格式汇编语言指令格式为标号:该语句的符号地址,可以由编程人员根据需要而设置,可有可无。当汇编程序对源程序进行汇编时,再以该指令所在的地址来代换标号。标号便于查询、修改以及转移指令的编程。标号通常用于转移和调用指令的目标地址。标号由1~8个字符组成,第一个字符必须是英文字,不能是数字或其它符号,其余的可以使其他符号或数字,标号和操作码之间的分隔符号后必须用冒

6、号。操作码:规定了指令的性质和功能,用单片机所规定的助记符来表示,表示单片机作何种动作,表明指令的操作种类,如MOV表示数据传送操作,SUBB表示减法操作等。操作数:说明参与操作的数据或该数据所存放的地址。MCS-51指令系统中,操作数一般有以下几种形式:没有操作数项,操作数隐含在操作码中,如RET指令;只有一个操作数,如CPLA指令;有两个操作数,如ADDA,#00H指令,操作数之间以逗号相隔;有三个操作数,如CJNEA,40H,LOOP指令,操作数之间以逗号相隔。不同功能的指令,操作数的个数和作用也不同。例如,指令中若有两个操作数

7、,写在左面的称为目的操作数(表示操作结果存放的单元地址),写在右面的称为源操作数(指出操作数的来源)。注释:是对指令的解释说明,用以提高程序的可读性;注释前必须加分号。2.机器码指令格式机器码指令包括操作码和操作数两个基本部分。不同指令翻译成机器码后字节数也不一定相同。按照机器码个数,指令可以分为以下三种:其中:单字节指令:只有1个字节的操作码,无操作数,在程序存储器中只占1个存储单元。例如指令RET其机器码为22H。这种指令只有机器码,是一种特殊的无操作数的指令。例如指令MOVA,R1,操作数有两个(A和R1),但机器码为E9H,也

8、是单字节指令,操作数的信息背阴旱灾机器码中。在汇编语言指令中,以下几种操作数的信息会被隐含在操作码中:累加器A,工作寄存器R0`~R7,寄存器DPTR.双字节指令:包括2个字节,第1个字节为操作码,第2个字节为操作数,在

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。