maxframe.tensor.right_shift#
- maxframe.tensor.right_shift(x1, x2, out=None, where=None, **kwargs)#
将整数的位向右移动。
位向右移动 x2 位。由于数字的内部表示是二进制格式,此操作等价于将 x1 除以
2**x2。- 参数:
x1 (array_like, int) -- 输入值。
x2 (array_like, int) -- 要从 x1 右侧移除的位数。
out (Tensor, None, or tuple of Tensor and None, optional) -- 用于存储结果的位置。如果提供,它必须具有与输入广播兼容的形状。如果未提供或为 None,则返回一个新分配的 tensor。元组(只能作为关键字参数)的长度必须等于输出的数量。
where (array_like, optional) -- 值为 True 表示在该位置计算 ufunc,值为 False 表示保留输出中的值不变。
**kwargs
- 返回:
out -- 返回 x1 向右移动 x2 位后的结果。
- 返回类型:
Tensor, int
参见
left_shift将整数的位向左移动。
示例
>>> import maxframe.tensor as mt >>> mt.right_shift(10, 1).execute() 5
>>> mt.right_shift(10, [1,2,3]).execute() array([5, 2, 1])