c51机器语言指令,[信息与通信]80c51单片机指令系统.doc

本文详细介绍了89C51单片机的指令系统,包括指令格式、寻址方式和各类指令,如数据传送、算术运算、逻辑移位和控制转移等。此外,还强调了汇编语言在单片机编程中的重要性,以及高级语言与汇编语言的区别和应用场合。
摘要由CSDN通过智能技术生成

[信息与通信]80c51单片机指令系统

第3章 89C51单片机的指令系统

3.1 指令概述

3.1.1 汇编语言

3.1.2 指令格式

3.1.3 指令分类

3.2 寻址方式

3.3 89C51单片机的指令系统

3.3.1 数据传送指令

3.3.2 算术运算指令

3.3.3 逻辑运算及移位指令

3.3.4 控制转移指令

3.3.5 布尔变量操作指令

3.4 综合应用举例

第3章 89C51的指令系统

学习指导:

学习和应用单片机一个很重要的环节就是理解并熟练掌握它的指令系统。通过本章的学习应达到以下的学习目标:

1.了解机器语言、汇编语言和高级语言的特点。

2.掌握汇编语言指令的基本格式,熟悉机器语言指令的格式。

3.理解89C51的7种寻址方式及相应的寻址空间,并能实际应用。

4.熟记89C51的111条汇编语言指令的形式。

5.熟悉每条指令的功能、操作的对象和结果;并会根据不同的实践需要选择合适的指令。

3.1 指令概述

指令是CPU用来执行某种操作的命令。一条指令只能完成有限的功能,为了使计算机能够完成一定复杂的功能就需要一系列的指令,计算机能够执行的各种指令的集合称为它的指令系统。计算机的总体功能是由指令系统来体现的,一般来说,若一台计算机的指令越丰富、寻址方式越多、且每条指令执行速度都较快,那么它的总体功能就越强。不同型号的计算机其指令系统也不相同。

3.1.1 汇编语言

在计算机中,所有的指令、数据都是用二进制代码来表示的。这种用二进制代码表示的指令系统称为机器语言(Machine Language),用机器语言编写的程序称为机器语言程序或“目标程序”(Object Program)。为了书写方便,二进制代码常用十六进制代码表示。对于计算机,机器语言能被直接识别并快速执行。但对于使用者,这种用机器语言编写的程序很难识别和记忆,容易出错。为了克服这些缺点,出现了汇编语言和高级语言。

用英文字符来代替机器语言,这些英文字符被称为助记符。用助记符表示指令系统的语言称为汇编语言(Assembly Language)。它由字母、数字和符号组成,又称“符号语言”。由于助记符一般都是操作功能的英文缩写,这样使程序易写、易读和易改。可见汇编语言仍是一种面向机器的语言,和CPU类别密切相关,不同CPU的机器有不同的汇编语言。本章介绍的89C51系列单片机程序都是汇编语言形式。

但是计算机不能直接识别在汇编语言中出现的各种字符,需要将其转换成机器语言,通常把这一转换(翻译)工作称为汇编。汇编可以由查表的形式手工完成,也可由专门的程序来进行,这种程序称为汇编程序。汇编后得到的机器语言程序称为目的程序或目标程序,原来的汇编语言程序称为源程序。

由于汇编语言是一种面向机器的语言,因此受到机器种类的限制,不能在不同类型的计算机上通用,这样就出现了高级语言,例如BASIC、PASCAL、C语言等。高级语言是一种面向过程的语言,这种语言更接近英语和数字表达式,易被一般用户掌握。高级语言是独立于机器的,在编程时,用户不需要对机器的硬件结构和指令系统有深入的了解。高级语言直观、易学,通用性强,易于移植到不同类型的机器上去。

计算机对高级语言不能直接识别和执行,需要转换为机器语言,因此它的执行速度比机器语言和汇编语言慢,且占用内存空间大。

因汇编语言运行速度快,占用内存空间小,且易读易记,所以在工业控制中广泛采用的是汇编语言。本章就用89C51单片机的汇编语言来描述其指令功能。

3.1.2 指令格式

1.汇编语言指令的格式

汇编语言指令的一般格式如下:

[标号:] 操作码助记符 [操作数] [;注释]

其中每条指令必须有操作码助记符,带[ ]的为可选项,可有可无。

标号是表示该指令位置的符号地址,代表该指令第一个字节所存放的存储器单元的地址。它是以英文字母开始的由1~8个字母或者数字组成的字符串,并以“:”结尾。通常在子程序入口或者转移指令的目标地址才赋标号。

操作码助记符是表示指令功能的英文缩写。它是指令的核心部分,不能缺省。例如:ADD是加法的助记符,MOV是传送的助记符。

操作数是表示指令操作所需要的操作数或者操作数的地址。指令的操作数可以是1个、2个或者3个,也可以没有。例如:NOP指令就没有操作数。操作数之间以“,”分隔,操作码与操作数之间以空格“?”分隔。

注释字段是用户给该条指令或该程序的功能说明,是为了方便阅读程序的一种标注。注释以“;”为开始。注释不影响该指令的执行。

2.机器语言指令的格式

机器语言指令是一种二进制代码,它包括两个基本部分:操作码和操作数。操作码规定了指令操作的性质,操作数则表示指令操作的对象。在89C51的指令系统中,有单字节、双字节和三字节供3种指令,它们分别占有1~3个程序存储器的单元。机器语言指令格式如图3-

1、资源项目源码均已通过严格测试验证,保证能够正常运行; 2、项目问题、技术讨论,可以给博主私信或留言,博主看到后会第一时间与您进行沟通; 3、本项目比较适合计算机领域相关的毕业设计课题、课程作业等使用,尤其对于人工智能、计算机科学与技术等相关专业,更为适合; 4、下载使用后,可先查看README.md或论文文件(如有),本项目仅用作交流学习参考,请切勿用于商业用途。 5、资源来自互联网采集,如有侵权,私聊博主删除。 6、可私信博主看论文后选择购买源代码。 1、资源项目源码均已通过严格测试验证,保证能够正常运行; 2、项目问题、技术讨论,可以给博主私信或留言,博主看到后会第一时间与您进行沟通; 3、本项目比较适合计算机领域相关的毕业设计课题、课程作业等使用,尤其对于人工智能、计算机科学与技术等相关专业,更为适合; 4、下载使用后,可先查看README.md或论文文件(如有),本项目仅用作交流学习参考,请切勿用于商业用途。 5、资源来自互联网采集,如有侵权,私聊博主删除。 6、可私信博主看论文后选择购买源代码。 1、资源项目源码均已通过严格测试验证,保证能够正常运行; 2、项目问题、技术讨论,可以给博主私信或留言,博主看到后会第一时间与您进行沟通; 3、本项目比较适合计算机领域相关的毕业设计课题、课程作业等使用,尤其对于人工智能、计算机科学与技术等相关专业,更为适合; 4、下载使用后,可先查看README.md或论文文件(如有),本项目仅用作交流学习参考,请切勿用于商业用途。 5、资源来自互联网采集,如有侵权,私聊博主删除。 6、可私信博主看论文后选择购买源代码。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值