In binary 28 = 256. That is a byte can hold one of 256 distinct values ranging from 0 to 255. In Hexadecimal notation that is 00 to FF.
In older computers, one byte was sufficient to hold one 8 bit character. These days, especially on .NET or international versions of Win 32, 16 bits is needed. See char.

