Shl
Value = Shl ( Number , Bit )
Value = Number Shl Bit
自从 3.17
将
Number 左移
Bit 个二进制位,并返回结果。符号位不参与移动。
Number 的类型可以是
Byte、
Short、
Integer或者
Long。
Number 的类型决定
Bit 的取值范围。
返回值的数据类型与Number相同。
错误
示例
PRINT Bin(11, 32), 11
PRINT Bin(Shl(11, 2), 32), Shl(11, 2)
PRINT Bin(Shl(11, 28), 32), Shl(11, 28)
00000000000000000000000000001011 11
00000000000000000000000000101100 44
00110000000000000000000000000000 805306368
PRINT Bin(-11, 32), -11
PRINT Bin(Shl(-11, 2), 32), Shl(-11, 2)
PRINT Bin(Shl(-11, 28), 32), Shl(-11, 28)
11111111111111111111111111110101 -11
11111111111111111111111111010100 -44
11010000000000000000000000000000 -805306368
可以使用
CLong、
CInt、
CShort函数改变参数类型,扩展位数。
DIM b1 AS Byte
DIM i1 AS Integer
DIM i2 AS Integer
b1 = &H55
' Bad Argument, maximum = 7 for Byte for Integer : s2 = Shl(b1, 8) OR b2
i1 = Shl(CInt(b1), 16)
PRINT "i1="; Hex$(i1)
i2 = Shl(b1, 16) ' Stops here with Bad Argument
PRINT " i2="; Hex$(i2)
参见