单片机逻辑运算指令
*
第1页,本讲稿共16页
★异或运算: 符号 A Z
B
记作 Z = A + B
输入信号相同则输出为0,输入信号相异则输出为1。
★非运算:求反 符号 A Z
记作 Z = A
*
第2页,本讲稿共16页
一、 对A累加器进行的逻辑操作:
1. CPL A ;A求反
2. CLR A ;A清0
:
(1). RR A
(2).RRC A
7 0
C
7 0
*
第3页,本讲稿共16页
(3).RL A
(4).RLC A
移位指令助记符意义:
第一个字母R 表示移位操作。
第二个字母 表示移位方向,L 向左;R 向右。
第三个字母 表示是否通过C。
为C表示连同C共9位数一起移位
无第三字母表示与C无关。
A ;A的内容高低半字节相交换
7 0
C
7 0
*
第4页,本讲稿共16页
例:CLR C
MOV A , #0E2H
RL A
RLC A
RR A
RRC A
SWAP A
; C = 0
;1 1 1 0 0 0 1 0 E2H
;1 1 0 0 0 1 0 1
;1 0 0 0 1 0 1 0 C=1
;0 1 0 0 0 1 0 1
;1 0 1 0 0 0 1 0 C=1
;0 0 1 0 1 0 1 0
*
第5页,本讲稿共16页
例:已知30H单元的内容为X,且X为无符号数,求4X送入31H单元存放,求X/4 的整数部份送入32H单元存放,(0≤X<63)
讨论:将一个二进制数左移一次等于乘2的运算,
左移n次 等于乘2n
同理将其右移一次等于除2的运算,
右移n次等于除2n。
程序如下:
*
第6页,本讲稿共16页
MOV A,30H ;x
RL A ;2X
RL A ;4X
MOV 31H, A
MOV A,30H ;X
CLR C
RRC A ;X/2
CLR C
RRC A ;X/4
MOV 32H ,A
*
第7页,本讲稿共16页
二、 包含双操作数的逻辑运算指令:
一般形式:
ANL 与
ORL 第一操作数,第二操作数 或
XRL 异或
功能:第一操作数和第二操作数进行相应的逻辑运算,结果在第一操作数指出的
单片机逻辑运算指令 来自淘豆网m.daumloan.com转载请标明出处.