历史上的今天
今天是:2025年03月10日(星期一)
2018年03月10日 | AT89S51逻辑操作类指令
2018-03-10 来源:eefocus
1.累加器A字节清0指令
![]()
该条指令的功能是累加器A清0。不影响Cy、Ac、OV等标志位。
2.累加器A字节求反指令
![]()
该条指令的功能是将累加器A的内容按位逻辑取反,不影响标志位。
3.左环移指令
![]()
这条指令的功能是累加器A的8位向左循环移位,位7循环移入位O,不影响标志位,如图3-1所示。
4.带进位左环移指令
![]()
这条指令的功能是将累加器A的内容和进位标志位Cy一起向左环移一位,ACC.7移人进位位Cy,Cy移入Acc.0,不影响其他标志位,如图3-2所示。


5.右环移指令
![]()
这条指令的功能是累加器A的内容向右环移一位,Acc.O移人Acc.7,不影响其他标志位,如图3-3所示。
6.带进位右环移指令
![]()
这条指令的功能是累加器A的内容和进位标志Cy 一起向右环移一位,Acc.O进入Cy,Cy移入Acc.7,如图3-4所示。


7.累加器半字节交换指令
![]()
这条指令的功能是将累加器A的高半字节(Acc.7~Acc.4)和低半字节(Acc.3~Acc.O)互换。
【例3-8】 (A)=95H,执行指令
![]()
结果为(A)=59H。
8.逻辑与指令

![]()
这组指令的功能是在指定的变量之间以位为基础进行逻辑与操作,结果存放到目的变量所在的寄存器或存储器中。操作数有寄存器寻址、直接寻址、寄存器间接寻址和立即数寻址方式。
【例3-9】(A)=07H,(RO)=OFDH,执行指令
![]()
运算式为

结果为(A)=05H。
9.逻辑或指令

这组指令的功能是在所指定的变量之间执行以位为基础的逻辑或操作,结果存到目的变量寄存器或存储器中。操作数有寄存器寻址、直接寻址、寄存器间接寻址和立即数寻址方式。
【例3-10】(P1)=05H,(A)=33H,执行指令
![]()
运算式为结果为(P1)=37H。

10.逻辑异或指令

这组指令的功能是在所指定的变量之间执行以位为基础的逻辑异或操作,结果存到目的变量寄存器或存储器中。操作数有寄存器寻址、直接寻址、寄存器间接寻址和立即数寻址方式。
【例3-11】 (A)=90H,(R3)=73H,执行指令
![]()
运算式为

结果为(A)=E3H。
上一篇:AT89S51位操作类指令
下一篇:AT89S51数据传送类指令
史海拾趣
|
选购摄像机总是有人存在一些误区,比如洋品牌就好,还有价格要越低越好,下面我就说说真正需要注意的几点是什么吧! 第一、经济性 当前安防产品同质化很严重,进口的与国产的相差无几,所以朋友们不要盲目的崇拜洋 ...… 查看全部问答> |
|
WinCE的explorer.exe不启动直接启动自己的应用程序会有什么样的影响? 提一个关于WinCE启动的问题,在很多地方看到WinCE不启动explorer.exe,用自定义的应用程序替换,我有几个问题想寻求解答: 1、explorer.exe的完整的功能是哪些? 2、如果不启动这个功能,在VS2005下写的程序(基于compact Frame work)还能不能用 ...… 查看全部问答> |
|
请教一个问题:在vxworks中得到主板CPU等关键芯片的温度,电压信息呢? 如题: 现在不知道如何能够得到这些信息,目前在windows下已经实现了,但是是在有驱动支持的情况下完成的 请各位帮忙看看怎么解决好呢?… 查看全部问答> |
|
这个图形加速器的驱动TI给出了现成的module,基于Linux的 里边基本全了,module源文件,app-test,看看README就都明白啦 还没尝试过POWERVR的杀伤力到底有多强 不知道SEED提供的底板是否有LCD,如果有就基本完美啦,否则还得自己想办法弄L ...… 查看全部问答> |
|
我使用MDK3.22,首先已按照lut1lut的帖子修改了汇编代码。数据源参考了圈圈的“FFT结果的物理意义”中的数据,我把圈圈的256个数据*1024然后作的四舍五入取整。结果与圈圈文章中分析的基本一致,第0点、50点、75点数据比较大,此三点数据为( ...… 查看全部问答> |
|
stm32串口1,2,3,4为什么1,2可以,3,4就不行啊。 USART_InitStructure.USART_BaudRate = 115200; USART_InitStructure.USART_WordLength = USART_WordLength_8b; USART_InitStructure.USART_StopBits = USART_StopBits_1; USART_InitStructure. ...… 查看全部问答> |
|
文件名应该是sio.c,移植的时候在src/include/lwip下面有个sio.h文件,里面有一些sio_read,sio_write等声明函数。我想找到函数的实体部分,找了N久还是找不到。害的我程序老是编译不通过。… 查看全部问答> |




