电脑

当前位置 /首页/游戏数码/电脑/列表

MATLAB与或非等逻辑运算符的用法

总结了MATLAB中适用于逻辑表达式和单个元素的逻辑运算。有&&,||,&,|,~,xor这些。
另外要注意,对于单个列表的逻辑运算比如all和any不在本讲解范围。

操作方法

(01)首先,&&和||是短路版本的逻辑与和逻辑或,称为short-circuit运算符。短路逻辑运算符的两边必须是逻辑标量值。比如单个逻辑变量,逻辑表达式都可以。

MATLAB与或非等逻辑运算符的用法

(02)下面解释短路。这个短路类似于其它编程语言。为了演示,我们首先写一个函数calcsum,该函数如果被调用会输出一行信息,并返回a+b+c

MATLAB与或非等逻辑运算符的用法 第2张

(03)如图,对于&&符号(与),通过观察输出结果,我们发现如果第&&左边的表达式不满足,就不会计算右边的了(结果无法改变,右边被“短路”了)

MATLAB与或非等逻辑运算符的用法 第3张

(04)同理,对于||符号(或),如果左边表达式已经为真,则右边就不会被计算。

MATLAB与或非等逻辑运算符的用法 第4张

(05)下面,我们说元素级别的逻辑比较运算符,与and(&), 或or(|), 非not(~),异或xor(无符号)。如图,&两边可以是逻辑表达式也可以是数据。

MATLAB与或非等逻辑运算符的用法 第5张

(06)这些元素级别逻辑符可以用于两个等尺寸的列表,会计算对应元素得到结果列表。

MATLAB与或非等逻辑运算符的用法 第6张
MATLAB与或非等逻辑运算符的用法 第7张
MATLAB与或非等逻辑运算符的用法 第8张

(07)这些符号是没有短路效果的,如图,逻辑符号两边都会被计算后再进行逻辑运算。

MATLAB与或非等逻辑运算符的用法 第9张

特别提示

如果是对整个列表的逻辑值进行合并等,要用列表级别的逻辑运算函数,比如all,any这些。

TAG标签:运算符 MATLAB 或非 逻辑 #