计算机系统类和虚拟内存 - 代数工作
我有什么可能是更多的数学问题,但这个问题是源于在虚拟内存章节阅读我的计算机系统书...所以我觉得有道理在这里问它。计算机系统类和虚拟内存 - 代数工作
书中指出:
每个虚拟页是P = 2 p在大小字节。
我的代数是生锈的,这可能是我需要问这个问题的原因。现在,我正在看一个例子,我们知道P = 1024
。这是否意味着我可以通过简单地识别哪个p
会使
1024 = 2 p是真实的?
如果我的顿悟是真实无误的,那么1024 = 2 应该是我的答案。那是P=1024
和p=10
。
是的。这只是一个像其他任何方程式一样。
我认为这个问题是不是编程相关的边缘,但无论如何,中f(x)=a
x
逆是g(x)=log(x)/log(a)
。你只需要得到P = 1024的基数2的对数就可以找到p
,这就是10.
它不应该是'ln(x)/ ln(a)'吗? – 2009-08-09 20:42:48
我确实承认这是一个边界问题,但它与计算机科学有关。其他人可能需要这些信息。 – 2009-08-09 20:45:24
它适用于任何对数基数。只是用欧拉常数e作为基础。 – 2009-08-09 20:45:32
你要求的是二进制对数(ld n)。通过重复除以2来计算它,当你达到1时打破它,并且计算你分裂的频率(实际上它只是它的整数部分+ -1,但是对于2的幂,对数是一个自然数)。
是。
为了解决p
您需要使用对数函数,基地2
。求解
P = log(p, 2)
或
10 = log(1024, 2)
如果你没有提供给你一个方便,花花公子对数函数,它可以让你设置的基础上,你可以用这个。有趣的是,它并不重要基地登录您在两个功能使用,只要它们是相同的:
P = log(p) ÷ log(2)
对数是指数的对立面 - 他们只是一个方法来计算的数你必须乘以一个数字来得到答案,扩展为支持那些答案不是原始数字整数的情况。
希望这会有所帮助。
它确实有帮助,谢谢。 – 2009-08-09 20:48:05
谢谢你的直接答案。 – 2009-08-09 20:46:57