逻辑运算符 | Matlab 基础 同更(:小温Learning) 逻辑运算符 运算符的优先级逻辑运算符和向量用逻辑向量进行下标 MATLAB的异或函数用于计算两个二进制数的异或结果。它接受两个参数a和b,返回一个与a和b同维度的数组,其中每个素都是a和b对应位置上的二进制数异或的结果。 例如,当a=[1 0 1 0],b=[0 1 0 1]时,执行的结果为[1 1 1 1],表示a和b对应位置上的二进制数异或的结果。 下面是一个更具体的例子: 输出结果为:[1 1 1 1]。 异或函数是一种逻辑运算符,用于比较两个二进制数的每一位。如果两个二进制数的某一位不同,则该位的结果为1,否则为0。例如,在MATLAB中,可以用于比较两个逻辑向量的每个素。如果a和b是逻辑向量,则返回一个逻辑向量,其中每个素都是a和b对应素的异或结果。 优先级可以用括号覆盖,例如 使用括号使逻辑更清晰永远不会错,即使它们在语法上是不必要的。 运算符的优先级
先比较 2 是否大于 1,因为 2 大于 1,所以 2>1 为真,即返回逻辑值 true。再将逻辑值 true 和数字 0 进行逻辑与运算,逻辑与运算的规则是当且仅当两个操作数都为真时,结果才为真,否则结果为假。因为 true & false 的结果为 false,所以最终的表达式结果为 false。 再如 表达式被求值为0。这是因为左边操作首先被求值为1 (true),然后是 (false)。 这样的不平等应该被编码为 括号不是严格必要的,但它们确实有助于澄清逻辑。 逻辑运算符和向量 逻辑运算符还可以对(相同大小的)向量进行操作,返回逻辑向量,例如: 在MATLAB中,是逻辑非运算符,用于将逻辑向量中的每个素取反。在这个例子中,是一个数值向量,MATLAB将其转换为逻辑向量,其中0表示false,非0表示true。然后,将每个素取反,即0变为1,非0变为0。因此,结果为[false, false, true, false, true],即[0 0 1 0 1]。最后,MATLAB将结果转换为逻辑向量,其中1表示true,0表示false。因此,的结果为[true, true, false, true, false],即[1 1 0 1 0]。 用逻辑向量进行下标 vector的素可以用下标引用,而下标本身也可以是vector,例如: 先定义了一个包含 5 个素的数组 a,然后通过 的方式,提取了 a 中的第 5、1、3 个素,即分别是 9、-2、1。这些素被组成了一个新的数组,作为这段代码的输出,即 ans = [9 -2 1]。 在MATLAB中,是一个索引操作,用于从向量a中选择逻辑向量[0 1 0 1 0]中为true的素。在这个例子中,向量a是,逻辑向量[0 1 0 1 0]表示选择第二和第四个素。因此,结果为。 在MATLAB中,是一个索引操作,用于从向量a中选择逻辑向量[0 0 0 0 0]中为true的素。由于逻辑向量中没有true的素,因此结果为空的1×0 double行向量。 逻辑向量下标提供了一种从向量中删除某些素的优雅方式,例如: 从a中删除所有非正素,因为a>0返回逻辑向量[0 0 1 1 1]。所以返回的后三位。 表达式是一个逻辑向量,因为语句: 函数的作用是判断输入的参数是否为逻辑向量,因此在这个例子中, 的返回值为逻辑值 ,说明 的返回值确实是一个逻辑向量。 数字向量不是逻辑向量,因为:
2024最新激活全家桶教程,稳定运行到2099年,请移步至置顶文章:https://sigusoft.com/99576.html
版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。 文章由激活谷谷主-小谷整理,转载请注明出处:https://sigusoft.com/78164.html