バカ基本的な質問をさせてください

IA-32 on NASM です

サブルーチンの先頭でよく見かける
push ebp
mov ebp, esp
は、何をしてるんでしょうか?
ebp を push する意味って esp を ebp に mov するためですよね?
この mov って必要なんですか?
引数とからんでる気はするんですが・・・
教えてください><