3_mcs-51单片机的汇编语言指令系统_第1页
3_mcs-51单片机的汇编语言指令系统_第2页
3_mcs-51单片机的汇编语言指令系统_第3页
3_mcs-51单片机的汇编语言指令系统_第4页
3_mcs-51单片机的汇编语言指令系统_第5页
已阅读5页,还剩98页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

课件制作:高惠芳第 3章 MCS-51单片机的汇编语言指令系统3.1 指令格式及其符号说明单片机 汇编语言 :助记符语言单片机的 指令 :是 CPU用于控制功能部件完成某一指定动作的指示和命令 指令系统 :单片机全部指令的集合111条指令,实现 51种基本操作3.1.1 指令格式指令格式:指令的表示方法两部分操作码:用来规定指令进行什么操作操作数:指令操作的对象 汇编语言指令格式标号 : 操作码助记符 目的操作数 ,源操作数 :注释 指令的符号地址 确定指令进行何种操作 指令操作 的对象 指令操作 的对象 对指令功能的说明 注意:注 释编写的时候要注意一定要以分号 “; ”开始。3.1.1 常用符号说明1、单字节指令指令的指令代码只有一个字节,操作码和操作数信息同在其中。如: INC DPTR1010 0011MOV A, Rn1110 1rrr一字节指令 49条3.1.3 指令的字节 无操作数含有操作数2、双字节指令包括二个字节,其中第一个字节为操作码,第二个字节为操作数如: MOV A, #data指令代码: 0111 0100立即数双字节指令共 45条3、三字节指令三 字节指令中,操作码占一个字节操作数占两个字节操作数既可能是数据,也可能是地址如: ANL direct , #data0101 0011直接地址立即数三 字节指令共 17条3.2 单片机寻址方式寻址:就是如何得到操作数的所在单元的地址3.2.1 立即寻址方式操作数在指令中直接给出,出现在指令中的操作数称为立即数如; MOV A, #dataMOV A, #3AHMOV DPTR , #data163.2.2 直接寻址方式操作数直接以单元地址的形式给出如: MOV A, 3AH寻址范围:( 1)内部 RAM低 128单元( 2)特殊功能寄存器例如:MOV A , 50HMOV A , P1MOV A, 90H上面指令中的 50H、 P1、 90H均是直接寻址方式。3.2.3 寄存器寻址方式操作数在寄存器中MOV A, R0寻址范围:( 1)工作寄存器: 4组 R0R7( 2) 部分特殊功能寄存器:如 A、 B、 DPTR等3.2.4 寄存器间接寻址方式寄存器中存放的是操作数的地址,即操作数是通过寄存器间接得到的如: MOV A, R0寻址范围:( 1)内部 RAM低 128单元( 2)外部 RAM 64KB 如 MOVX A, DPTR( 3) 外部 RAM的低 256单元( 4)堆栈操作指令( PUSH、 POP), 以堆栈作间址寄存器的间接寻址方式如: MOV A, R03.2.5 变址寻址方式变址寻址是为了访问程序存储器中的数据表格如; MOVC A, A+DPTR把 DPTR和 A的内容相加,再把所得到的程序存储器地址单元的内容送 A假定指令执行前( A) =02H,( DPTR) =0100H则操作数地址为 0100H+02H=0102H假定指令执行前( A) =02H,( DPTR) =0100H则操作数地址为 0100H+02H=0102H故指令执行的结果是 A的内容为 38HROM寻址方式说明:( 1)只能对程序存储器进行寻址,寻址范围 64KB( 2) 变址寻址的指令只有 3条:MOVC A, A+DPTRMOVC A, A+PCJMP A+DPTR( 3) 变址寻址的指令都是一字节指令3.2.6 相对寻址方式为 解决程序转移而专门设置的,为转移指令所采用目的地址 =转移指令地址 +转移指令字节数 + rel偏移量 rel是一个带符号的 8位二进制补码数,表示的数的范围是: -128+1273.2.7 位寻址方式位 处理功能,可以对数据位进行操作如: MOV C, 3AH把 3AH位的状态送进位位 C寻址范围:( 1)内部 RAM中的位寻址区单元地址为 20H2FH, 共 16个单元 128位,位地址是 00H7FH( 2) 专用寄存器的可寻址位可供寻址的专用寄存器共有 11个,实有寻址位 83位寻址位在指令中的 4种表示方法:( 1)直接使用位地址。例如 PSW 寄存器位 5地址为 0D5H( 2) 位名称表示方法。例如 PSW 寄存器位 5是 F0标志位用 F0表示( 3)单元地址加位数的表示方法。例如 ,0D0H单元 (即 PSW寄存器 )位 5,为 0D0H.5( 4) 专用寄存器符号加位数的表示方法。例如 PSW 寄存器的位 5,表示为 PSW.53.3 MCS-51单片机指令系统指令 111条,分为五大类:数据传送类指令( 29)条算术运算类指令( 24条)逻辑运算及移位类指令( 24条)控制转移类指令( 17条)位操作类指令( 17条)3.3.1 数据传送类指令( 29条)MOV , 源 操作数:累加器 A、 通用寄存器 Rn、 直接地址 direct、间址寄存器和立即数 目的操作数:累加器 A、 通用寄存器 Rn、 直接地址 direct、 间址寄存器 1. 普通传送指令1)片内数据存储器传送指令( 16条)( 1)以 A为目的操作数的指令( 4条) MOV A , #data ; A dataMOV A , direct ; A ( direct)MOV A , Rn ; A ( Rn)MOV A , Ri ; A ( Ri)例 3.1 指令:MOV A , #40H ; A 40H 立即寻址MOV A , 40H ; A ( 40H) 直接寻址MOV A , R0 ; A ( R0) 寄存器寻址MOV A , R0 ; A ( R0) 寄存器间接寻址( 2)以 Rn为目的操作数的指令( 3条) MOV Rn , #data ; Rn dataMOV Rn , direct ; Rn ( direct)MOV Rn , A ; Rn ( A)例 3.2 指令:MOV R2 , #7AH ; R2 7AH 立即寻址MOV R2 , 7AH ; R2 ( 7AH) 直接寻址MOV R3 , A ; R3 ( A) 寄存器寻址( 3)以直接地址为目的操作数的指令( 5条) MOV direct , #data ; directdataMOV direct , direct ; direct ( direct)MOV direct , A ; direct ( A)MOV direct , Rn ; direct ( Rn)MOV direct , Ri ; direct ( Ri)例 3.3.3 指令:MOV 02H , #80H ; 02H 80H 立即寻址MOV 0E0H , 80H ; 0E0H ( 80H) 直接寻址MOV P2 , A ; P2 ( A) 寄存器寻址MOV 60H , R2 ; 60H ( R2) 寄存器寻址MOV 40H , R0 ; 40H ( R0) 寄存器间接寻址( 4)以寄存器间接寻址为目的操作数的指令( 3条) MOV Ri , #data ;( Ri) dataMOV Ri , direct ;( Ri) ( direct)MOV Ri , A ;( Ri) ( A)例 3.3.4 指令:MOV R0 , #70H ;( R0) 70H 立即寻址MOV R0 , 70H ; ( R0) ( 70H) 直接寻址MOV R1 , A ; ( R0) ( A) 寄存器寻址( 5) 16位数据传送指令( 1条) MOV DPTR , #data16 ; DPTRdata16例 3.3.5 指令:MOV DPTR , #1234H ;( DPH) 12H , ;( DPL) 34H 立即寻址2)片外数据存储器传送指令( 4条) ( 1)使用 DPTR进行间接寻址( 2)使用 Ri进行间接寻址MOVX A , DPTR ; A ( DPTR)MOVX DPTR , A ;( DPTR) AMOVX A , Ri ; A ( Ri) MOVX Ri , A ;( Ri) A 说明:( 1) MCS-51指令系统中没有专用的存储器读写指令,实际上外部数据存储器数据传送指令就是外部RAM的读写指令( 2)外部 RAM数据传送指令与内部 RAM数据传送指令相比,在指令助记符中增加了 “X”, “X”是代表外部之意( 3)外部 RAM的数据传送,只能通过累加器 A进行例 3.6 要求把外部 RAM 60H单元中的数据 8BH传送到内部RAM 50H中,试编程。解法 1: MOV R0 , #60H ;( R0) =60HMOVX A , R0 ;( A) =8BHMOV 50H , A ;( 50H) =8BH解法 2: MOV DPTR , #0060H ;( DPTR) =0060HMOVX A , DPTR ;( A) =8BHMOV 50H , A ;( 50H) =8BH3)程序存储器传送指令( 2条) 2条访问存储器的查表指令 MOVC A , A+DPTR ; A ( A) +( DPTR)MOVC A , A+PC ; A ( A) +( PC)例 3.7 已知程序存储器中以 TAB为起点地址的空间存放着 09的 ASCII码,累加器 A中存放着一个 09之间的 BCD码数据

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论