汇编语言棘手的内存地址

时间:2014-04-21 21:47:12

标签: c gcc assembly att

我们得到提示(使用AT& T ASM)

eax      = A

ebx      = B

ecx      = &X

edx      = &Y

据我所知(%eax)会抓取A中内存位置的数据,但会抓住什么(%edx)?比如说电话

 movl (%edx), %ebx

另外

movl %eax, (%ecx)

第一次调用是否只是用& Y(y的内存位置)替换%ebx的当前值,第二次调用是否用值A替换内存位置& X中的数据?

操作movl%edx,%eda怎么样?这只是将& Y的内存位置移动到eax中吗?

由于

1 个答案:

答案 0 :(得分:0)

来自' C'语言观点:

eax      = A

eax获取A值的副本。

ebx      = B

ebx获取B值的副本。

ecx      = &X

ecx获取X的地址(或内存位置)。

edx      = &Y

edx获取y的地址(或内存位置)。