bitarithm.h File Reference

Helper functions for bit arithmetic. More...

Detailed Description

+ This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Macros

#define SETBIT(val, bit)   val |= (bit)
 Sets a bitmask for a bitfield. More...
 
#define CLRBIT(val, bit)   val &= (~(bit))
 Clears bitmask for a bitfield. More...
 
#define ARCH_32_BIT   (__INT_MAX__ == 2147483647)
 1 for 32 bit architectures, 0 otherwise
 
Single Bit Defines
#define BIT0   0x00000001
 
#define BIT1   0x00000002
 
#define BIT2   0x00000004
 
#define BIT3   0x00000008
 
#define BIT4   0x00000010
 
#define BIT5   0x00000020
 
#define BIT6   0x00000040
 
#define BIT7   0x00000080
 
#define BIT8   0x00000100
 
#define BIT9   0x00000200
 
#define BIT10   0x00000400
 
#define BIT11   0x00000800
 
#define BIT12   0x00001000
 
#define BIT13   0x00002000
 
#define BIT14   0x00004000
 
#define BIT15   0x00008000
 
#define BIT16   0x00010000
 
#define BIT17   0x00020000
 
#define BIT18   0x00040000
 
#define BIT19   0x00080000
 
#define BIT20   0x00100000
 
#define BIT21   0x00200000
 
#define BIT22   0x00400000
 
#define BIT23   0x00800000
 
#define BIT24   0x01000000
 
#define BIT25   0x02000000
 
#define BIT26   0x04000000
 
#define BIT27   0x08000000
 
#define BIT28   0x10000000
 
#define BIT29   0x20000000
 
#define BIT30   0x40000000
 
#define BIT31   0x80000000
 

Functions

unsigned bitarithm_msb (unsigned v)
 Returns the number of the highest '1' bit in a value. More...
 
unsigned bitarithm_lsb (register unsigned v)
 Returns the number of the lowest '1' bit in a value. More...
 
unsigned bitarithm_bits_set (unsigned v)
 Returns the number of bits set in a value. More...