2011-04-24 49 views
1

我正在几个地方进行面试,我在其中一个讨论论坛上看到了这个问题。32位系统中的字节?

一个32位的 位系统中包含多少个字节?

给出的答案是2^29或536870912 - 我相信这是因为在32位系统可寻址存储器2^32比特和8个比特的字节给出2^32/8 = 2^29个字节。 有人可以确认我是否在正确的轨道上?

谢谢!

+0

我不喜欢这个面试问题。我们如何知道它的RAM,视频RAM,文件系统等? – alternative 2011-04-24 20:49:33

+2

在几乎所有情况下,给出的答案都是错误的。这个问题也很糟糕。如果我是你,我会完全忽略它,或者至少找到一个更清晰的版本。 – 2011-04-24 20:52:49

+0

@michael @mathepic - 是的,这个问题真的是开放性的。我想面试官希望应聘者提出进一步的问题以澄清问题 – Craig 2011-04-24 23:49:07

回答

8

可寻址单元是一个字节,而不是一个位。

因此32位指针允许寻址2^32字节。

+0

错字。 2^32字节 – 2011-04-24 20:52:01

+0

@tom:修改了c-smile的答案。 – 2011-04-24 20:54:25

+0

为什么我没有想到:) – 2011-04-24 20:55:51

1

这不是2 ** 32 可以访问,这是2 ** 32 单词可访问。如果我们说每个字4个字节,则2 ** 34个字节是更接近的值。

尽管传统系统是面向字节的,因此可以访问2 ** 32个字节。

+0

那么,在x86上,可访问的是2 ** 32字节,而不是位或字。其他架构可能会有所不同。 – 2011-04-24 20:50:47

2

如果问题确实如此:“2^32位系统中有多少个字节?”,答案是正确的。

(但还是坏措施)