Forcing a 16 digit display for a 16 bit binary

just to add an example for the 'for if' thing:

void printBinary16(unsigned int iIn)  {
	//                       0b1234567812345678
	for (unsigned int mask = 0b1000000000000000; mask; mask >>= 1) {
		if (mask & iIn) {
			Serial.print('1');
		}
		else {
			Serial.print('0');
		}
	}
}