cpu-architecture相关内容

32位机器可以访问多少内存?

32 位或 64 位机器是什么意思? 这是处理器架构……32位机器可以和64位机器一样同时读写32位数据…… 32 位机器可以访问的最大内存是多少? 它是2^32=4Gb(4Gigabit = 0.5 GigaByte) 这意味着 4Gb 内存? 如果我为 64 位机器考虑相同的方式,那么我可以拥有 16ExbiBytes 的内存..这可能吗? 我的概念正确吗? ..
发布时间:2021-11-26 14:38:00 其他开发

QWORD 在 64 位机器上的大小是多少?

我目前正在寻找上述问题的答案.到目前为止,我发现有人说,字长是指处理器寄存器的大小,这表明在 64 位机器上,字长是 64 位,因此 QWORD(4 * 字)的大小是 256 位. 但另一方面,我发现了诸如 这 表示大小为 128 位(32 位为 64 位,64 位为两倍),而即使如此,其他人建议大小为 64 位.但最后一个与 Microsoft 有某种关系,它通过将单词的大小定义为 16 ..
发布时间:2021-11-26 14:37:02 其他开发

x86 和 x64 共享指令集?

我不知道 32 位应用程序如何在 64 位操作系统上运行. 我的理解是 32bit/64bit 是指寄存器大小.指令集应该不同,因为它们有不同大小的寄存器. 但我知道有 x86-64 指令集,它是 x86 指令集的 64 位版本. 我们可以在 64 位操作系统上运行 32 位应用程序的原因是因为 x86-64 吗? 如果是这样,为什么 32 位应用程序有时在 64 位窗口中 ..
发布时间:2021-11-26 14:28:01 其他开发

在 32 位 CPU 上,“整数"类型是否比“短"类型更有效?

在 32 位 CPU 上,一个整数是 4 个字节,一个短整数是 2 个字节.如果我正在编写一个使用许多数值的 C/C++ 应用程序,这些数值总是适合所提供的短整数范围,使用 4 字节整数还是 2 字节整数更有效? 我听说 4 字节整数更有效,因为这适合从内存到 CPU 的总线带宽.但是,如果我将两个短整数相加,CPU 是否会在一次并行中打包这两个值(从而跨越总线的 4 字节带宽)? 解 ..
发布时间:2021-11-26 14:02:13 其他开发

为什么处理排序数组比处理未排序数组更快?

这是一段 C++ 代码,显示了一些非常奇特的行为.出于某种奇怪的原因,对数据进行排序(在定时区域之前)奇迹般地使循环快了近六倍. #include #include #include int main(){//生成数据const unsigned arraySize = 32768;整数数据[数组大小];for (unsigned c = 0; c = 128)总和 += 数据 [ ..
发布时间:2021-11-25 10:07:44 Java开发

x86 和 x64 共享指令集?

我不知道 32 位应用程序如何在 64 位操作系统上运行. 我的理解是 32bit/64bit 是指寄存器大小.指令集应该不同,因为它们有不同大小的寄存器. 但我知道有 x86-64 指令集,它是 x86 指令集的 64 位版本. 我们可以在 64 位操作系统上运行 32 位应用程序的原因是因为 x86-64 吗? 如果是这样,为什么 32 位应用程序有时在 64 位窗口中 ..
发布时间:2021-11-25 07:00:30 C#

检测cpu架构的正确方法?

我正在尝试检测用于安装 x86 msi 或 x64 msi 文件的正确 CPU 架构. 如果我是对的,对于 msi,我需要 os cpu 架构 我不完全确定我的方法是否正确,因为我无法对其进行测试.你怎么看? 私有静态字符串 GetOSArchitecture(){string arch = System.Environment.GetEnvironmentVariable("PRO ..
发布时间:2021-11-25 06:03:23 C#/.NET

64位系统的优点

从开发人员的角度,我想了解 64 位系统的卖点是什么? 我知道您可以使用更多寄存器,可以为进程分配更多内存,但我无法理解是什么让开发人员的生活更轻松.有什么例子吗? 从性能的角度来看,如果程序在 32 位和 64 位上运行,是否有任何收益? 干杯! 编辑:感谢您的所有回复.我看到一些针对最终用户体验的对话,尽管它可能很重要......我更多地关注您可以挤出的任何架构优势. ..
发布时间:2021-11-25 05:51:31 C/C++开发

将 32 位 C++ 代码移植到 64 位 - 值得吗?为什么?

我知道 x64 架构的一些明显优势(更高的可寻址 RAM 地址等)...但是: 如果我的程序不需要在本机 64 位模式下运行怎么办.我应该移植它吗? 结束 32 位支持是否有可预见的截止日期? 我的应用程序是否会像原生 x64 代码那样运行得更快/更好/更安全? 解决方案 x86-64 是一个特殊情况 - 对于许多架构(例如 SPARC),为 64 位模式编译应用程序并没有给它任 ..
发布时间:2021-11-25 05:44:39 C/C++开发

x86、x32 和 x64 架构之间的区别?

请解释x86、x32和x64的区别?当涉及到 x86 和 x32 时,它有点令人困惑,因为大多数时候 32 位程序在 x86 上运行... 解决方案 x86 是指在 PC 中使用的 Intel 处理器架构.型号为 8088(8086 的 8 位总线版本,用于第一台 IBM PC)、8086、286、386、486.之后他们切换到名称而不是数字以阻止 AMD 复制处理器名称.Pentium ..
发布时间:2021-11-25 05:04:07 C#

在计算机中使用 32 位或 64 位处理器,为什么不使用 40 位或其他数字?

例如,在 32 位处理器的情况下,一个字是 4 字节长.是否也可以使用 5 字节字或其他? 解决方案 是否也可以使用5字节的字或其他 是的.您甚至可以通过位字段只使用几个位而不是整个字节/字.从技术上讲,编译器可以在任何架构上支持任何整数大小,例如 16 位计算机上的 12 位、30 位或 96 位 int.事实上,Clang 刚刚为具有任意位宽的整数提供了一个新的扩展名为 _E ..
发布时间:2021-11-25 00:26:11 C#

编译为 x86 时检测 OS x86 或 x64

我开发了引导软件来启动我的游戏.我用 Go 做到了这一点.跨平台对我来说尤其重要.另外,我不想将下载链接分成两个 x86/x64.我想在一个输出中处理所有事情.这就是我必须编译到 x86 的原因.当我这样做时,我无法正确检测到操作系统是 x86 还是 x64. 在编译为 x86 的软件中,我如何正确检测操作系统 x86 或 x64(在 Go 中). 编译为 x86 时,此代码不正确. ..
发布时间:2021-11-25 00:19:35 C#

双精度运算:32 位与 64 位机器

与在 32 位机器上执行相比,在 64 位机器上执行 64 位操作(例如双精度操作)时,为什么我们看不到两倍的性能? 在 32 位机器中,我们不需要从内存中获取两倍的数据吗?更重要的是,我们执行 64 位操作不需要两倍的周期吗? 解决方案 “64 位机器"是一个含糊不清的术语,但通常意味着处理器的通用寄存器是 64 位宽的.比较 8086 和 8088,它们具有相同的指令集并且都可以 ..
发布时间:2021-11-25 00:06:19 C#

在 Objective C (Mac OS X) 中检测 CPU 架构(32 位/64 位)运行时

我目前正在编写一个 Cocoa 应用程序,它需要执行一些(控制台)针对 32 位和 64 位优化的应用程序.因此,我想检测应用程序在什么 CPU 架构上运行,以便我可以启动正确的控制台应用程序. 简而言之:如何检测应用程序是否在 64 位操作系统上运行? 编辑:我知道 Mach-O 胖二进制文件,那不是我的问题.我需要知道这一点,以便我可以启动另一个非捆绑(控制台)应用程序.一种针对 ..
发布时间:2021-11-25 00:05:17 移动开发

32位机器可以访问多少内存?

32 位或 64 位机器是什么意思? 这是处理器架构……32位机器可以和64位机器一样同时读写32位数据…… 32 位机器可以访问的最大内存是多少? 它是2^32=4Gb(4Gigabit = 0.5 GigaByte) 这意味着 4Gb 内存? 如果我为 64 位机器考虑相同的方式,那么我可以拥有 16ExbiBytes 的内存..这可能吗? 我的概念正确吗? ..
发布时间:2021-11-24 23:26:06 C#

QWORD 在 64 位机器上的大小是多少?

我目前正在寻找上述问题的答案.到目前为止,我发现有人说,字长是指处理器寄存器的大小,这表明在 64 位机器上,字长是 64 位,因此 QWORD(4 * 字)的大小是 256 位. 但另一方面,我发现了诸如 这 表示大小为 128 位(32 位为 64 位,64 位为两倍),而即使如此,其他人建议大小为 64 位.但最后一个与 Microsoft 有某种关系,它通过将单词的大小定义为 16 ..
发布时间:2021-11-24 23:25:15 C#

x86 和 x64 共享指令集?

我不知道 32 位应用程序如何在 64 位操作系统上运行. 我的理解是 32bit/64bit 是指寄存器大小.指令集应该不同,因为它们有不同大小的寄存器. 但我知道有 x86-64 指令集,它是 x86 指令集的 64 位版本. 我们可以在 64 位操作系统上运行 32 位应用程序的原因是因为 x86-64 吗? 如果是这样,为什么 32 位应用程序有时在 64 位窗口中 ..
发布时间:2021-11-24 23:11:47 C#

在 32 位 CPU 上,“整数"类型是否比“短"类型更有效?

在 32 位 CPU 上,一个整数是 4 个字节,一个短整数是 2 个字节.如果我正在编写一个使用许多数值的 C/C++ 应用程序,这些数值总是适合提供的短整数范围,使用 4 字节整数还是 2 字节整数更有效? 我听说 4 字节整数更有效,因为这适合从内存到 CPU 的总线带宽.但是,如果我将两个短整数相加,CPU 是否会将这两个值并行打包一次(从而跨越总线的 4 字节带宽)? 解决方 ..
发布时间:2021-11-24 22:48:42 C#

为什么处理排序数组比处理未排序数组更快?

这是一段 C++ 代码,显示了一些非常奇特的行为.出于某种奇怪的原因,对数据进行排序(在定时区域之前)奇迹般地使循环快了近六倍. #include #include #include int main(){//生成数据const unsigned arraySize = 32768;整数数据[数组大小];for (unsigned c = 0; c = 128)总和 += 数据 [ ..
发布时间:2021-11-22 14:47:09 Java开发