bcopy, bcmp, bzero, ffs - bit and byte string operations

void bcopy(src, dst, length)
const void *src;
void *dst;
size_t length;

int bcmp(b1, b2, length)
const void *b1, *b2;
size_t length;

void bzero(b, length)
void *b;
size_t length;

int ffs(i)
int i;

The functions bcopy, bcmp, and bzero operate on variable length
strings of bytes. They do not check for null bytes as the routines
in string(3) do.

Bcopy copies length bytes from string src to the string dst.

Bcmp compares byte string b1 against byte string b2, returning zero
if they are identical, non-zero otherwise. Both strings are
assumed to be length bytes long. Bcmp of length zero bytes always
returns zero.

Bzero places length 0 bytes in the string b1.

Ffs finds the first bit set in the argument passed it and returns
the index of that bit. Bits are numbered starting at 1, from the
right. A return value of 0 indicates the value passed is zero.

The bcopy routine take parameters backwards from strcpy.