- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
单片机位指令教案
复习
引入
新授
练习
举例
练习
举例
练习
小结
作业
3.调用子程序指令(涉及堆栈)LCALL addr16
ACALL addr11
4.返回指令(涉及堆栈) 子程序返回指令 RET
中断返回指令 RETI
5.空操作指令NOP:只是PC加1,为单周期指令,所以时间上只用一个机器周期,在延时或等待程序中常用于时间“微调”。
§分类指令 之位操作指令
1.位数据传送指令
MOV C,bit ;C←(bit)
MOV bit,C ;bit←C
2.位状态修改指令
CLR C ;C←0
CLR bit ;(bit)←0
CPL C ;C←/C
CPL bit ;(bit)←/(bit)
SETB C ;C←1
SETB bit ;(bit)←1
3.位逻辑运算指令
ANL C,bit ;C←C∧(bit)
ANL C,/bit ;C←C∧(bit)
ORL C,bit ;C←C∨(bit)
ORL C,/bit ;C←C∨(bit)
【例】若(00H) FFH,Cy 0,位地址(00H) 1,分别写出执行下列各条指令后的结果。
(1)CPL 00H (2)SETB 00H
(3)ANL C,/00H (4)ORL C,00H
解:(1)位地址(00H) 0 (2)位地址(00H) 1 (3)CY 0 (4)CY 1
【例】若(30H) 00H,Cy 0,位地址(30H) 1,分别写出执行下列各条指令后的结果。
(1)CPL C (2)SETB C
(3)ANL C,30H (4)ORL C,/30H
解:(1)CY 1 (2)CY 1
(3)位地址(30H) 0 (4)位地址(30H) 0
【练】编程实现Q X·Y+Y·/Z,其中Q为P1.1,X为P2.1,Y为P0.1,Z为P1.7
解:Q BIT P1.1
X BIT P2.1
Y BIT P0.1
Z BIT P1.7
MOV C,X
ANL C,Y
MOV F0,C
MOV C,Y
ANL C,/Z
ORL C,F0
MOV Q,C
4.位转移指令
JC rel ; 若C 1,则转移(PC←PC+2+rel)
;否则程序顺序执行
JNC rel ; 若C 0,则转移(PC←PC+2+rel)
;否则程序顺序执
JB bit,rel ; 若 bit 1,则转移(PC←PC+3+rel)
;否则程序顺序执行
JNB bit,rel ;若 bit 0,则转移(PC←PC+3+rel)
;否则程序顺序执行
JBC bit,rel ;若 bit 1,则PC←PC+3+rel,(bit)←0
;否则程序顺序执行
功能:分别检测指定位是1还是0,若条件符合,则CPU转向指定的目标地址去执行程序;否则,顺序执行下条指令。
【例】执行下列程序后,A=?R0=?
START:MOV A,#00H
MOV R0,#00H LOOP:ADD A,#50H
JC EXIT
INC R0
SJMP LOOP
EXIT:END 解:A 40H R0 03H
【练】从内RAM30H单元开始存放着一组无符号数,其个数存在21H单元中。试编写程序,找出其中最小的数,并将其存入20H单元中
解:参考程序
MOV R0,#30H MOV 20H,@R0 DEC 21H
LOOP:INC R0 MOV A,@R0 CJNE A,20H,COMP
COMP:JNC NEXT MOV 20H,A
NEXT:DJNZ 21H,LOOP SJMP $
1.位数据传送指令MOV
2.位状态修改指令CLR;CPL;SETB
3.位逻辑运算指令ANL;ORL
4.位转移指令
JC rel JNC rel
JB bit,rel
JNB bit,rel
JBC bit,rel
完成练习
文档评论(0)