带实例讲解的51汇编指令集
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
2007-10-17第3章M C S -51单片机指令系统和汇编语言程序实例
林耀荣
目的
介绍M C S -51的指令系统和汇编语言编程,了解处理器的软件资源
重点掌握
寻址方式
指令分类
内容
3.1 M C S -51单片机指令系统概述
3.2 寻址方式
3.3 数据传送类指令
3.4 算术运算类指令
3.5 逻辑运算及移位指令
3.6 控制转移类指令
3.7 子程序调用与返回指令
3.8 位操作类指令
3.9 汇编程序格式与伪指令
3.10 汇编程序设计示例
5
3.1 M C S -51单片机指令系统概述
指令(I n s t r u c t i o n )
指令是使处理器内部执行的一种操作,提供给用户编程使用的一种命令
指令系统(I n s t r u c t i o n S e t )
处理器能够执行的全部操作所对应的指令集合
从用户使用角度,提供给用户使用计算机功能的软件资源
决定C P U 性能
程序(P r o g r a m )
按一定要求组合起来的指令序列就构成程序
电子发烧友 电子技术论坛
6
3.1.1 指令、指令系统的概念
使用指令-编程-从指令系统中挑选指令子集
掌握指令的功能
掌握指令的使用格式
了解指令的工作原理-加深对硬件组成原理的理解
指令的属性
功能:指令对应的特定的操作功能
时间:指令执行所用的时间(机器周期)-执行时间
空间:程序存储器中占用的字节数-转移指令的偏移量计算
查表
电子发烧友 电子技术论坛
指令的描述形式
机器语言
以二进制代码来描述指令功能的语言
计算机只能识别二进制代码
不便被人们识别、记忆、理解和使用
由计算机的硬件特性决定
汇编语言
给每条机器语言指令赋予助记符号来表示的语言
便于人们识别、记忆、理解和使用的一种指令形式
和机器语言指令一一对应,由计算机的硬件特性决定
汇编:汇编语言-> 机器语言
高级语言
汇编
把汇编语言翻译成机器语言
汇编的两种方式
机器汇编
手工汇编
3.1.2 M C S -51指令系统及其指令格式
111条指令
功能
数据传送
算术操作
逻辑操作
程序转移
位操作
1
指令长度
单字节指令(49条)
双字节指令(46条)
三字节指令(16条)
指令周期
单机器周期指令(64条)
双机器周期指令(45条)
4机器周期指令(2条):乘、除法
1
1
指令组成
操作码:执行何种操作
操作数:参加操作的数或者操作数所在地址
无操作数
单操作数
双操作数
汇编语言指令格式
[标号:] 操作码助记符[目的操作数][,源操作数] [;注释]F u n 1:M O V A , R 1;A <-R 1
必须
电子发烧友 电子技术论坛
12
符号
R i 和R n :表示当前工作寄存器区中的工作寄存器,i 取0或1,表示R 0或R 1。n 取0~7,表示R 0~R 7
#d a t a :表示包含在指令中的8位立即数
#d a t a 16:表示包含在指令中的16位立即数
r e l :以补码形式表示的8位相对偏移量,范围为-128~127,主要用在相对寻址的指令中
a d d r 16和a d d r 11:分别表示16位直接地址和11位直接地址
电子发烧友 电子技术论坛
1符号
d i r
e c t :表示直接寻址的地址
b i t :表示可位寻址的直接位地址
(X ):表示X 单元中的内容
((X )):表示以X 单元的内容为地址的存储器单元内容,即(X )作地址,该地址单元的内容用((X ))表示
/ 和→符号:“/”表示对该位操作数取反,但不影响该位的原值。“→”表示操作流程,将箭尾一方的内容送入箭头所指另一方的单元中去
1
3.2 寻址方式
寻址方式
执行指令时找到所要求的操作数的方式
操作数总是存放在某一存储单元,寻找操作数所在的存储单元地址
七种寻址方式
1
立即寻址
寄存器寻址
R 0~R 7
A ,
B ,D P T R ,A B
直接寻址
内部R A M 的低128字节
S F R
寄存器间接寻址
内部R A M (@R 0,@R 1)
外部数据存储器(@R 0,@R 1,@D P T R )
基址寄存器加变址寄存器间接寻址
程序存储器(@A +D P T R ,@A +P C )
相对寻址:相对转移指令
位寻址
C ,可寻址位
1
3.2.1 立即寻址
操作数直接出现在指令中,与操作码一起存放在程序存储器中
以“#”符号作前缀
格式:
#d a t a
#d a t a 16
M O V A ,#40H
M O V D P T R ,#2100H