位运算符 (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。