- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
课 堂 教 案
教师:刘杨 科目:汽车单片机技术
题目第一章 汽车单片机原理 第四节 第五节班级汽检课型专业基础课教法面授教具板书课时2教学目的目标熟悉微型计算机和单片机的概念,了解MCS-51单片机的组成和引脚,熟悉指令系统,熟悉单片机的中断、定时器/计数器和串行通信。教学重点熟悉单片机的中断、定时器/计数器教学难点串行通信教学内容与程序
课前提问
引题,新课引入
课后小结
作业布置作业教材 P53—8、9
教 案 附 页
汽车单片机原理
第四节 单片机指令系统
一、单片机语言
单片机的指令描述形式有两种:机器语言形式和汇编语言形式。
1.机器语言
由于计算机只能识别二进制数,所以计算机中所有的指令和数据都是用二进制??码来表示。
2.汇编语言
由于机器语言不便被人们识别、记忆、理解和使用,因此给每条机器语言指令赋予助记符号来表示,这就形成了汇编语言。助记符号多用英文字母和数字组成。
3.高级语言
除了汇编语言,还有高级语言,如BASIC、PASCAL、C语言等,可以用来对单片机编程。高级语言接近自然语言(英语)和数学语言的算法语言,具有直观、通用等特点。
二、MCS-51单片机指令系统
1.汇编语言指令格式:
指令系统中的指令描述了不同的操作,不同操作对应不同的指令。但结构上,每条指令通常由操作码和操作数两部分组成。
汇编语言指令格式如下:
格式:[标号:] 操作码助记符 [第一操作数] [,第二操作数] [;注释]
2.指令常用符号
(1) Rn(n=0~7):表示八个通用寄存器R0~R7。
(2) Ri(i=0,1):表示两个寄存器R0、R1,它们常在间接寻址中作为8位地址指针。
(3) #data:表示8位立即数,即包含在指令中的8位常数,如#30H。
(4) #data16:表示16位立即数,即包含在指令中的16位常数,如#2010H。
(5) direct:表示片内RAM(含特殊功能寄存器)的直接地址。
(6) addr11:表示11位目的地址。
(7) addr16:表示16位目的地址。
(8) rel:表示带符号的8位地址偏移量
(9) bit:表示位地址。
(10) @:作为寄存器的前缀,表示间接寻址。
(11) (×):表示×存储器单元的内容。
(12) ((×)):表示以X单元的内容为地址的存储器单元内容。
(13) →:表示将箭头左边内容送入箭头右边。
(14) /:表示对该位操作数取反,但不影响该位的原值。
3. 寻址方式
(1)立即寻址
操作数直接出现在指令中,紧跟在操作码的后面,作为指令的一部分与操作码一起存放在程序存储器中,可以立即得到并执行,故称为立即寻址。汇编指令中,在一个数的前面冠以#符号作前缀,就表示该数为立即寻址。
例如指令:MOV A,#30H
指令中30H就是立即数。指令的功能是将立即数30H传送到累加器A中。
(2)直接寻址
直接寻址是指在指令中直接给出操作数所在存储单元的地址。该指令的功能是从该地址中直接获取操作数。
例如指令:MOV A,40H
该指令中40H为操作数的直接地址。指令的功能是把片内RAM地址为40H单元的内容送到A中。
(3)寄存器寻址
寄存器寻址是指把寄存器的内容作为操作数。寄存器可以是通用寄存器R0~R7,也可以是ACC、B、DPTR等寄存器。
例如指令:MOV A,R0
该指令是寄存器寻址。指令的功能是把工作寄存器R0中的内容传送到累加器A中,如R0中的内容为30H,则执行该指令后A的内容也为30H。
(4)寄存器间接寻址
在寄存器间接寻址中,指令中的一个操作数是加了前缀“@”的寄存器,“@”表示该寄存器中的内容是操作数的地址。可用于间接寻址的寄存器是R0、R1、DPTR。其中,R0和R1用于8位地址寻址,DPTR用于16位地址寻址。
例如:指令:MOV A,@R0
(5)变址寻址(基址寄存器+变址寄存器)
变址寻址是指以寄存器的内容作为基地址,然后在这个基地址的基础上加上地址偏移量形成操作数的地址,并在这个地址中取出操作数。在变址寻址中只能用DPTR和PC作为基址寄存器,累加器A作为偏移量寄存器。变址寻址用于读取程序存储器的数据,常用于查表操作。
例如:指令:MOV A,@R0
(6)相对寻址
相对寻址是将程序计数器PC中的当前值与指令第二字节给出的偏移量rel相加,其结果作为跳转指令的转移地址。相对寻址主要用于转移类指令,寻址范围是程序存储器。
偏移量rel是有符号的单字节数。以补码表示,其偏移范围是-128~+127。负数表示从当前地址向前转移,正数表示从当前地址向后转移。所以,相对转移指令满
文档评论(0)