- int n = 0; \
- while ((nbits - n) >= BITMAP_WORD_BITS) { \
- WORD(dst, n) = WORD(src1, n) _op WORD(src2, n); \
- n += BITMAP_WORD_BITS; \
- } \
- while ((nbits - n) >= 8) { \
- BYTE(dst, n) = BYTE(src1, n) _op BYTE(src2, n); \
- n += 8; \
- } \
- if (BITS(nbits)) { \
- BYTE(dst, nbits) &= ~BITS(nbits); \
- BYTE(dst, nbits) |= (BYTE(src1, nbits) _op BYTE(src2, nbits)) \
- & BITS(nbits); \