单片机原理与应用(胡晓毅)指令系统.pptVIP

  • 2
  • 0
  • 约4.8千字
  • 约 22页
  • 2017-12-25 发布于浙江
  • 举报

单片机原理与应用(胡晓毅)指令系统.ppt

单片机原理与接口应用 第四章 指令系统 4.1 指令格式 一、指令和指令格式 指令:是CPU根据人的意图来执行某种操作的命令。 指令系统 :一台计算机所能执行的全部指令的集合 。 8051单片机指令系统功能很强,例如,它有乘、除法指令,丰富的条件转移类指令,并且使用方便、灵活。 程序:要使计算机按照人的思维完成一项工作,就必须让CPU按顺序执行各种操作,即一步步地执行一条条的指令,这些按人的要求编排的指令操作序列称为程序。 程序设计:编排程序的过程就叫作程序设计。 程序设计语言 :分为机器语言、汇编语言和高级语言。 本章重点介绍汇编语言。 目标程序:机器语言用二进制编码表示每条指令,它是计算机能直接识别和执行的语言。用机器语言编写的程序称为机器语言程序或指令程序(机器码程序)。因为机器只能直接识别和执行这种机器码程序,所以又称它为目标程序。 例如,要做10加20的加法,在MCS—5l中可用机器码指令编程: 把10放到累加器A中 00100l00 00 010100 A加 20,结果放A中 为了便于书写和记忆,可采用十六进制表示指令码,以上两条指令可写成 74 0AH 24 14H 显然,用机器语言编写程序不易记忆、不易查错,不易修改。 汇编语言 汇编语言是用助记符、符号和数字等来表示指令的程序语言,容易理解和记忆,它与机器语言指令是一一对应的。 汇编语言不象高级语言(如BASIC)那样通用性强,而是属于某种计算机所独有,与计算机的内部硬件结构密切相关。 用汇编语言编写的程序叫汇编语言程序。 把汇编语言源程序翻译成目标程序的过程称为汇编过程,简称汇编。 完成这个任务有两种方法: ① 手工汇编: 所谓手工汇编是程序设计人员根据机器语言指令与汇编语言指令对照表,把编好的汇编语言程序翻译成目标程序。 如上述10加20的例子可写成: 汇编语言程序 机器语言程序 MOV A,#0AH 74 0AH ADD A,#14H 24 14H ② 机器汇编: 许多公司为了方便用户,编制了一些软件,能将用户编写的汇编语言源程序翻译成目标程序。 在单片机应用系统中,源程序设计好后,还要翻译成二进制机器语言的目标程序,计算机才可执行,这一过程称汇编。 反汇编: 在分析现成产品ROM/EPROM芯片中的程序时,有时要将二进制机器语言翻译成汇编语言,该过程称为反汇编。 二、指令格式 8051汇编语言指令由操作码助记符字段和操作数字段两部分组成。指令格式如下: 操作码 〔目的操作数] [,源操作数] 例如: MOV A, #OOH 操作码部分规定了指令所实现的操作功能,由2—5个英文字母表示,例如:JB、MOV、DJNZ、LCALL等。 操作数部分指出了参与操作的数据来源和操作结果存放在什么空间单元。操作数可以直接是一个数(立即数),或者是一个数据所在的空间地址,即在执行指令时从指定的地址空间取出操作数。 操作码和操作数都有对应的二进制代码,指令代码由若干字节组成。 805l指令系统中,有一字节、两字节或三字节指令。 (1) 一字节指令 一字节指令中的8位二进制代码既包含操作码的信息,也包含操作数的信息。如:INC A 805l单片机共有49条一字节指令。 (2) 双字节指令用一个字节表示操作码,另一个字节表示操作数或操作数所在的地址: 其指令格式为: 操作码 立即数或地址 如:MOV A, #00H 8051中有45条双字节指令。 (3) 三字节指令一个字节操作码,两个字节操作数。 其格式如下: 操作码 立即数或地址 立即数或地址 8051单片机共有三字节指令17条 如:MOV 90H, #00H 2 伪指令 伪指令不是真正的指令,无对应的机器码,在汇编时不产生目标程序(机器码),它只是用来对汇编过程进行某种控制。 标准的MCS—5l汇编程序(如Intel的ASM51)定义的伪指令常用的有以下几条: (1)

您可能关注的文档

文档评论(0)

1亿VIP精品文档

相关文档