The correct answer is B. 4.
A hexadecimal digit can be represented by 4 binary bits. This is because there are 16 possible values for a hexadecimal digit, from 0 to 15, and each binary bit can have one of two values, 0 or 1. Therefore, 4 binary bits can represent 16 different values, which is enough to represent all 16 hexadecimal digits.
Option A is incorrect because 3 binary bits can only represent 8 different values, which is not enough to represent all 16 hexadecimal digits. Option C is incorrect because 6 binary bits can only represent 64 different values, which is also not enough to represent all 16 hexadecimal digits. Option D is incorrect because 8 binary bits can represent 256 different values, which is more than necessary to represent all 16 hexadecimal digits. Option E is incorrect because it is not one of the possible answers.