"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.)

  • 1
    $\begingroup$ So in this question, What they are asking from us is, the number of digits that should be allocated for page numbers and page offset in the Logical address right? $\endgroup$ – Sankha Rathnayake Jul 5 '18 at 7:42
  • $\begingroup$ @DerekElkins Fair; added an explanation of that $\endgroup$ – Draconis Jul 5 '18 at 18:00
  • $\begingroup$ @SankhaRathnayake The number of bits, not digits, but yep! $\endgroup$ – Draconis Jul 5 '18 at 18:00

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.