你好!欢迎来到深圳市颖特新科技有限公司!
语言
当前位置:首页 >> 技术中心 >> 单片机入门 >> 逻辑运算指令

逻辑运算指令

关键字:逻辑运算 指令 作者:admin 来源:不详 发布时间:2018-05-19  浏览:9

逻辑运算指令

1.ANL类指令(6条)

ANL类是逻辑与指令,其功能是将源操作数作数内容和目的操作数内容按位相“与”,结果存入目的操作数指定单元中,源操作数不变。

ANL A, Rn        ;A∩Rn→A

ANL A, direct       ;A∩(direct) →A

ANL A, @Ri       ;A∩(Ri) →A

ANL A, #data       ;A∩data→A

ANL direct, A       ;(direct)∩A→(direct)

ANL direct, #data      ;(direct)∩data→(direct)

例  设A=F6H,(30H)=0FH

执行  ANL A, 30H          ;A∩ (30H) →A

操作如下:

11110110  (F6H)

∩  00001111  (0FH)   注意:按位相“与”

00000110  (06H)

结果:A=06H, 30H地址内容不变,即(30H)=0FH

若执行ANL 30H, A           ;(30H)∩ A→(30H)

操作同上,结果放在30H地址中,A中内容不变,即(30H)=06H, A=F6H。

2.ORL类指令(6条)

ORL类指令是逻辑或指令,其功能是将源操作数作数内容和目的操作数内容按位逻辑“或”,结果存入目的操作数指定单元中,源操作数不变。

ORL A, Rn     ;A∪Rn→A

ORL A,direct       ;A∪(direct) →A

ORL A, @Ri    ;A∪(Ri) →A

ORL A, #data       ;A∪data→A

ORL direct, A       ;(direct)∪A→(direct)

ORL direct, #data      ;(direct)∪data→(direct)

“或”运算和“与”运算过程类似,这里不再举例。

3.XRL类指令(6条)

XRL类是异或指令,其功能是将两个操作数指定内容按位“异或”,结果存于目的操作数指定单元中。“异或”原则是相同为“0”,相异为“1”。

XRL A, Rn        ;A⊕Rn→A

XRL A, direct       ;A⊕(direct) →A

XRL A, @Ri    ;A⊕(Ri) →A

XRL A, #data       ;A⊕data→A

XRL direct, A       ;(direct)⊕A →(direct)

XRL direct, #data   ;(direct)⊕data→(direct)

  (50H)=05H

执行  XRL 50H, #06H             ;(50H)⊕06H→(50H)

操作如下:

00000101 (05H)

⊕  00000110 (06H)

00000011 (03H)

结果:(50H)=03H

4.循环移位指令(4条)

循环移位指令的功能是将累加器A中内容循环位移或者和进位位一起移位。

例  A=01H, Cy=1

若执行一次  RRC  A后,结果为:A=10000000B  Cy=1

若执行一次  RLC  A后,结果为:A=00000011B  Cy=0

5.取反、清0指令

CPL  A                  ;累加器内容按位取反。如果1就变0,如果0就变1

CLR  A                  ;累加器A清0

编辑:admin  最后修改时间:2018-05-19

联系方式

0755-82591179

传真:0755-82591176

邮箱:vicky@yingtexin.net

地址:深圳市龙华区民治街道民治大道973万众润丰创业园A栋2楼A08

Copyright © 2014-2023 颖特新科技有限公司 All Rights Reserved.  粤ICP备14043402号-4