位运算符 (F#)

本主题介绍 F# 语言中可用的位运算符。

位运算符摘要

下表描述了支持 F# 语言中未装箱的整数类型的位运算符。

运算符

注释

&&&

按位“与”运算符。 当且仅当两个源操作数中对应的位均为 1 时,结果中的位的值才为 1。

|||

按位“或”运算符。 只要源操作数中对应的位有一个为 1,结果中的位的值就为 1。

^^^

按位“异或”运算符。 当且仅当源操作数中的位的值不相等时,结果中的位的值才为 1。

~~~

按位“求反”运算符。 这是一元运算符,生成的结果是:源操作数中的所有 0 位均转换为 1 位,所有 1 位均转换为 0 位。

<<<

按位左移运算符。 结果是第一个操作数中的位左移第二个操作数中的位数。 移去的最高有效位不会转入最低有效位。 最低有效位将补零。 第二个参数的类型为 int32。

>>>

按位右移运算符。 结果是第一个操作数中的位右移第二个操作数中的位数。 移去的最低有效位不会转入最高有效位。 对于无符号类型,其最高有效位将补 0。 对于有符号类型,其最高有效位将补1。 第二个参数的类型为 int32。

以下类型可用于位运算符:byte、sbyte、int16、uint16、int32 (int)、uint32、int64、uint64、nativeint 和 unativeint。

请参见

参考

符号和运算符参考 (F#)

算术运算符 (F#)

布尔运算符 (F#)