- 1、本文档共54页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
三、单片机的指令说明 2.“或”指令 “或”指令使用助记符ORL,共有6条,格式如下: ORL A,# data ;A←A|data ORL A,Rn ;A←A|Rn ORL A,@Ri ;A←A |(Ri) ORL A,direct ; A←A|(direct) ORL direct,#data ;(direct) ←(direct)|data ORL direct,A ;( direct) ← (direct)|A 这组指令的功能是将两个指定的操作数按位逻辑“或”。其中前 4条指令的操作结果存放在累加器A中,执行后影响奇偶标志位P;后2条指令的操作结果存放在直接寻址的地址单元中。 例如,设A=1AH,R0=45H,(45H)=39H,当执行指令“ORL A,@R0”,则结果为:A=3BH,(45H)=39H,P=0。 3、逻辑运算类指令 三、单片机的指令说明 3.“异或”指令 “异或”指令使用助记符XRL,共有6条,其操作方式与“与、或”指令一样。格式如下: XRL A,# data ;A←A data XRL A,Rn ;A←A Rn XRL A,@Ri ;A←A (Ri) XRL A,direct,# data ;A←A (direct) XRL direct,#data ;(direct) ←(direct) data XRL direct,A ;(direct) ←(direct) A 这组指令是将2个指定的操作数按位进行异或,前4条指令的结果存放在累加器A中,后2条指令的操作结果存放在直接地址单元中。其原则是相同为0,不同为1。异或指令也常用于修改某工作寄存器、某片内RAM单元、某直接寻址字节(包括P0、P1、P2、P3端口)或累加器本身的内容。 例如,设P1,执行指令XRL P1,#,则结果为 P1。 3、逻辑运算类指令 三、单片机的指令说明 4. 循环移位指令 循环移位指令的操作数只能是累加器A,共有4条指令: RL A ;循环左移 RR A ;循环右移 RLC A ;带CY循环左右移 RRC A ;带CY循环右移 前两条指令的功能分别是将累加器A的内容循环左移或右移一位,执行后不影响PSW中各位;后两条指令的功能分别是将累加器A的内容与进位位CY位一起循环左移或右移一位,执行后影响PSW中的进位位CY和奇偶状态标志位P。 3、逻辑运算类指令 三、单片机的指令说明 5.取反指令 取反指令使用助记符CPL,操作数只能是累加器A,格式如下: CPL A 本指令的功能是将累加器A的内容按位取反。 例如,设A=F0H,执行指令CPL A,则结果为A=0FH。 6.清零指令 清零指令使用助记符CLR,格式为: CLR A ;A←0 本指令的功能是将累加器A的内容清“0”。 3、逻辑运算类指令 三、单片机的指令说明 1.无条件转移指令 无条件转移指令有4条: AJMP addr11 ;PC←PC+2,PC10~0←addr11 LJMP addr16 ;PC←addr16 SJMP rel ;PC←PC+2 +rel JMP @A+DPTR ;PC←A+DPTR 这类指令是指当程序执行完该指令时,程序就无条件件地转到指令所提供的地址上去。 4、控制转移类指令 三、单片机的指令说明 2.条件转移指令 条件转移指令有7条。它们在满足条件的情况下才进行程序转移,条件若不满足,仍按原程序继续执行,故称为条件转移指令或者称判跳指令。 JZ rel ;若(A)= 0,则PC←(PC)+ 2 + rel ;若(A)≠0,则PC←(PC)+ 2 JNZ rel ;若(A)≠0,则PC←(PC)+ 2 + rel ;若(A)= 0,则PC←(PC)+ 2 CJNE A,direct,rel ;PC←PC+3,若A=(direct),按顺序执行,且Cy=0 ;若A(direct),且Cy=1,且PC←PC+rel,转移 ;若A(direct),则Cy=0,切PC←PC+rel,转移 CJNE A,#data,rel ;PC←PC+3,若A=data,按顺序执行,且Cy=0 ;若Adata,则Cy=1,且PC←PC+r
文档评论(0)