【发布时间】:2013-11-01 09:52:03
【问题描述】:
我不完全理解按位运算和逻辑运算之间的区别。请看下面的按位运算:
x=7 和 15
我知道在这种情况下,在单独检查每个位后 x 将等于 7。
布尔逻辑如何在较低级别工作。我相信布尔值是 32 位数据类型(我可能是错的)。布尔文字(TRUE 和 FALSE)是否被视为单个位?
【问题讨论】:
-
boolean在内存中的表示方式是implementation detail。这意味着 a) 它不是程序员关心的,b) 如果 MS 认为它有意义,它可能会改变。 -
@igrimpe,我试图了解在布尔逻辑的情况下是否将整个 WORD 视为一个位。
-
如果在VB.Net中将任意数字转换为布尔值,规则是:如果为0,则结果为假。否则是真的。如果将布尔值转换为 int(例如),事情会变得更加复杂。 false 将给出 0,但 true 可能是 1 或 -1,具体取决于使用的转换方法。 VB.Net imho 中最大的混淆来源:布尔运算符和位运算符似乎是“相同的”(其他语言有不同的运算符,但 VB 有相当的“历史”)。
标签: vb.net boolean-logic