Fortran Coder

标题: 关于32位,64位的问题 [打印本页]

作者: andy8496    时间: 2014-6-5 21:28
标题: 关于32位,64位的问题
写了一个程序,以后可能在32/64位操作系统上运行。有以下问题请教各位:

1.代码是否需要按照操作系统的要求修改?还是两种操作系统用同一版本代码即可?写此种代码是否有注意事项?
2.我应该怎么设置编译参数?32位?64位?还是为两个操作系统哥准备一个版本?
3.若用同一个编译后的程序(exe)分别到两种操作系统上运行,结果是否会有不同(有人说结果会不同)?
4.能否介绍下32位、64位操作系统的异同?为什么有的程序能在两个系统上同时运行?有的只能在一种系统上运行?

先谢过了!

作者: 楚香饭    时间: 2014-6-5 22:15
第一问:
>>64位编译器产生64位可执行程序,32位编译器产生32位可执行程序。
>>64位操作系统可运行64位程序,也可运行32位程序。32位操作系统只可运行32位程序。
第二问:
>>这取决于你的期望。如果只考虑兼容性,那么用32位编译器。如果考虑程序的执行效率,那么用64位编译器。
第三问:
>>严格的程序代码,应该结果是一致的。出现不一致,可能是代码不严谨,或者算法本身具有高度的病态性,导致小的精度积累导致结果差异很大。
第四问:
>>64位比32位具有更高的执行效率,更大的内存容限,可以允许更多的数组内存大小。后面的问题参考第一问。
作者: andy8496    时间: 2014-6-6 08:44
谢谢大神!
基本解决了我的疑惑!
关于此问题之前还想到其他的疑虑,现在想不起来了,等想到了再上来追问。
再次感谢!
作者: 岸边的鱼    时间: 2014-6-9 22:00
andy8496 发表于 2014-6-6 08:44
谢谢大神!
基本解决了我的疑惑!
关于此问题之前还想到其他的疑虑,现在想不起来了,等想到了再上来追问。 ...

围观大神恢复,顺便学点经验
作者: mangix2010    时间: 2014-6-18 23:01
岸边的鱼 发表于 2014-6-9 22:00
围观大神恢复,顺便学点经验

没事多逛逛论坛,争取也顺便参与讨论




欢迎光临 Fortran Coder (http://bbs.fcode.cn/) Powered by Discuz! X3.2