MATLAB 帮助中心
按位左旋
c = bitrol(a, k)
c = bitrol(a, k) 返回定点 fi 对象 a 的值左旋 k 位后的结果。bitrol 将位从最高有效位 (MSB) 侧旋转至最低有效位 (LSB) 侧。它对 a 的存储整数值位执行左旋操作。
a
k
fi
bitrol
bitrol 不检查上溢或下溢。它会忽略 fimath 属性,如 RoundingMode 和 OverflowAction。
fimath
RoundingMode
OverflowAction
a 和 c 具有相同的 fimath 和 numerictype 属性。
c
numerictype
示例
全部折叠
创建一个无符号定点 fi 对象,其值为 10,字长为 4,小数长度为 0。
a = fi(10,0,4,0); disp(bin(a))
1010
将 a 左旋 1 位。
disp(bin(bitrol(a,1)))
0101
将 a 左旋 2 位。
disp(bin(bitrol(a,2)))
创建一个由 fi 对象组成的向量。
a = fi([1,2,5,7],0,4,0)
a = 1 2 5 7 DataTypeMode: Fixed-point: binary point scaling Signedness: Unsigned WordLength: 4 FractionLength: 0
disp(bin(a))
0001 0010 0101 0111
将向量 a 中的位左旋 1 位。
0010 0100 1010 1110
a = fi(10,0,4,0);
将 a 左旋 1 位,其中 k 是 fi 对象。
disp(bin(bitrol(a,fi(1))))
要旋转的数据,指定为由 fi 对象组成的标量、向量、矩阵或多维数组。a 可以是有符号或无符号的。
数据类型:定点 fi
复数支持:是
要旋转的位数,指定为非负整数值标量 fi 对象或内置数值类型。k 可以大于 a 的字长。此值始终归一化为 mod(a.WordLength,k)。
mod(a.WordLength,k)
数据类型:fi |single | double | int8 | int16 | int32 | int64 | uint8 | uint16 | uint32 | uint64
single
double
int8
int16
int32
int64
uint8
uint16
uint32
uint64
全部展开
对于 VHDL®,生成 rol 运算符。
rol
对于 Verilog®,生成以下表达式(其中 wl 是 a 的字长):
wl
a << idx || a >> wl - idx
在 R2007b 中推出
bitconcat | bitror | bitshift | bitsliceget | bitsll | bitsra | bitsrl
bitconcat
bitror
bitshift
bitsliceget
bitsll
bitsra
bitsrl
You clicked a link that corresponds to this MATLAB command:
Run the command by entering it in the MATLAB Command Window. Web browsers do not support MATLAB commands.
选择网站
选择网站以获取翻译的可用内容,以及查看当地活动和优惠。根据您的位置,我们建议您选择:。
您也可以从以下列表中选择网站:
如何获得最佳网站性能
选择中国网站(中文或英文)以获得最佳网站性能。其他 MathWorks 国家/地区网站并未针对您所在位置的访问进行优化。
美洲
欧洲
亚太
联系您当地的办事处