When we say that registers and memory chips represent numbers of
n-bit length,why n must always be a power of 2?(8,16,32 an so on).
It's not a hard requirement, just very convenient. For example, if an instruction wants to address individual bits in a word, it can efficiently encode the bit number if the word is 2^n bits long. If we had a "bitset n" instruction on a 16-bit computer, 4 bits in the instruction will tell which bit to set. Although not as important now since hardware is so highly integrated, hardware used to come in parts that were commonly 4 and 8 bits wide.
The strangest computer I ever worked with had 6-bit bytes arranged in 48-bit rectangular words.