|
布尔处理功能是MCS-51系列单片机的一个重要特征,这是出于实际应用需要而设置的。布尔变量也即开关变量,它是以位(bit)为单位进行操作的。
在物理结构上,MCS-51单片机有一个布尔处理机,它以进位标志做为累加位,以内部RAM可寻址的128个为存储位。
既然有布尔处理机功能,所以也就有相应的布尔操作指令集,下面我们分别谈论。
[1].位传送指令(2条)
位传送指令就是可寻址位与累加位CY之间的传送,指令有两条。
MOV C,bit ;bit→CY,某位数据送CY
MOV bit,C ;CY→bit,CY数据送某位
[2].位置位复位指令(4条)
这些指令对CY及可寻址位进行置位或复位操作,共有四条指令。
CLR C; 0→CY,清CY
CLR bit; 0→bit,清某一位
SETB C; 1→CY,置位CY
SETB bit; 1→bit,置位某一位
[3].位运算指令(6条)
位运算都是逻辑运算,有与、或、非三种指令,共六条。
ANL C,bit;(CY)∧(bit)→CY
ANL C,/bit;(CY)∧(
![]()
)→CY
ORL C,bit;(CY)∨(bit)→CY
ORL C,/bit;(CY)∧(
![]()
)→CY
CPL C;(
![]()
)→CY
CPL bit;(
![]()
)→bir
[4].位控制转移指令(5)
位控制转移指令是以位的状态作为实现程序转移的判断条件,介绍如下:
JC rel; (CY)=1转移,(PC)+2+rel→PC,否则程序往下执行,(PC)+2→PC。
JNC rel; (CY)=0转移,(PC)+2+rel→PC,否则程序往下执行,(PC)+2→PC。
JB bit, rel; 位状态为1转移。
JNB bit, rel; 位状态为0转移。
JBC bit, rel; 位状态为1转移,并使该位清“0”。
后三条指令都是三字节指令,如果条件满足,(PC)+3+rel→PC,否则程序往下执行,(PC)+3→PC。 | [tr]
[ 完 ]
|
|