明经通道 AutoLISP 函数  
lsh
 

返回某整数作指定次逻辑移位后的结果

(lsh intnumbits) 

参数

int

整数型。

numbits

int 移位的次数。

如果 numbits 为正,int 向左移;如果 numbits 为负,int 向右移。在这两种情况下,移入位为 0,移出位丢弃。

如果未指定 numbits,则不发生位移。

返回值

位移后 int 的值。如果移位运算之后符号位(位号为 31)是 0,则本函数返回的值是正数;否则它返回的值是负数。如果未提供参数,lsh 返回 0。

这一行为与其他语言(C、C++ 或 Java 中的 >> & <<)不同。32 位整数左移超过 32 位后得到的结果为 0,而每右移 32 位则整数再次重复出现。

示例

命令: (lsh 2 1)

4

命令: (lsh 2 -1)

1

命令: (lsh 40 2)

160

明经通道 版权所有 未经许可 不得传播

 评论