32位一个整数内存地址占4位,64位一个整数内存地址占8位吗?

来源:2-2 CPU的工作原理——内存、寄存器和ALU

慕粉4291707

2020-07-19

关于课程中 06:00 左右提到的“一个整数在 32 位机器下占 4 个内存地址”,这句话我理解起来有点疑惑:
占用内存地址,和占用空间有什么关系吗?我知道比如 int 是 4 个字节,short 是 2 个字节。
那一个整数在 32 位机器下占用 4 个地址的话,在 64 位机器下是占用 8 个地址吗?听上去 64 机器消耗的内存地址变多了,
还是说一个整数在 32 位和 64 位机器下都占用 4 个内存地址,4 这个数量,是因为 int 的关系,因为 int 是 4 个字节。而 64 机器开辟一次内存地址,就是 8 个字节,所以 64 位机器的 8 个内存地址可以存放 2 个整数?
麻烦老师再说得详细一点,谢谢。

写回答

1回答

求老仙

2020-07-21

具体整数是多少位,是计算机语言定义的。比如,cpu64位,但是做语言的人可以让整数是32位。也有可能cpu 32位,语言中整数有64位。所以具体,你要看语言的文档。不能笼统说。比如有的c编译器,int还是16位的。

1
1
慕粉4291707
非常感谢!
2020-07-26
共1条回复

大学计算机必修课新讲--编译原理+操作系统+图形学

轻松超越大学课程,前阿里P8专家的实践精华总结

1752 学习 · 157 问题

查看课程