Main Content

bitcmp

按位补码

说明

示例

cmp = bitcmp(A) 返回 A 的按位补码。

示例

cmp = bitcmp(A,assumedtype) 假定 A 属于 assumedtype

示例

全部折叠

A = int8(-11);
cmp = bitcmp(A)
cmp = int8
    10

当数字以二进制形式显示时,可以查看求补运算。

original = bitget(A,8:-1:1)
original = 1x8 int8 row vector

   1   1   1   1   0   1   0   1

complement = bitget(bitcmp(A),8:-1:1)
complement = 1x8 int8 row vector

   0   0   0   0   1   0   1   0

cmp = bitcmp(64,'uint8')
cmp = 191
maxint = intmax('uint8') - 64
maxint = uint8
    191

无符号的整数的补码等于用其数据类型的最大整数减去其自身。

输入参数

全部折叠

输入值,指定为有符号的整数数组、无符号的整数数组或双精度数组。

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

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

数据类型: 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

输出参量

全部折叠

按位补码,以有符号的整数数组、无符号的整数数组或双精度数组形式返回。cmp 的大小和类型与 A 相同。

扩展功能

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

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

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

版本历史记录

在 R2006a 之前推出

另请参阅

| | | | | |