最近项目需要将之前开发的32位程序迁移到64位操作系统。对于上层应用程序而言没有什么特别的差异。对于底层程序例如嵌套汇编等对寄存器的操作需要考虑这个问题,不同点在于字节对齐,寄存器操作和指令的不同。
对齐单位32位和64位是不一样的。
寄存器,32位的有eax、ebx,而64位操作系统是rax、rbx。
指令:32位的pushl、addl、movl,而64位中是push、add、mov
原文地址:http://blog.csdn.net/fengjingge/article/details/42525149