- 1、本文档共57页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
1;试验:用单片机点亮发光二极管LED;以P1.0引脚为例:
P1.0脚高电平时,LED不亮,P1.0脚低电平时,LED发亮。可见,控制P1.0 的电平即可。
让 P1.0为高电平的命令:SETB P1.0
(把口 P1 的第“0”位置为高电平)
让 P1.0为低电平的命令:CLR P1.0
; 指令
所有的软件,都要翻译成计算机能直接识别和执行的命令才能由计算机去执行。
计算机能直接识别和执行的命令称为指令。
一台计算机所能执行的全部指令的集合称为这台计算机的指令系统。
由指令码组成的程序称为指令程序。;助记符
指令本身是二进制代码,记忆困难。
如: 10加20
?? ;把10放在累加器A中;
?? ;A加20,结果仍在A中;
??????????????
为了方便记忆,可采用指令助记符:
MOV??? A,#0AH
ADD???? A,#14H?;6;7;8;9;10;11;12;5、 变址寻址
以DPTR作基址寄存器,以累加器A作变址寄存器,并以两者内容相加形成的16位地址作为操作数的地址。
变址寻址方式只能对程序存储器进行寻址。
例:
MOVC A,@A+DPTR;6、 相对寻址
以转移指令所在地址为基地址,向前最大可转移(127+转移指令字节数)个单元,向后最大可转移(128-转移指令字节数)个单元。
相对寻址方式的转移指令中,给出了地址偏移量,PC的当前值加上偏移量就构成了转移的目的地址。
PC当前值是指执行完该转移指令后的下一条指令的地,偏移量rel是一个带符号的8位二进制补码数。;7、 位寻址
位寻址方式的操作数是8位二进制数中的某一位。
在指令中给出位地址,即给出是哪个内部RAM单元的哪一位。
位地址在指令中用bit表示。;归纳:
寄存器寻址 MOV A,R1 将R1中的数值赋予A
直接寻址 MOV A,3AH 将地址3AH中的数值赋予A
立即寻址 MOV A,#3AH 将3AH数值赋予A
寄存器间址 MOV A,@Ri 将 Ri中地址的数值赋予A, Ri或是R0或是R1
变址寻址 MOVC A,@A+DPTR 以A中的数值为地址偏移量进行查表;变址寻址区是程序存储器ROM,而不是数据存储器RAM
相对寻址 AJMP MAIN 跳转到行号为MAIN处
位寻址 MOV C,7FH 将位地址7FH的数值赋予C ;. 指令说明 ;18; 数据传送指令的作用是将数据从一个地方传送到另一个地方,是单片机指令中用的非常多的一类指令。
数据传送指令是对存储单元进行操作。
;20;(2)以Rn为目的操作数
MOV Rn,A ;A→Rn,n=0~7
MOV Rn,direct ;(direct)→Rn
MOV Rn,#data ;#data→Rn,n=0~7;(3)以直接地址为目的操作数
MOV direct,A ;A→direct
MOV direct,Rn ;Rn→direct,
MOV direct1,direct2 ;(direct 2)→direct1
MOV direct,@Ri ;(Ri)→direct
MOV direct,#data ;#data→direct;(4)以寄存器间接地址为目的操作数
MOV @Ri,A ;A→(Ri),i=0,1
MOV @Ri,direct ;(direct)→(Ri)
MOV @Ri,#data ;#data→(Ri);习题:设片内RAM(23H)=10H,(10H)=34H,R0=00H,执行完以下每条指令后A,R0中内容分别是什么?
MOV A,#50H ;A=50H
MOV R0,#23H ;R0=23H
MOV @R0,A ;(23H)=50H
MOV @R0,10H ;(23H)=34H;25;(6)数据交换
XCH A,
文档评论(0)