收集整理了一份《2024年最新物联网嵌入式全套学习资料》,初衷也很简单,就是希望能够帮助到想自学提升的朋友。
需要这些体系化资料的朋友,可以加我V获取:vip1024c (备注嵌入式)
一个人可以走的很快,但一群人才能走的更远!不论你是正从事IT行业的老鸟或是对IT行业感兴趣的新人
都欢迎加入我们的的圈子(技术交流、学习资源、职场吐槽、大厂内推、面试辅导),让我们一起学习成长!
操作系统本身也是一个软件,实际上可以看作一系列的指令流
32位的系统可以看成一系列32位的指令流
64位的系统可以看成一系列64位和32位的指令流
应用程序可以理解为目标文件(在linux上是ELF格式),也就是一堆机器指令
显然,64位的CPU上能跑32位的应用程序,能跑32位的应用程序
32位的CPU能跑32位应用,不能跑64位应用。
总之:64位的系统或者64位的应用程序都要对应64位的指令,而这只能对应64位CPU
硬件是软件的基础。
注:cpu多少位和操作系统、驱动的关系:
操作系统和驱动应该保持位数一致
四、开发工具和位数的关系
VS可以都是32位的,没有64位的但32位的VS可以开发x64和x86的程序。
应用程序和所调用的库的位数要一致,不能混用64位和32位的代码,比如不能在64位的应用程序上调用32位的动态链接库,反之亦然。可以用depends来查看dll的调用,以及(0xc000007错误)
在VS中如何判断编译环境是64位还是32位(用于跨平台应用)
在 Win32 配置下,_WIN32 有定义,_WIN64 没有定义。在 x64 配置下,两者都有定义。即在 VC 下,_WIN32 一定有定义。
因此,WIN32/_WIN32 可以用来判断是否 Windows 系统(对于跨平台程序),而 _WIN64 用来判断编译环境是 x86 还是 x64
致谢
1、32位与64位 CPU、编译器、操作系统、应用程序、arm和X86关系
收集整理了一份《2024年最新物联网嵌入式全套学习资料》,初衷也很简单,就是希望能够帮助到想自学提升的朋友。
需要这些体系化资料的朋友,可以加我V获取:vip1024c (备注嵌入式)
一个人可以走的很快,但一群人才能走的更远!不论你是正从事IT行业的老鸟或是对IT行业感兴趣的新人
都欢迎加入我们的的圈子(技术交流、学习资源、职场吐槽、大厂内推、面试辅导),让我们一起学习成长!
一个人可以走的很快,但一群人才能走的更远!不论你是正从事IT行业的老鸟或是对IT行业感兴趣的新人
都欢迎加入我们的的圈子(技术交流、学习资源、职场吐槽、大厂内推、面试辅导),让我们一起学习成长!