首页 > 解决方案 > "lea eax, [a]" 与 "mov eax, a" 不同

问题描述

我对 lea 的理解是它加载地址而不是值,并且“lea eax,[a]”与“mov eax,a”相同。但是,当我编写代码“mov eax,printf”时,printf函数的地址没有加载到eax中,调用该地址会导致seg错误。如果我将其更改为“lea eax,[printf]”,则会加载正确的地址并按预期进行调用。我是组装初学者。有人可以向我解释为什么吗?

标签: assemblyx86

解决方案


推荐阅读