bitget
获取在特定位置上的位
说明
示例
以如下无符号定点 fi
数字为例,其值为 85,字长为 8,小数长度为 0:
a = fi(85,0,8,0); disp(bin(a))
01010101
获取位置 4 上的位的二进制表示:
c = bitget(a,4);
bitget
返回 a
的二进制表示中位置 4 上的位。
从字长为 4、小数长度为 0 的有符号定点 3×3 矩阵开始。
a = fi([2 3 4;6 8 2;3 5 1],0,4,0); disp(bin(a))
0010 0011 0100 0110 1000 0010 0011 0101 0001
获取在指定位置上位的二进制表示。
c = bitget(a,fi(2))
c = 1 1 0 1 0 1 1 0 0 DataTypeMode: Fixed-point: binary point scaling Signedness: Unsigned WordLength: 1 FractionLength: 0
MATLAB® 返回 a
中位置 fi(2)
上的位组成的矩阵。输出矩阵的维度与 a
相同,字长为 1。
从字长为 16、小数长度为 4 的有符号定点向量开始。
a = fi([86 6 53 8 1],0,16,4); disp(bin(a))
0000010101100000 0000000001100000 0000001101010000 0000000010000000 0000000000010000
创建一个指定要获取位的位置的向量。
bit = [1,2,5,7,4]
bit = 1×5
1 2 5 7 4
获取 a
的在 bit
中指定位置上的位的二进制表示。
c = bitget(a,bit)
c = 0 0 1 0 0 DataTypeMode: Fixed-point: binary point scaling Signedness: Unsigned WordLength: 1 FractionLength: 0
bitget
返回由 a
的在 bit
中指定位置上的位组成的向量。输出向量的长度与输入 a
和 bit
相同,字长为 1。
创建一个值为 pi
的默认 fi
对象。
a = fi(pi); disp(bin(a))
0110010010001000
默认对象为有符号、字长为 16。
创建一个由要在 a
中获取位的位置组成的向量,并获取这些位的二进制表示。
bit = fi([15,3,8,2]); c = bitget(a,bit)
c = 1 0 1 0 DataTypeMode: Fixed-point: binary point scaling Signedness: Unsigned WordLength: 1 FractionLength: 0
MATLAB® 返回一个向量,该向量包含 a
中由索引向量 bit
指定的位置上的位。
输入参数
输入数组,指定为由定点 fi
对象组成的标量、向量、矩阵或多维数组。如果 a
和 bit
均为非标量,则它们必须具有相同的维度。如果 a
有一个有符号 numerictype
,则存储整数的位表示是 2 的补码表示。
数据类型:定点 fi
位索引,指定为由 fi
对象或内置数据类型组成的标量、向量、矩阵或多维数组。如果 a
和 bit
均为非标量,则它们必须具有相同的维度。bit
必须包含介于 1
和 a
的字长之间(包括二者)的整数值。LSB
(最右边的位)由位索引 1
指定,MSB
(最左边的位)由 a
的字长指定。bit
不必一定是由连续的位位置组成的向量;它也可以是变量索引值。
a = fi(pi,0,8); a.bin
11001001
数据类型:fi
|single
| double
| int8
| int16
| int32
| int64
| uint8
| uint16
| uint32
| uint64
输出参量
输出数组,指定为无符号标量、向量、矩阵或多维数组,其 WordLength
为 1。
如果 a
是数组且 bit
是标量,则 c
是字长为 1 的无符号数组。此无符号数组包含 a
中每个定点元素中位置 bit
上的位的值。
如果 a
是标量且 bit
是数组,则 c
是字长为 1 的无符号数组。此无符号数组包含 a
中 bit
指定位置上的位的值。
扩展功能
C/C++ 代码生成
使用 MATLAB® Coder™ 生成 C 代码和 C++ 代码。
对于 VHDL®,生成切片运算符:a(idx)
。
对于 Verilog®,生成切片运算符:a[idx]
。
版本历史记录
在 R2006a 之前推出
MATLAB Command
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 国家/地区网站并未针对您所在位置的访问进行优化。
美洲
- América Latina (Español)
- Canada (English)
- United States (English)
欧洲
- Belgium (English)
- Denmark (English)
- Deutschland (Deutsch)
- España (Español)
- Finland (English)
- France (Français)
- Ireland (English)
- Italia (Italiano)
- Luxembourg (English)
- Netherlands (English)
- Norway (English)
- Österreich (Deutsch)
- Portugal (English)
- Sweden (English)
- Switzerland
- United Kingdom (English)