如何从虚拟地址确定页码?

How do I determine the page number from the virtual address?

我正在寻求以下作业问题的帮助:

It is assumed that a program has a virtual space of 1200 words. Consider the following series of virtual addresses:

60; 222; 160; 910; 450; 345; 412; 10; 180; 20; 443; 766; 812.

Give the sequence of the referenced page numbers, assuming that each page has 200 words.

总虚拟 space 与 200 字页面有什么关系?这是否意味着内存有 6 页?如何根据虚拟地址确定页码?

只是寻求帮助来理解这些步骤,而不是完整的解决方案,谢谢!我看过很多例子,但很难找到一种可重复的公式化方法来做到这一点。我很难理解长文本块并且更喜欢数学公式,但可用的答案似乎有非常冗长的解释。

我在想第 1 页上的虚拟地址 #60,因为它小于 200。然后,222 将在第 2 页上,因为 ceiling(222/200) = 2

  1. 对吗? ceiling(virtual address/page size) 是正确的做法吗?

  2. 我如何使用 1200? 1201 的虚拟地址对于那个大小的虚拟 space 是否无效?

对于使用位置表示法(从零开始)的系统,公式是下限(虚拟地址/页面大小),对于基于 1(从 1 开始)的系统,公式是上限(虚拟地址/页面大小)。