Files
C1-Linux_SYS_Prog-AS-/bitmaps_imp/bitsop.h
2024-02-20 11:22:31 +05:30

14 lines
368 B
C

/* Assuming least significant bit starts from 0th bit*/
#ifndef __BITS__
#define __BITS__
#define IS_BIT_SET(n, pos) ((n & (1 << (pos))) != 0)
#define TOGGLE_BIT(n, pos) (n = n ^ (1 << (pos)))
#define COMPLEMENT(num) (num = num ^ 0xFFFFFFFF)
#define UNSET_BIT(n, pos) (n = n & ((1 << pos) ^ 0xFFFFFFFF))
#define SET_BIT(n, pos) (n = n | 1 << pos)
#endif