基 础 函 数 参 考
BitRotate
执行旋转移位运算.
参 数
| 值 |
操作数的值. |
| 移位 |
[可选参数] 左旋转位数 (负值右旋转). 如不指定, 默认为 1. |
| 大小 |
[可选参数] 决定旋转大小的字串, 默认为 (16 位). 见下文. |
大小"参数的可选值:
| "B" |
旋转位的低位字节(8 位). |
| "W" |
旋转位的低位字(16 位). |
| "D" |
旋转位的整个双字(32 位). |
返 回 值
| 成功: |
返回按指定位旋转后的值. |
| 失败: |
设置 @error, "大小"参数值无效 |
位操作均为 32 位整数.
备 注
数字可以用十六进制表示法.
相 关 函 数
BitShift, BitAND, BitNOT, BitOR, BitXOR, Hex
函 数 示 例
Local $x
= BitRotate(7, 2)
; x == 28 因为 111b 左旋转两次是 1 1100b ==
28
Local $y
= BitRotate(14, -2)
; y == 32771 因为 1110b 右旋转 16 位两次是 1000 0000
0000 0011b == 32771
Local $z
= BitRotate(14, -2,
"D")
; z == -2147483645 因为 1110b 右旋转 16 位两次是 1000
0000 0000 0000 0000 0000 0000 0011b ==
2147483645