Navigacija
Lista poslednjih: 16, 32, 64, 128 poruka.

%ebp

[es] :: Asembler :: %ebp

[ Pregleda: 6039 | Odgovora: 3 ] > FB > Twit

Postavi temu Odgovori

Autor

Pretraga teme: Traži
Markiranje Štampanje RSS

anatogen
Novi Beograd

Član broj: 1294
Poruke: 150
*.ppp-bg.sezampro.yu



Profil

icon %ebp04.12.2001. u 00:30 - pre 272 meseci
Zasto je praksa da se na pocetku funkcije stavlja

push %ebp
movl %esp, %ebp

i onda se bakcemo sa %ebp umesto sa %esp i na kraju sve vratimo kao sto je bilo...
Mislim, u cemu se ogleda veca efikasnost %ebp od %esp ?

vitamini, minerali, suplementi...
 
Odgovor na temu

random
Vladimir Vrzić
Beograd

Član broj: 85
Poruke: 3866
194.106.163.*

Sajt: www.last.fm/user/vrza


+4 Profil

icon Re: %ebp04.12.2001. u 01:25 - pre 272 meseci
Pa ti možeš da referenciraš lokalne promenljive i zadavanjem offseta od stek pointera (ESP reg), ali tu ima puno računanja jer se vrh steka stalno pomera za vreme izvršenja potprograma, i zato se kao olakšica koristi frame pointer (EBP registar) koji ukazuje na fiksnu adresu koja se za vreme izvršenja potprograma ne menja. Na početku rutine snimamo stari EBP na stek, i postavljamo novi EBP da pokazuje na vrh steka pri ulazu u tu rutinu.

pushl %ebp
movl %esp,%ebp

Na kraju, pri izlasku, moramo da vratimo EBP u stanje u kome smo ga našli.

movl %ebp,%esp
popl %ebp

Čini mi se da ovo i obezbeđuje izvesnu zaštitu od brljanja sa esp-om, jer se po izlasku iz potprograma u ESP stavlja vrednost koju smo na početku na neki način "sačuvali" u EBP.

Voja će to svakako znati i bolje da ti objasni od mene.

[Ovu poruku je menjao Vojislav Milunovic dana 04.12.2001 u 12:13 PM GMT]
int rand(void);

Those who do not understand Unix are condemned to reinvent it, poorly.

Upali lampicu — koristi Jabber!
 
Odgovor na temu

Vojislav Milunovic

Član broj: 25
Poruke: 2117
*.fwi.com



+1 Profil

icon Re: %ebp04.12.2001. u 12:13 - pre 272 meseci
Pa dobro si objasnio :) + sto omogucava lakse pristupanje argumentima giunkcije.
sa ebp pristupas sa movl 0x8(%ebp),%eax dok bi sa %esp morao da pamtis gde je sad esp pa dodaj toliko + 4 da se pristupi prvom argumentu.
 
Odgovor na temu

anatogen
Novi Beograd

Član broj: 1294
Poruke: 150
*.ppp-bg.sezampro.yu



Profil

icon Re: %ebp06.12.2001. u 02:44 - pre 272 meseci
zahvaljujem...
vitamini, minerali, suplementi...
 
Odgovor na temu

[es] :: Asembler :: %ebp

[ Pregleda: 6039 | Odgovora: 3 ] > FB > Twit

Postavi temu Odgovori

Navigacija
Lista poslednjih: 16, 32, 64, 128 poruka.