-
Path: news-archive.icm.edu.pl!agh.edu.pl!news.agh.edu.pl!news.cyf-kr.edu.pl!news.nask
.pl!news.nask.org.pl!news.unit0.net!feeder.erje.net!eu.feeder.erje.net!zen.net.
uk!dedekind.zen.co.uk!newsfeed.neostrada.pl!unt-exc-01.news.neostrada.pl!unt-sp
o-a-01.news.neostrada.pl!news.neostrada.pl.POSTED!not-for-mail
From: "slawek" <h...@s...pl>
Newsgroups: pl.comp.programming
Subject: Pętla FOR (w sam raz na poziom FIR'a)
Date: Sat, 27 Apr 2013 18:00:03 +0200
MIME-Version: 1.0
Content-Type: text/plain; format=flowed; charset="iso-8859-2"; reply-type=original
Content-Transfer-Encoding: 8bit
X-Priority: 3
X-MSMail-Priority: Normal
Importance: Normal
X-Newsreader: Microsoft Windows Live Mail 15.4.3555.308
X-MimeOLE: Produced By Microsoft MimeOLE V15.4.3555.308
Lines: 31
Message-ID: <517bf604$0$1250$65785112@news.neostrada.pl>
Organization: Telekomunikacja Polska
NNTP-Posting-Host: 62.69.230.89
X-Trace: 1367078404 unt-rea-a-02.news.neostrada.pl 1250 62.69.230.89:49365
X-Complaints-To: a...@n...neostrada.pl
Xref: news-archive.icm.edu.pl pl.comp.programming:202906
[ ukryj nagłówki ]Takie głupie pytanie - która pętla jest lepsza:
1: for i = 0 to n do call subroutine();
2: for i = n downto 0 call subroutine();
Na zdrowy rozum, obie są takie same. Ale chwila - pierwsza rozwija się
(przynajmniej w niektórych językach) do
cośtam-cośtam-cośtam [zmniejsz rejestr o 1] [porównaj rejestr z wartością
n] [podejmij decyzję o kontynuacji]
natomiast druga do
cośtam-cośtam-cośtam [zmniejsz rejestr o 1] [podejmij decyzję o
kontynuacji]
gdyż znakomita większość CPU nie potrzebuje porównania z zerem po
dekrementacji (ZF się ustawia sama).
Czyli druga postać pętli działa o JEDNĄ INSTRUKCJĘ CPU NA PĘTLĘ SZYBCIEJ -
*WOW*
A teraz bez kłamania - kto tak robi? Wszędzie jak pamiętam pętle są robione
"w górę" nawet jak mogą być "w dół", np. przy przeglądaniu po kolei
wszystkich kontrolek itp.
(Nota Benka - optymalizacja nie bardzo coś dać może, bo czasami trudno
odgadnąć, że n nie zmieni się wewnątrz pętli.)
:)
Następne wpisy z tego wątku
- 27.04.13 18:38 Ministerstwo Propagandy
- 28.04.13 21:04 M.M.
- 28.04.13 21:17 Michoo
- 28.04.13 21:53 firr kenobi
- 28.04.13 23:31 bartekltg
- 29.04.13 10:28 slawek
- 29.04.13 18:53 identyfikator: 20040501
- 30.04.13 07:32 Paweł Kierski
- 01.05.13 20:26 Michoo
Najnowsze wątki z tej grupy
- Alg. kompresji LZW
- Popr. 14. Nauka i Praca Programisty C++ w III Rzeczy (pospolitej)
- Arch. Prog. Nieuprzywilejowanych w pełnej wer. na nowej s. WWW energokod.pl
- 7. Raport Totaliztyczny: Sprawa Qt Group wer. 424
- TCL - problem z escape ostatniego \ w nawiasach {}
- Nauka i Praca Programisty C++ w III Rzeczy (pospolitej)
- testy-wyd-sort - Podsumowanie
- Tworzenie Programów Nieuprzywilejowanych Opartych Na Wtyczkach
- Do czego nadaje się QDockWidget z bibl. Qt?
- Bibl. Qt jest sztucznie ograniczona - jest nieprzydatna do celów komercyjnych
- Co sciaga kretynow
- AEiC 2024 - Ada-Europe conference - Deadlines Approaching
- Jakie są dobre zasady programowania programów opartych na wtyczkach?
- sprawdzanie słów kluczowych dot. zła
- Re: W czym sie teraz pisze programy??
Najnowsze wątki
- 2025-02-12 Warszawa => Expert Recruiter 360 <=
- 2025-02-12 Ostrów Wielkopolski => Area Sales Manager OZE <=
- 2025-02-12 Bieruń => Regionalny Kierownik Sprzedaży (OZE) <=
- 2025-02-12 Dęblin => Node.js / Fullstack Developer <=
- 2025-02-12 Kraków => PHP Full Stack Developer <=
- 2025-02-12 Karta dźwiękowa stereo
- 2025-02-12 Dęblin => JavaScript / Node / Fullstack Developer <=
- 2025-02-12 Gdańsk => Specjalista ds. Sprzedaży <=
- 2025-02-12 Łódź => NodeJS Developer <=
- 2025-02-12 Błonie => Sales Specialist <=
- 2025-02-12 Dziwne zachowanie magistrali adresowej w 8085
- 2025-02-11 Mini pecet
- 2025-02-10 Spalił się spaliniak
- 2025-02-10 zarowka wifi - z sensowna apka lub lepiej albo lokalnie lub przez web. I zeby harmonogram miala
- 2025-02-10 Chrzanów => Programista NodeJS <=