9.6. 位字符串函数和运算符#
本节介绍用于检查和操作位字符串的函数和运算符,即类型bit和bit varying的值。(虽然这些表中只提到了类型bit,但类型bit varying的值也可以互换使用。)位字符串支持表 9.1中所示的常用比较运算符,以及表 9.14中所示的运算符。
表 9.14. 位字符串运算符
运算符 说明 示例 |
|---|
连接
|
按位 AND(输入必须等长)
|
按位 OR(输入必须等长)
|
按位异或(输入必须等长)
|
按位 NOT
|
按位左移(字符串长度不变)
|
按位右移(字符串长度不变)
|
如表 9.15所示,二进制字符串的一些可用函数也适用于位字符串。
表 9.15 位字符串函数
此外,还可以将整数值转换为bit类型并从中转换。将整数转换为bit(n)会复制最右边的n位比特。将整数转换为比整数本身宽度更大的比特串将在左侧进行符号扩展。一些示例
44::bit(10) 0000101100
44::bit(3) 100
cast(-44 as bit(12)) 111111010100
'1110'::bit(4)::integer 14请注意,仅转换为“bit”意味着转换为bit(1),因此只会提供整数的最低有效位。
