Bit manipulation can be categorized into several classes:
; Byte manipulation
: Operate on a byte at a specified bit ___location and size{{efn|Often limited to a single word or less, e.g., 1-8 on the [[IBM 7030]], and sometimes not allowed to cross word boundaries.}}
: Operate on a string of bytes as above
; Connectives
: Combine two bit strings bit-by-bit with one of the 16 two-input Boolean, or three such with one of 256 three-input Ternary logic functions.
; Counting
: Operation on all bits to find, e.g.,
:# First or last 0 or 1
:# Total number of 1 bits
; Masking
: Perform an operation only on the elements{{efn|E.g., bits, bytes, words.}} selected by a mask
:# Extract
:# Insert
;Reversing
:Reverse the bit or byte order of a string
; Shifting
: Arithmetic shift
: Logical shift
: Rotate
; Testing
: Testing whether selected bits are all zero, all one, or mixed