Article View: pl.comp.lang.asm
Article #254Re: optymalizacja
From: tosamo
Date: Thu, 18 May 2006 22:34
Date: Thu, 18 May 2006 22:34
43 lines
2463 bytes
2463 bytes
Użytkownik "Bogdan (bogdro)" <bogdan@bogdan.pl> napisał w wiadomości
news:e4hbi4$fpm$1@atlantis.news.tpi.pl...
> tosamo napisał(a):
>> Użytkownik "Bogdan (bogdro)" <bogdan@bogdan.pl> napisał w wiadomości
>> news:e4ffrk$he5$1@nemesis.news.tpi.pl...
>>> tosamo napisał(a):
>>>> Witam
>>>>
>>>> Pisze sobie porgramik w masm32 (wersja 6.11 chyba). Do tej pory pisalem
>>>> glownie w c i pascalu wiec na poczatku
>>>> program w asm wygladal jak dokladna kalka z jezykow wyzszego rzedu i
>
> - zamiast kilku PUSHów na rejestrach, daj "sub esp, xxx" i sekwencję
> "mov [esp+xxx], yyy". Jeśli możliwe, przekazuj parametry (o ile są
> potrzebne) w rejestrach. Dla twardzieli: nie używaj EBP w funkcjach i
> operuj na ESP.
> {..}
No dobra. Wiekszosc z rozwiazan o ktorych piszesz probowalem stosowac.
Niektore
rzeczywiscie mocno przyspieszyly prorgam (np rezygnacja z push i pop).
Jedna rzecz mnie totalnie zalamala :
mov eax,offset Intermediate_Hash
mov DWORD PTR [eax+20],067452301h
Zmienna zadeklarowana jest tak
To fragment procedurki ktory powinein wystarczyc do przedstawienai problemu
To sie wykonuje 40us (dla porownania caly hash z wyjatkiem tego kawalka
liczy sie tylko 12us !!)
Disassemblowalem podobna procedure z c. Jest praktycznie identyczna do tego
co sam napisalem
i wykonuje sie w czasie ponizej 1us.
Robilem wszystko co sie dalo (lacznie z mov ecx,067452301h i mov mov DWORD
PTR [eax+20],ecx) i nic.
Ta
Technical Details
Message-ID:
<e4ispp$av3$1@inews.gazeta.pl>Path:
mbox-mo1.pugleaf.net!news-archive.icm.edu.pl!news.gazeta.pl!not-for-mailReferences:
<e4f5nl$rj4$1@inews.gazeta.pl> <e4ffrk$he5$1@nemesis.news.tpi.pl> <e4fi7h$q1b$1@inews.gazeta.pl> <e4hbi4$fpm$1@atlantis.news.tpi.pl>Show Full Headers
Complete Article Headers
Path: mbox-mo1.pugleaf.net!news-archive.icm.edu.pl!news.gazeta.pl!not-for-mail From: "tosamo" <tosamo@o2.pl> Newsgroups: pl.comp.lang.asm Subject: Re: optymalizacja Date: Fri, 19 May 2006 00:34:30 +0200 Organization: "Portal Gazeta.pl -> http://www.gazeta.pl" Lines: 45 Message-ID: <e4ispp$av3$1@inews.gazeta.pl> References: <e4f5nl$rj4$1@inews.gazeta.pl> <e4ffrk$he5$1@nemesis.news.tpi.pl> <e4fi7h$q1b$1@inews.gazeta.pl> <e4hbi4$fpm$1@atlantis.news.tpi.pl> NNTP-Posting-Host: aakz207.neoplus.adsl.tpnet.pl X-Trace: inews.gazeta.pl 1147991673 11235 83.5.29.207 (18 May 2006 22:34:33 GMT) X-Complaints-To: usenet@agora.pl NNTP-Posting-Date: Thu, 18 May 2006 22:34:33 +0000 (UTC) X-MimeOLE: Produced By Microsoft MimeOLE V6.00.3790.1830 X-Priority: 3 X-RFC2646: Format=Flowed; Original X-Newsreader: Microsoft Outlook Express 6.00.3790.1830 X-User: etet100 X-MSMail-Priority: Normal MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit