计算机硬件技术基础专题MCS-51指令系统.ppt
《计算机硬件技术基础专题MCS-51指令系统.ppt》由会员分享,可在线阅读,更多相关《计算机硬件技术基础专题MCS-51指令系统.ppt(100页珍藏版)》请在沃文网上搜索。
1、 计算机硬件技术基础计算机硬件技术基础计算机科学与软件学院计算机基础教学部计算机科学与软件学院计算机基础教学部计算机科学与软件学院计算机基础教学部计算机科学与软件学院计算机基础教学部专题四专题四 MCS-51指令系统指令系统 第三章第三章本专题是全书的重点,本专题是全书的重点,本专题是全书的重点,本专题是全书的重点,是汇编语言程序设计的基础。是汇编语言程序设计的基础。是汇编语言程序设计的基础。是汇编语言程序设计的基础。学习指令系统重点要掌握以下几点:学习指令系统重点要掌握以下几点:1 1 1 1、指令功能、指令功能、指令功能、指令功能 2 2 2 2、寻址方式、寻址方式、寻址方式、寻址方式 3
2、 3 3 3、操作数的位数和存储结构、操作数的位数和存储结构、操作数的位数和存储结构、操作数的位数和存储结构 4 4 4 4、对、对、对、对PSWPSWPSWPSW的影响的影响的影响的影响 5 5 5 5、指令与存储区的对应关系指令与存储区的对应关系指令与存储区的对应关系指令与存储区的对应关系 6 6 6 6、各类指针及其指向的地址范围、各类指针及其指向的地址范围、各类指针及其指向的地址范围、各类指针及其指向的地址范围 7 7 7 7、转移指令的转移范围、转移指令的转移范围、转移指令的转移范围、转移指令的转移范围 8 8 8 8、指令字节数和机器周期数、指令字节数和机器周期数、指令字节数和机器
3、周期数、指令字节数和机器周期数 本章主要介绍单片机的寻址方式及指令系统,本章主要介绍单片机的寻址方式及指令系统,是必须掌握的内容。是必须掌握的内容。一台计算机所有指令的集合,一台计算机所有指令的集合,称为该计算机的称为该计算机的指令系统。指令系统。各种计算机都有专用的指令系统。各种计算机都有专用的指令系统。学时分配:学时分配:2 2学时学时 153+97+98+99 153+97+98+99 2 2学时学时 5496 100 5496 100 第三章第三章 单片机的指令系统单片机的指令系统3.1 MCS-51 指令系统概述指令系统概述3.1.1 指令格式指令格式 3.1.2 指令字长和指令周期
4、指令字长和指令周期 3.1.3 指令分类指令分类 汇编语言汇编语言指令格式指令格式机器语言机器语言指令格式指令格式3.1.1 指令格式指令格式一条用助记符表示的汇编语言指令一条用助记符表示的汇编语言指令操作码操作码操作数操作数指令的功能指令的功能指令的功能指令的功能指令的操指令的操指令的操指令的操作对象作对象作对象作对象 ADD A ADD A,#10H#10H ;ADDADD为操作码,为操作码,为操作码,为操作码,AA及及及及#10#10HH为操作数为操作数为操作数为操作数 汇编语言指令汇编语言指令汇编语言指令格式汇编语言指令格式标号:操作码助记符标号:操作码助记符标号:操作码助记符标号:操
5、作码助记符 目的目的目的目的操作数操作数操作数操作数,源源源源操作数操作数操作数操作数;注释;注释;注释;注释例如:例如:例如:例如:LoopLoop:MOV A,R0;(R0)-(A)MOV A,R0;(R0)-(A)机器语言指令格式机器语言指令格式双字节:双字节:单字节:单字节:操作码操作码操作码操作码操作码操作码操作码操作码 操作数或寻址方式操作数或寻址方式操作数或寻址方式操作数或寻址方式操作码操作码操作码操作码操作数或寻址方式操作数或寻址方式操作数或寻址方式操作数或寻址方式三字节:三字节:操作码操作码操作码操作码操作数或寻址方式操作数或寻址方式操作数或寻址方式操作数或寻址方式操作数或寻
6、址方式操作数或寻址方式操作数或寻址方式操作数或寻址方式例:例:例:例:ADD A ADD A,#10H#10H 或或指令字长有三种:指令字长有三种:单字节单字节 RET 双字节双字节 MOV A,#68H 三字节三字节 MOV 30H,46H3.1.2 指令字长和指令周期指令字长和指令周期指令周期是指执行一条指令所需要的时间指令周期是指执行一条指令所需要的时间 1 机器周期指令机器周期指令 2 机器周期指令机器周期指令 4 机器周期指令机器周期指令P318附录附录II 附表附表13.1.3 指令分类指令分类 按按按按 指指指指 令令令令 功功功功 能能能能 分分分分类类类类 按指令字长分类按指
7、令字长分类按指令字长分类按指令字长分类 按指令执行时间分类按指令执行时间分类按指令执行时间分类按指令执行时间分类 3.2 寻址方式寻址方式寻址方式:寻址方式:7种种寄存器寻址寄存器寻址寄存器寻址寄存器寻址直接寻址直接寻址直接寻址直接寻址寄存器间接寻址寄存器间接寻址寄存器间接寻址寄存器间接寻址立即寻址立即寻址立即寻址立即寻址变址间接寻址变址间接寻址变址间接寻址变址间接寻址相对寻址相对寻址相对寻址相对寻址位寻址位寻址位寻址位寻址寻址方式与寻址空间寻址方式与寻址空间寻址方式与寻址空间寻址方式与寻址空间MCS-51MCS-51单片机的两个突出特点单片机的两个突出特点单片机的两个突出特点单片机的两个突出
8、特点寄存器寻址寄存器寻址操作数存放在寄存器中操作数存放在寄存器中MOV MOV AA,R0R0MOV MOV R0R0,#01001111B,#01001111B 工作寄存器(工作寄存器(工作寄存器(工作寄存器(0000H1FH)H1FH)RS1 RS0 RS1 RS0 寄存器组寄存器组寄存器组寄存器组 片内片内片内片内RAMRAM地址地址地址地址 寄存器寄存器寄存器寄存器 0 0 0 0 第第第第0 0组组组组 00 00HH07H R007H R0R7R7 0 1 0 1 第第第第1 1组组组组 08 08HH0FH R00FH R0R7R7 1 0 1 0 第第第第2 2组组组组 10
9、10HH17H R017H R0R7R7 1 1 1 1 第第第第3 3组组组组 18 18HH1FH R01FH R0R7R7 SETB RS0SETB RS0MOV MOV R3R3,#56H,#56H寄存器为寄存器为寄存器为寄存器为 R0R7R0R7,AA,DPTRDPTR,CC 例如:例如:例如:例如:MOV A MOV A,R3 ;R3 ;机器码为机器码为机器码为机器码为 0 0EBHEBH 指令功能是把当前指令功能是把当前指令功能是把当前指令功能是把当前R3R3中的操作数送累加器中的操作数送累加器中的操作数送累加器中的操作数送累加器A A。指令执行示意图如图指令执行示意图如图指令执
10、行示意图如图指令执行示意图如图3 36 6所示。设(所示。设(所示。设(所示。设(R3R3)=12H=12H直接寻址直接寻址指令中直接给出操作数的地址指令中直接给出操作数的地址功能最强,可访问功能最强,可访问功能最强,可访问功能最强,可访问种地址空间种地址空间种地址空间种地址空间内部数据存储器地址空间():内部数据存储器地址空间():内部数据存储器地址空间():内部数据存储器地址空间():MOV MOV A,00H A,00H MOV 30H,20H MOV 30H,20H特殊功能寄存器地址空间,唯一方式特殊功能寄存器地址空间,唯一方式特殊功能寄存器地址空间,唯一方式特殊功能寄存器地址空间,唯
11、一方式 MOV A,90H MOV A,90H MOV A,B MOV A,B位地址空间位地址空间位地址空间位地址空间 MOV C,00HMOV C,00H 例:例:MOV A ,30H;机器码为机器码为E530H 指指令令功功能能是是把把直直接接地地址址30H单单元元的的内内容容送累加器送累加器A,即即(30H)(A)如图如图31所示。所示。34H34H34H34H寄存器间接寻址寄存器间接寻址将指定的寄存器的内容为地址,由该地将指定的寄存器的内容为地址,由该地址所指定的单元内容作为操作数。址所指定的单元内容作为操作数。mov A,R00102033030HH31H31H32H32H(R0)=
12、31H(R0)=(31H)(A)=02H指针指针例如:例如:例如:例如:MOV A MOV A,R1;R1;机器码机器码机器码机器码 E7HE7H 设设设设(R1R1)=60H=60H,(60H60H)=50H=50H,执执执执行行行行结结结结果果果果(A A)=50H,=50H,该指令执行过程如图该指令执行过程如图该指令执行过程如图该指令执行过程如图3 34 4所示。所示。所示。所示。立即寻址立即寻址在指令中直接给出操作数在指令中直接给出操作数例:例:例:例:MOV A,MOV A,#7Ah;747AH7Ah;747AH把立即数把立即数把立即数把立即数7 7AHAH送累加器送累加器送累加器送
13、累加器A A,指令执行示意图如图指令执行示意图如图指令执行示意图如图指令执行示意图如图3-23-2所示。所示。所示。所示。例例:MOV DPTR,#1234h (DPH)=12H (DPL)=34H注意:注意:立即数前加立即数前加“#”号,以区别直接地址。号,以区别直接地址。例如:例如:MOV A,#30H;(A)30H MOV A,30H;(A)(30H)变址间接寻址变址间接寻址基址寄存器变址寄存器的基址寄存器变址寄存器的间接寻址方式间接寻址方式DPTR/PC A MOVC A,A+DPTR (A)(DPTR)+(A)MOVC A,A+PC (A)(PC)+(A)JMP A+DPTR (PC
14、)=(A)+(DPTR)MOVC A,A+PC;83H 设执行指令之前(设执行指令之前(A)=50H 指令功能是把该指令指令功能是把该指令当前地址当前地址PC值值与与A累加器内容相加形成操作码地址累加器内容相加形成操作码地址3F51H,3F51H中的内容中的内容37H送送A累加器。累加器。PCPC当前值当前值当前值当前值相对寻址相对寻址以当前的以当前的PC值为基准,加上指令中给出值为基准,加上指令中给出的相对偏移量的相对偏移量(rel)形成有效的转移地址。形成有效的转移地址。jc Loop;jcLoopLoop:rell lrel补码补码补码补码-128-128,127127JC rel;40
15、85H 设设rel=85H,Cy=1目标地址目标地址目标地址目标地址PCPC当前当前当前当前值值值值位寻址位寻址 bit位寻址范围:位寻址范围:1、内内部部RAM的的位位寻寻址址区区,共共16个个单单元元的的128位位,字字节节地地址址为为20H2FH,位位地地址址为为00H7FH。可可用用直直接接位位地地址址或或字字节节地地址址加加位位的的表表示方法。示方法。例如:例如:MOV C,7AH或或 MOV C,2FH2 2 2、特殊功能寄存器、特殊功能寄存器、特殊功能寄存器、特殊功能寄存器SFRSFR可供位寻址的专用寄存器共可供位寻址的专用寄存器共可供位寻址的专用寄存器共可供位寻址的专用寄存器共
16、1111个,个,个,个,实有位地址位实有位地址位实有位地址位实有位地址位8383位。位地址有位。位地址有位。位地址有位。位地址有4 4种表达方式种表达方式种表达方式种表达方式 。以对程序状态寄存器以对程序状态寄存器以对程序状态寄存器以对程序状态寄存器PSWPSW辅助进位位辅助进位位辅助进位位辅助进位位ACAC进行操作为例:进行操作为例:进行操作为例:进行操作为例:PSW Cy PSW Cy AC AC F0 RSF0 RS1 1 RSRS0 0 OV POV P D0HD0H D7H D6H D0H D7H D6H D0H1 1)直接使用位地址直接使用位地址直接使用位地址直接使用位地址 3 3
17、)单元地址加位的表示法单元地址加位的表示法单元地址加位的表示法单元地址加位的表示法 MOV C MOV C,0D6H 0D6H MOV C MOV C,0D0H0D0H6 62 2)位名称表示法位名称表示法位名称表示法位名称表示法 4 4)专用寄存器符号加位的表示法专用寄存器符号加位的表示法专用寄存器符号加位的表示法专用寄存器符号加位的表示法 MOV C MOV C,AC AC MOV C MOV C,PSWPSW6 6 寻址方式寻址方式寻址方式寻址方式寻址空间寻址空间寻址空间寻址空间寄存器寻址寄存器寻址寄存器寻址寄存器寻址R0R7R0R7A A、ABAB、CYCY、DPTRDPTR直接寻址直
18、接寻址直接寻址直接寻址内部内部内部内部RAM 00H7FHRAM 00H7FH特殊功能寄存器特殊功能寄存器特殊功能寄存器特殊功能寄存器SFRSFR 80H0FFH 80H0FFH内部内部内部内部RAMRAM中中中中2020H2FHH2FH单元的单元的单元的单元的128128个位地址个位地址个位地址个位地址SFRSFR中中中中8383个有效个有效个有效个有效位地址位地址位地址位地址 80 80H0FFHH0FFH寄存器寄存器寄存器寄存器间接寻址间接寻址间接寻址间接寻址内部内部内部内部RAM 00H7FH (R0 RAM 00H7FH (R0、R1R1、SP)SP)外部外部外部外部RAMRAM或外
19、部或外部或外部或外部I/OI/O口口口口 0000 0000H0FFFFHH0FFFFH(R0(R0、R1R1、DPTR)DPTR)立即寻址立即寻址立即寻址立即寻址程序存储器程序存储器程序存储器程序存储器基址基址基址基址+变址变址变址变址寄间寻址寄间寻址寄间寻址寄间寻址程序存储器(程序存储器(程序存储器(程序存储器(A+DPTRA+DPTR、A+PC)A+PC)寻址方式与寻址空间寻址方式与寻址空间1 1、内部数据存储器的寻址方式、内部数据存储器的寻址方式、内部数据存储器的寻址方式、内部数据存储器的寻址方式 1 1)0000HH1FH1FH 寄存器寻址寄存器寻址寄存器寻址寄存器寻址 4 4组组组
20、组R0 R0 R7 R7 RnRn 直接寻址直接寻址直接寻址直接寻址 direct 寄存器间接寻址寄存器间接寻址寄存器间接寻址寄存器间接寻址 R0,R1R0,R1 例例例例:(0101HH)(02H02H)MOV 02H,01H ;MOV 02H,01H ;源寻址和目的寻址均为直接寻址源寻址和目的寻址均为直接寻址源寻址和目的寻址均为直接寻址源寻址和目的寻址均为直接寻址 MOV MOV R2R2,01H ;,01H ;源寻址为直接寻址,目的寻址为寄存器寻址源寻址为直接寻址,目的寻址为寄存器寻址源寻址为直接寻址,目的寻址为寄存器寻址源寻址为直接寻址,目的寻址为寄存器寻址 MOV MOV R0R0,
21、#01H,#01H MOV 02H,MOV 02H,R0R0;源寻址为寄存器间接寻址,源寻址为寄存器间接寻址,源寻址为寄存器间接寻址,源寻址为寄存器间接寻址,目的寻址为直接寻址目的寻址为直接寻址目的寻址为直接寻址目的寻址为直接寻址内部数据存储器与内部内部数据存储器与内部I/OI/O口统一编址口统一编址2)20H 2FH 可可位寻址区的寻址方式位寻址区的寻址方式 字节寻址字节寻址方式:方式:直接寻址直接寻址 direct 寄存器间接寻址寄存器间接寻址R0,R1 位寻址位寻址:bit 直接寻址直接寻址例:例:MOV 26H,C;位寻址位寻址 (26H)1位位 MOV 26H,A;字节寻址(字节寻址
22、(26H)8位位 3)30H 7FH 数据缓冲区的寻址方式数据缓冲区的寻址方式 字节寻址字节寻址方式:方式:直接寻址直接寻址 direct 寄存器间接寻址寄存器间接寻址R0,R1例:例:MOV 56H,A;字节寻址(字节寻址(56H)8位位 MOV R0,#66H MOV R0,#56H 可以将用户堆栈设在该区内,堆栈指针可以将用户堆栈设在该区内,堆栈指针SP 2、SFR 及及I/O口的操作口的操作只能直接寻址只能直接寻址 例:例:P1 口口 90H MOV A,90H MOV A,P1 MOV P1,A3、关于关于A累加器有两种寻址方式:累加器有两种寻址方式:MOV A,#23H ;A寄存器
23、寻址寄存器寻址 PUSH ACC POP 0E0H;直接寻址直接寻址统统一一编编址址4、可做片内、可做片内RAM的指针有:的指针有:R0R0,R1R1,四个组共有四个组共有四个组共有四个组共有8 8个个个个 预先设置预先设置预先设置预先设置RS1RS1、RS0RS0,以选定组。以选定组。以选定组。以选定组。SETB RS0SETB RS0 CLR RS1;1 CLR RS1;1组组组组 MOV R0,#34H MOV R0,#34H ;R0R0的地址是?的地址是?的地址是?的地址是?SETB RS1 ;3SETB RS1 ;3组组组组 MOV R0,#68H ;R0MOV R0,#68H ;R
24、0的地址是?的地址是?的地址是?的地址是?R0/R1指向的地址范围:指向的地址范围:00H7FH 片外数据存储区和外部扩展的片外数据存储区和外部扩展的I/O口的寻址方式口的寻址方式指针:指针:指针:指针:R0,R1 8R0,R1 8位位位位 DPTR 16DPTR 16位位位位指令助记符:指令助记符:指令助记符:指令助记符:MOVX MOVX 例:例:例:例:MOV DPTR,MOV DPTR,#2000H#2000H MOV A,#34H MOV A,#34H MOVX MOVX DPTRDPTR,A,AMOV MOV P2 P2,#20H,#20HMOV MOV R0R0,#00H,#00
25、HMOV A,#34HMOV A,#34HMOVX R0MOVX R0,A,A外部数据存储器的地址,或外部数据存储器的地址,或外部数据存储器的地址,或外部数据存储器的地址,或I/OI/O口的地址口的地址口的地址口的地址 16 16位位位位只能寄存器间接寻址只能寄存器间接寻址高高高高8 8位地址位地址位地址位地址低低低低8 8位地址位地址位地址位地址统统一一编编址址R0/R1R0/R1指向的地址范围:指向的地址范围:指向的地址范围:指向的地址范围:00 00H0FFHH0FFH3.3 MCS-51 单片机的指令系统单片机的指令系统指令描述符号简介指令描述符号简介指令分类:指令分类:数据传送类指令
- 1.请仔细阅读文档,确保文档完整性,对于不预览、不比对内容而直接下载带来的问题本站不予受理。
- 2.下载的文档,不会出现我们的网址水印。
- 3、该文档所得收入(下载+内容+预览)归上传者、原创作者;如果您是本文档原作者,请点此认领!既往收益都归您。
下载文档到电脑,查找使用更方便
10 积分
下载 | 加入VIP,下载更划算! |
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 计算机硬件 技术 基础 专题 MCS 51 指令系统