🚀 go-pugleaf

RetroBBS NetNews Server

Inspired by RockSolid Light RIP Retro Guy

Article View: pl.comp.lang.asm
Article #2019

Re: CheckDlgButton

#2019
From: Bogdan (bogdro)
Date: Fri, 02 Oct 2009 16:20
48 lines
2388 bytes
Remek pisze:
> Użytkownik "gupi manʼaʼgo" napisał:
> 
>> które to zależy od tego, czy w bloku procedury czy w bloku ją wołającym!
> 
> Mógłbys jasniej? W bloku wołajacym? Co to takiego?

 Proszę bardzo:

proc1:	; blok wywołujący procedurę

	push	eax
	push	ecx
	push	edx

	call	proc2	; może zmienić EAX, ECX, EDX

	pop	edx
	pop	ecx
	pop	eax
...

proc2:	; blok wywoływany - nie wolno zmieniać EBX, ESI, EDI, EBP

	push	ebx
	push	esi
	push	edi
	push	ebp

	; wolno nam zmieniać EAX, ECX, EDX, więc robimy co

	pop	ebp
	pop	edi
	pop	esi
	pop	ebx
	ret

 Jeśli proc2 jest procedurą systemową, na pewno zachowa EBX, ESI, EDI,
EBP, ale prawie na pewno zmieni EAX, ECX, EDX.
 Jeśli proc2 to Twoja procedura wywoływana przez system (np. coś w
stylu WinMain), to ma obowiązek zachować EBX, ESI, EDI, EBP, zaś może
dowolnie zmieniać EAX, ECX, EDX i Windows się za to nie obrazi.

-- 
Pozdrawiam/Regards - Bogdan                     (GNU/Linux & FreeDOS)
Kurs asemblera x86 (DOS, GNU/Linux):http://rudy.mif.pg.gda.pl/~bogdro
Grupy dyskusyjne o asm:  pl.comp.lang.asm alt.pl.asm alt.pl.asm.win32
www.JabberPL.org www.TorProject.org Soft (EN): miniurl.pl/bogdro-soft
Technical Details
Message-ID: <ha5986$mgm$2@inews.gazeta.pl>
Path: mbox-mo1.pugleaf.net!news-archive.icm.edu.pl!news.gazeta.pl!not-for-mail
References: <h8iatf$se5$2@inews.gazeta.pl> <h8l3u0$ptv$1@news.onet.pl><h8o0i1$62t$1@inews.gazeta.pl> <h8q79e$m3f$1@news.onet.pl><h97mpu$l21$1@inews.gazeta.pl> <h9fjh5$7b3$1@news.onet.pl><h9qg9v$7s1$1@inews.gazeta.pl> <h9rts6$29hg$1@adenine.netfront.net><h9vhjp$s4b$2@inews.gazeta.pl> <ha2stj$2v3f$1@adenine.netfront.net><ha4jnh$nrq$1@inews.gazeta.pl> <ha4n3o$2o20$1@adenine.netfront.net> <ha4nvp$bub$1@inews.gazeta.pl>

Show Full Headers
Complete Article Headers
Path: mbox-mo1.pugleaf.net!news-archive.icm.edu.pl!news.gazeta.pl!not-for-mail
From: "Bogdan (bogdro)" <bogdan@poczta.gazeta.pl>
Newsgroups: pl.comp.lang.asm
Subject: Re: CheckDlgButton
Date: Fri, 02 Oct 2009 18:20:19 +0200
Organization: "Portal Gazeta.pl -> http://www.gazeta.pl"
Lines: 48
Message-ID: <ha5986$mgm$2@inews.gazeta.pl>
References: <h8iatf$se5$2@inews.gazeta.pl> <h8l3u0$ptv$1@news.onet.pl><h8o0i1$62t$1@inews.gazeta.pl> <h8q79e$m3f$1@news.onet.pl><h97mpu$l21$1@inews.gazeta.pl> <h9fjh5$7b3$1@news.onet.pl><h9qg9v$7s1$1@inews.gazeta.pl> <h9rts6$29hg$1@adenine.netfront.net><h9vhjp$s4b$2@inews.gazeta.pl> <ha2stj$2v3f$1@adenine.netfront.net><ha4jnh$nrq$1@inews.gazeta.pl> <ha4n3o$2o20$1@adenine.netfront.net> <ha4nvp$bub$1@inews.gazeta.pl>
NNTP-Posting-Host: 66.230.230.230
Mime-Version: 1.0
X-Trace: inews.gazeta.pl 1254500427 23062 66.230.230.230 (2 Oct 2009 16:20:27 GMT)
X-Complaints-To: usenet@agora.pl
NNTP-Posting-Date: Fri, 2 Oct 2009 16:20:27 +0000 (UTC)
X-User: bog.d
In-Reply-To: <ha4nvp$bub$1@inews.gazeta.pl>
User-Agent: Thunderbird 2.0.0.23 (X11/20090812)
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit