




已阅读5页,还剩86页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
第第 3章章 51系列单片机指令系统系列单片机指令系统单片机单片机 原理与接口技术原理与接口技术第 3章 51系列单片机指令系统主要内容主要内容n 指令 概述 n 寻址方式 n 指令系统2第 3章 51系列单片机指令系统3.1 指令系统概述 一、 51单片机指令的概念机器语言: 用二进制代码来描述指令功能的语言。目标程序: 用机器语言组成的程序。汇编语言: 为方便编写 , 记忆和阅读 , 用助记符描述指令。1. 指令格式n 51单片机指令格式采用了单地址指令格式。n 指令的具体格式为 方括号内是可 选择 的 :标号 :操作码 目的操作数 , 源操作数 ; 注释 例如: NEXT: ADD A,#10H ;#10H (A) A机器码: 2410H 3第 3章 51系列单片机指令系统2. 指令有三种表示形式:表示形式 是用来识别指令的标志。1) 二进制表示形式: (以 “累加器 A的内容 +10H”为例 )00100100B 操作码 OP (加法)00010000B 操作数 DATA( 10H)n 特点:能被 CPU直接识别并执行的形式,也称机器码、汇编语言的目标代码。n 缺点:不便于阅读、记忆和调试修改。4第 3章 51系列单片机指令系统2) 十六进制表示方式:n 它是对二进制形式的一种简化。00100100B 24H 00010000B 10H二进制表示的形式 十六进制表示的形式n 目前极少用这种形式,只作为一种辅助调试手段。n 这种形式的指令格式必须由监控程序把它们翻译成二进制 “机器码 ”后存入程序存储器才能运行。5第 3章 51系列单片机指令系统3) 指令的 “助记符 ”方式(也称 “汇编格式 ”):00100100B 24H00001000B 10H ADD A, #10H二进制表示形式 十六进制表示 汇编格式n 由英文字母、数字来表征指令功能,便于阅读、书写和交流的表示形式。n “汇编 ”格式必须 “翻译 ”为二进制 “机器码 ”后才能被 CPU所识别和执行。n 本章内容均以汇编的形式介绍指令系统。6第 3章 51系列单片机指令系统n 下面是一段汇编语言程序的书写格式:标号 操作码 操作数 注释START:MOV A,#00H ;0AMOV R7,#10 ;10R7 MOV R2,#00000011B ;3R2LOOP: ADD A,R2 ;(A)+(R2)ADJNZ R7,LOOP ;R7的内容减 1不为 0则循环NOPSJMP $7助 记 符意 义 助 记 符 对 照英文传送 MOV MOVe代码区数据传送 MOVC MOVe Code外部 RAM区数据传送 MOVX MOVe eXternal压栈 PUSH PUSH退栈 POP POP交换 XCH eXCHange十进制交换 XCHD eXCHange Decimal加法 ADD ADD带进位加 ADDC ADD with Carry带借位减 SUBB SUBtract with Borrow加 1 INC INCrement减 1 DEC DECrement乘 MUL MULtiply除 DIV DIVide51系列单片机汇编语言操作码的英文对照表续表 1助 记 符意 义 助 记 符 对 照英文十进制调整 DA Decimal Adjust逻辑与 ANL Logicle ANd逻辑或 ORL Logicle OR逻辑异或 XRL Logicle eXclusive-oR求补 CPL ComPLement清零 CLR CLeaR置位 SETB SET Bit左移 RL Rotate Left带进位左移 RLC Rotate Left throuth the Carry flag右移 RR Rotate Right带进位右移 RRC Rotate Right throuth the Carry flag(半字节)互换 SWAP SWAP续表 2助 记 符意 义 助 记 符 对 照英文绝对转移 AJMP Absolute JuMP短转移 SJMP Short JuMP长转移 LJMP Long JuMP跳转 JMP JuMP累加器为零转移 JZ Jump if acc is Zero累加器不为零转移 JNZ Jump if acc is Not Zero进位位为 1转移 JC Jump if Carry(if Cy=1)进位位为 0转移 JNC Jump if NotCarry(if Cy=0)指定为为 1转移 JB Jump if Bit is set 指定位为 0转移 JNB Jump if Not Bit (if bit=0)指定位为 1转移并清该位 JBC Jump if Bit is set add Clear bit续表 3助 记 符意 义 助 记 符 对 照英文比较不等转移 CJNE Compare and Jump if NotEqual 减 1不为 0转移 DJNZ Decrement and Jump if Not Zero 绝对调用 ACALL Absolute CALL长调用 LCALL Long CALL 子程序返回 RET RETurn 中断返回 RETI RETurn from Interrupt 空操作 NOP No OPeration 第 3章 51系列单片机指令系统单片机按指令的字节长度划分有三种:(1)单字节指令: 只有一字节的操作码,操作数隐含其中。如指令 “INC A”,操作码 04H,在 ROM中占一个字节(2)双字节指令: 一个字节的操作码,一个字节的操作数。如指令 “ADD A, #22H”操作码和操作数为 24H 22H,目的操作数隐含在操作码中,在 ROM中占两个字节。(3)三字节指令: 一个字节操作码,两个字节操作数。例如指令 “MOV 5EH, 4FH” 其中操作码为 85H,目的操作数 5EH,源操作数 4FH,在ROM中占三个字节。12第 3章 51系列单片机指令系统指令系统概述51系列使用 42种助记符,有 51种基本操作。通过助记符及源和目的操作数的不同组合构成了 51单片机的 111条指令。51单片机指令系统按字节数分为: 单字节指令 49条; 双字节指令 46条; 三字节指令 16条。 按指令执行的周期划分: 单周期指令有 57条; 双周期指令 52条; 四周期指令 (乘法和除法 ) 2条。当主频为 12MHz时,单周期指令的执行时间为 1s。 13第 3章 51系列单片机指令系统二、指令中常用符号描述指令的一些符号意义 : Ri和 Rn:R表示当前 工作寄存器区 中的寄存器;i只取 0或 1,即 R0和 R1,可做间接寻址用;n可取 0 7,即 R0 R7;工作寄存器区是由 PSW 的 RS1和 RS0位决定的。 #data: #表示立即数, data为 8位常数。 #data是指包含在指令中的 8位立即数。 #data16:包含在指令中的 16位立即数。 14第 3章 51系列单片机指令系统 rel:相对地址,以补码形式表示地址偏移量,范围为 -128 +127,主要用于 SJMP(无条件相对短转移指令 )和所有的条件转移指令中。 addr16: 16位目的地址, 64KB程序地址范围,主要用于LJMP和 LCALL。 addr11: 11位目的地址, 2KB程序地址范围,主要用于AJMP和 ACALL。 direct:表示 8位内部 RAM单元地址,包括 SFR的地址。SFR也可直接用名称来代替直接地址。 bit:内部 RAM或 SFR中的 可直接寻址位 。15第 3章 51系列单片机指令系统 :间接寻址或基址寄存器的前缀。例如: Ri、 DPTR, A+DPTR (X):表示 X中的内容。 (X):表示由 X寻址的单元中的内容,即 (X)作地址,该地址的内容用 (X)表示。 /:表示对该 位 操作数取反,但不影响该位的原值。 :表示指令操作流程,将箭头一方的内容送入箭头另一方的单元中去。 $:当前指令的地址 16第 3章 51系列单片机指令系统指令对标志位的影响指令 标 志 指令 标 志C OV AC C OV ACADD CLR C 0ADDC CPL SUBB ANL C,bit MUL 0 ANL C,/bit DIV 0 ORL C,bit DA ORL C,/bit RRC MOV C,bit RLC CJNE SETB C 117第 3章 51系列单片机指令系统3.2 寻址方式p 寻址方式即寻找操作数或操作数所在地址的方式。p 51单片机片的存储器空间有 4种: 内部 RAM SFR 外部 RAM 程序存储器p 为区别指令中操作数所处的地址空间,不同存储器中的数据操作,采用不同的寻址方式。18第 3章 51系列单片机指令系统p 51单片机指令系统中有 7种寻址方式: 立即寻址 ; 直接寻址 ; 寄存器寻址 ; 寄存器间接寻址 ; 基址寄存器加变址寄存器间接寻址 ; 相对寻址 ; 位寻址。 19第 3章 51系列单片机指令系统一、立即寻址p 操作数直接显现在指令中,它紧跟在操作码的后面,与操作码一起存放在 ROM内 为立即寻址。p 立即寻址只访问程序存储器。p 例: ADD A,#40Hp MOV DPTR,#2008Hp 立即数前面加 “#”表示 8位的: #data,如 #40H 16位数的: #data16,如 #2008Hp 立即寻址的指令多为 2字节或 3字节指令。 20第 3章 51系列单片机指令系统例如: ADD A, #40H 24H40HPCPC+1HALUH+40H程序存储器A21第 3章 51系列单片机指令系统二、直接寻址p 指令中直接给出操作数地址 (direct)的寻址方式称为直接寻址 。p 可以访问内部 RAM空间 : (1)内部 RAM的低 128个字节单元 (00H 7FH)。 例如: MOV A, 00H ;(A)(00H) R0(2)位地址空间。例如: MOV C, E0H ; Cy(位 E0H)Acc.0(3)SFR只能用直接寻址方式进行访问。例如: MOV A, P1 ; AccP1(地址 90H) 对于 SFR,可用它们的地址,也可用它们的名字。22第 3章 51系列单片机指令系统直接寻址方式示意图如下:23第 3章 51系列单片机指令系统若(A)=30H(25H)=4DH(P0)=3EH(30H)=11H,(20H)=2FH例 MOV A,25H ;(25H)(A)MOV P0,#50H ;立即数 50HP0 MOV 80H,#50H ;同上一条指令相同,只是表达方;式不一样,建议用上条指令格式MOV 30H,20H ;(20H)(30H)则执行上述指令后 ,结果为:(A)=4DH(25H)=4DH(P0)=50H(30H)=2FH(20H)=2FH24第 3章 51系列单片机指令系统三、寄存器寻址p 指令中的操作数即为某寄存器的内容。例如: MOV A, R0 ;(A)(R0)操作码:p 该指令中,源操作数和目的操作数是由寻址 R0和 A得到。p 可寄存器寻址的寄存器包括: R0R7以及 A、 B、 DPTR。1 1 1 0 1 r r r25第 3章 51系列单片机指令系统直接寻址和寄存器寻址的区别 :p 直接寻址 : 操作数就是以存储器地址形式直接出现在指令码中。例如:A(E0H), B(F0H), R0(00H)。p 寄存器寻址 : 被寻址寄存器的内容就是操作数,而隐含在操作码中。p 寄存器寻址特点:寄存器隐含在操作码中,指令的机器码短 (单字节 ),占用空间小,执行快。p 除上面所指的几个寄存器外,其他 SFR均为直接寻址。26第 3章 51系列单片机指令系统寄存器寻址方式示意图如下:程序存储器 内部 RAM00HMOV A, R2PC 11101010 操作码25H02H0区 (R2)A 25H0EH是 A的地址.01H 27第 3章 51系列单片机指令系统例 MOV A, R0 ;(R0)(A),机器码为 E8,仅占 1字节 ,;A和 R0均为 寄存器寻址 。 MUL AB ;(A)(B)(B)(A)机器码为 A4,;A和 B均为 寄存器寻址MOV B, R0 ;(R0)(B),机器码为 88F0,其 F0为 B;的地址 ,B为直接寻址 ,R0为 寄存器寻址PUSH ACC ;A的内容压入堆栈,机器码为 C0E0,;其第 2字节 E0为 A的地址 ,A为直接寻址。 1 1 1 0 1 r r r1000 1 r r rdirect1100 0000direc
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 环境设施建设与运营管理方案
- 老旧小区改造施工安全保障方案
- 景观文化主题设计方案
- 2025年锻造工招工考核试题及答案
- 2025年通风设备安全生产知识竞赛试题及答案
- 初中音乐欣赏类课内作业设计策略
- 2025成都街道考试真题及答案
- 全国审计师职业资格考试试题及答案
- 铆工职业技能考试试题及答案详解
- 2025年谜语灯谜知识竞赛试题及答案
- 2025年成考专升本政治时政练习题及答案
- DB 32-T 3701-2019 江苏省城市自来水厂关键水质指标控制标准
- 麻醉科医疗质量考核标准及检查表
- 湘教版高一地理新教材《4.1水循环》公开课一等奖课件省赛课获奖课件
- 人的自我实现过程重于结果VS结果重于过程辩论赛反方辩词一辩、二辩、三辩、四辩发言稿
- 高中英语课外阅读:The Picture of Dorian Gray道林格雷的画像
- 新概念1-50课语法复习
- 福建省退役军人参加学历教育身份确认表
- GB/T 3452.3-2005液压气动用O形橡胶密封圈沟槽尺寸
- 斯吹瓶机培训
- 山鬼课件上课用课件
评论
0/150
提交评论