gpt4 book ai didi

bit - 8 位和 16 位架构

转载 作者:行者123 更新时间:2023-12-02 05:20:29 24 4
gpt4 key购买 nike

我对位架构有点困惑。我只是找不到一篇好的文章来回答我的问题,所以我想我会问。

问题一:

当谈到 16 位架构时,是否意味着每个 ram 地址都是 16 位长?因此,如果我在 C++ 中创建一个 int(32 位)变量将占用 2 个地址?

问题二:

在 16 位架构中,RAM 中只有 2^16 (65536) 个地址。他们为什么不能添加更多?这是因为 16 位不能表示更高的值,因此不能引用 65535 以上的地址吗?

最佳答案

When speaking of a 16 bit architecture, does it mean each ram address is 16 bits long? So if I create an int (32 bit) in C++ the variable would take up 2 addresses?

您必须询问那些谈论 16 位架构的人,他们的意思是什么。它们可能意味着地址是 16 位长。它们可能意味着通用 CPU 寄存器是 16 位长。他们可能意味着别的东西。但是我们无法知道某个假设的人可能意味着什么。对于什么使某些东西成为“16 位架构”,没有统一的定义。

例如,8032 是一个 8 位架构,具有 8 位通用寄存器。但它有一个 16 位指针寄存器,可用于寻址 65,536 字节的存储。

不管位数如何,几乎所有的系统都使用字节地址。所以一个 32 位的变量在任意位数的机器上都会占用 4 个地址。

in a 16 bit architecture there are only 2^16 (65536) amount of addresses inside the RAM. Why can't they add more? Is this because 16 bit can't represent a higher value and therefore can't reference to adresses above 65535?

对于 16 位,只有 65,536 种可能的方式可以设置这些位。所以一个 16 位寄存器有 65,536 个可能的值。

关于bit - 8 位和 16 位架构,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13919451/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com