AT89S51位操作类指令
扫描二维码
随时随地手机看文章
AT89S51单片机内部有一个位处理机,对位地址空间具有丰富的位操作指令。
1.数据位传送指令
这组指令的功能是把由源操作数指定的位变量送到目的操作数指定的单元中。其中一个操作数必须为进位标志,另一个可以是任何直接寻址位,不影响其他寄存器或标志位。例如:
注意,这里的06H是位地址,20H是内部RAM的字节地址。06H是内部RAM 20H字节位6的位地址。
2.位变量修改指令
这组指令将操作数指定的位清O、求反、置1,不影响其他标志位。例如:
3.位变量逻辑与指令
第1条指令的功能是,直接寻址位与进位标志位(位累加器)进行逻辑与运算,结果送回到进位标志位中。如果直接寻址位的布尔值是逻辑0,则进位标志位C清O,否则进位标志保持不变。
第2条指令的功能是,先对直接寻址位求反,然后与位累加器(进位标志位)进行逻辑与运算,结果送回到位累加器中。该指令不影响直接寻址位求反前原来的状态,也不影响别的标志位。直接寻址位的源操作数只有直接位寻址方式。
4.位变量逻辑或指令
第1条指令的功能是,直接寻址位与进位标志位Cy(位累加器)进行逻辑或运算,结果送回到进位标志位中。如果直接寻址位的位值为1,则进位标志位置1,否则进位标志位仍保持原来的状态。
第2条指令的功能是,先对直接寻址位求反,然后与位累加器(进位标志位)进行逻辑或运算,结果送回到进位标志位中。该指令不影响直接寻址位求反前原来的状态。
5.条件转移类指令