2012-10-19 39 views
8

Sự khác nhau giữa các câu sau đây là gì?mov% eax, (% esp)

mov %eax,%esp 
mov %eax,(%esp) 

tôi đang làm việc trên khuếch tán một quả bom nhị phân và đang gặp rắc rối với một vài trong số các movleal lệnh sớm trong lắp ráp.

+1

Một bản sao đăng ký. Các tải khác từ bộ nhớ nó trỏ đến. – Mysticial

+4

@Mysticial: Đây là cú pháp AT & T, vì vậy mọi thứ đều ngược lại -% esp và (% esp) là các đích, chứ không phải là nguồn. –

+0

@JerryCoffin AHHHH !!! Tôi luôn rơi vào cái bẫy đó ... – Mysticial

Trả lời

10

Điều này sẽ sao chép giá trị trong% eax thành% esp.

mov %eax,%esp 

Điều này sao chép giá trị từ% eax đến vị trí trong bộ nhớ mà% esp trỏ tới.

mov %eax,(%esp) 
+0

cảm ơn rất nhiều! – arc

+0

Bản chất thứ hai là pop eax mà không bị suy giảm – Goaler444

Các vấn đề liên quan