IAb*_*act 6 x86 assembly x86-64 32bit-64bit
我正在阅读这个问题,并想知道接受的答案是否也可能是确定架构的一种方法.例如,在asm中我可以将WORD推入堆栈然后检查SP.将新SP与旧SP进行比较:
Diff的4表示32位
Diff的8表示64位
我这个想法是否正确?
不,因为堆栈的大小取决于您运行的模式(真实,受保护,长/ 64,vm86,smm等),而不是基于体系结构.例如,如果程序集在保护模式下运行,则堆栈将为32位(如果操作数为16位,则为16位),即使处理器为x86-64.
就像上面提到的评论中的某些人一样,CPUID是告诉你的架构是什么的唯一可靠方式.
| 归档时间: |
|
| 查看次数: |
1855 次 |
| 最近记录: |