"Assume a system with 4 GB virtual memory and 1 GB physical memory with 32 bit addresses. if the page size is 4 KB, How many bits will be allocated as the Higher Order Address bits and Lower Order Address bits to identify page numbers and corresponding words respectively?" My question is, What does "higher order address bits" and "lower order address bits" mean in the above question?
According to the problem, the address itself is 32 bits long. Some of those bits (the higher order ones, i.e. closer to the msb) are used to identify a page, and some of those bits (the lower order ones, i.e. farther from the msb) are used to identify a word within that page. The question here is, how many bits should be allocated for each part, to ensure you can address as much of your memory as possible.
(The msb is the "most significant bit": the one that has the highest place value. We can't just talk about the "first bit" or the "last bit" because nobody can agree on whether the msb comes first or last. It's a headache for anyone doing network programming.)