Documentation

This is machine translation

Translated by Microsoft
Mouseover text to see original. Click the button below to return to the English verison of the page.

Note: This page has been translated by MathWorks. Please click here
To view all translated materals including this page, select Japan from the country navigator on the bottom of this page.

bitget

Get bits at certain positions

Syntax

c = bitget(a, bit)

Description

example

c = bitget(a, bit) returns the values of the bits at the positions specified by bit in a as unsigned integers of word length 1.

Examples

collapse all

Consider the following unsigned fixed-point fi number with a value of 85, word length 8, and fraction length 0:

a = fi(85,0,8,0);
disp(bin(a))
01010101

Get the binary representation of the bit at position 4:

c = bitget(a,4);

bitget returns the bit at position 4 in the binary representation of a.

Begin with a signed fixed-point 3-by-3 matrix with word length 4 and fraction length 0.

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

Get the binary representation of the bits at a specified position.

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® returns a matrix of the bits in position fi(2) of a. The output matrix has the same dimensions as a, and a word length of 1.

Begin with a signed fixed-point vector with word length 16, fraction length 4.

a = fi([86 6 53 8 1],0,16,4);
disp(bin(a))
0000010101100000   0000000001100000   0000001101010000   0000000010000000   0000000000010000

Create a vector that specifies the positions of the bits to get.

bit = [1,2,5,7,4]
bit =

     1     2     5     7     4

Get the binary representation of the bits of a at the positions specified in bit.

c = bitget(a,bit)
c = 

     0     0     1     0     0

          DataTypeMode: Fixed-point: binary point scaling
            Signedness: Unsigned
            WordLength: 1
        FractionLength: 0

bitget returns a vector of the bits of a at the positions specified in bit. The output vector has the same length as inputs, a and bit, and a word length of 1.

Create a default fi object with a value of pi.

a = fi(pi);
disp(bin(a))
0110010010001000

The default object is signed with a word length of 16.

Create a vector of the positions of the bits you want to get in a, and get the binary representation of those bits.

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® returns a vector of the bits in a at the positions specified by the index vector, bit.

Input Arguments

collapse all

Input array, specified as a scalar, vector, matrix, or multidimensional array of fixed-point fi objects. If a and bit are both nonscalar, they must have the same dimension. If a has a signed numerictype, the bit representation of the stored integer is in two's complement representation.

Data Types: fixed-point fi

Bit index, specified as a scalar, vector, matrix or multidimensional array of fi objects or built-in data types. If a and bit are both nonscalar, they must have the same dimension. bit must contain integer values between 1 and the word length of a, inclusive. The LSB (right-most bit) is specified by bit index 1 and the MSB (left-most bit) is specified by the word length of a. bit does not need to be a vector of sequential bit positions; it can also be a variable index value.

a = fi(pi,0,8);
a.bin
11001001

Data Types: fi|single | double | int8 | int16 | int32 | int64 | uint8 | uint16 | uint32 | uint64

Output Arguments

collapse all

Output array, specified as an unsigned scalar, vector, matrix, or multidimensional array with WordLength 1.

If a is an array and bit is a scalar, c is an unsigned array with word length 1. This unsigned array comprises the values of the bits at position bit in each fixed-point element in a.

If a is a scalar and bit is an array, c is an unsigned array with word length 1. This unsigned array comprises the values of the bits in a at the positions specified in bit.

Extended Capabilities

C/C++ Code Generation
Generate C and C++ code using MATLAB® Coder™.

See Also

| | | |

Introduced before R2006a

Was this topic helpful?