
or代表或的意思,在C语言中有两种或 *** 作,一种是逻辑或运算符,一种是位或运算符。逻辑或运算符用||来表示,位或运算符用|(只有一个竖杠)来表示,特别注意,位或 *** 作,只能 *** 作整型数据。比如:
for (int inx=0 inx!=10 ++inx) {//当x==1或者x==5的时候输出hello world
if (inx==1 || inx==5) printf("hello world\n")
}
注意逻辑或运算具备短路求值特点,如上面的例子,如果inx==1成立,则不会检测后面的inx==5了。这就是短路求值。
位或运算比较简单一般的规则是,遇1得1。
0 | 1 = 1
1 | 0 = 1
0 | 0 = 0
1 | 1 = 1
or是或运算,aorb的结果:当a、b中只要有一个或者两个都为1时,结果为1,否则为0xor是异或运算,axorb的结果:当a、b两个不同时结果为1,否则为0
上面是对于数字运算而言,如果是逻辑运算,把上面两句话的1替换为“真”、0替换为“假”即可。
PLC可编程逻辑控制器,是一种采用一类可编程的存储器,用于其内部存储程序,执行逻辑运算、顺序控制、定时、计数与算术 *** 作等面向用户的指令,并通过数字或模拟式输入/输出控制各种类型的机械或生产过程。用户可以通过PLC指令来编制程序,完成对PLC的功能实现。一般PLC指令常指PLC梯形图。此外,各个厂家的PLC指令规则略有不同。
汇编中OR的指令为逻辑或运算,该指令会置CF=OF=0,其结果影响SF、ZF、PF。指令格式为OR r/m,r/m/i。例如:mov al,01100011B(换行符)or al,00111011B的执行结果为al=01111011B。
汇编中AND的指令为逻辑与运算,该指令会置CF=OF=0,其结果影响SF、ZF、PF。指令格式为AND r/m, r/m/i。例如:mov al,01100011B(换行符)and al,00111011B的执行结果为al=00100011B。
OR EAX,80008000H和AND CH,80H的逻辑与或运算,执行需要参考对应逻辑常量与变量之间的数值才能得出执行结果。
扩展资料汇编中出了OR与AND的逻辑运算之外,还有XOR、NOT和TEST指令。该五个指令构成了最基本的汇编逻辑运算,通过指令之间的灵活配合使用进而实现程序员的编程目的。
XOR为逻辑异或 *** 作,异或指令的格式为XOR OPRD1 OPRD2。标志位同与运算指令,某个 *** 作数自身异或,值不变,可使进位标志CF=0。而与0异或,不变,与1异或,取反。
NOT为逻辑否 *** 作,否指令的格式为NOT OPRD。把OPRD取反,再回送给OPRD。该 *** 作对标志位没有影响。某个 *** 作数自身或,值不变,可使进位标志CF=0。
TEST为测试 *** 作,测试指令的格式为TEST OPRD1 OPRD2,该指令与AND类似,但结果不回送。该指令执行后,ZF,PF,SF反映运算结果,CF=OF=0
参考资料来源:百度百科-汇编指令
欢迎分享,转载请注明来源:内存溢出
微信扫一扫
支付宝扫一扫
评论列表(0条)