Main Content

本页翻译不是最新的。点击此处可查看最新英文版本。

bitget

获取指定位置的位

说明

b = bitget(A,bit) 返回整数数组 A 中位于位置 bit 的位值。

示例

b = bitget(A,bit,assumedtype) 假定 A 属于 assumedtype

示例

示例

全部折叠

查找有符号的最大整数和无符号的最大整数之间的二进制表示形式差异。

a1 = intmax('int8');
a2 = intmax('uint8');
b1 = bitget(a1,8:-1:1)
b1 = 1x8 int8 row vector

   0   1   1   1   1   1   1   1

b2 = bitget(a2,8:-1:1)
b2 = 1x8 uint8 row vector

   1   1   1   1   1   1   1   1

有符号的整数需要一个位来容纳负整数。

查找负数的 8 位表示形式。

A = -29;
b = bitget(A,8:-1:1,'int8')
b = 1×8

     1     1     1     0     0     0     1     1

输入参数

全部折叠

输入值,指定为数组。A 可以是标量或与 bit 大小相同的数组。

  • 如果 A 为双精度数组,并且未指定 assumedtype,则 MATLAB® 会将 A 视为无符号的 64 位整数。

  • 如果已指定 assumedtypeA 中的所有元素必须是 assumedtype 类型范围内的整数值。

数据类型: double | int8 | int16 | int32 | int64 | uint8 | uint16 | uint32 | uint64

位的位置,指定为整数或整数数组。bit 可以是标量或与 A 大小相同的数组。bit 必须介于 1(最低有效位)和 A 的整数类中的位数之间。

数据类型: double | int8 | int16 | int32 | int64 | uint8 | uint16 | uint32 | uint64

假定的 A 的数据类型,指定为 'uint64''uint32''uint16''uint8''int64''int32''int16''int8'

  • 如果 A 是双精度数组,assumedtype 可以指定任何有效的整数类型,但默认为 'uint64'

  • 如果 A 是整数类型数组,assumedtype 必须指定相同的整数类型。

数据类型: char | string

输出参量

全部折叠

bit 上的位值,返回为由 01 组成的数组。b 的数据类型与 A 相同。

  • 如果 Abit 是标量,则 b 也是标量。

  • 如果 Abit 为数组,则 b 的大小与该数组相同。

扩展功能

C/C++ 代码生成
使用 MATLAB® Coder™ 生成 C 代码和 C++ 代码。

GPU 代码生成
使用 GPU Coder™ 为 NVIDIA® GPU 生成 CUDA® 代码。

HDL 代码生成
使用 HDL Coder™ 为 FPGA 和 ASIC 设计生成 VHDL、Verilog 和 SystemVerilog 代码。

版本历史记录

在 R2006a 之前推出

另请参阅

| | | | | |