-
Path: news-archive.icm.edu.pl!agh.edu.pl!news.agh.edu.pl!newsfeed2.atman.pl!newsfeed.
atman.pl!news.supermedia.pl!news.nask.pl!news.nask.org.pl!news.internetia.pl!no
t-for-mail
From: Michoo <m...@v...pl>
Newsgroups: pl.comp.programming
Subject: Re: sortowanie
Date: Thu, 18 Oct 2012 21:09:14 +0200
Organization: Netia S.A.
Lines: 63
Message-ID: <k5pkei$k19$2@mx1.internetia.pl>
References: <k59gbj$be7$1@node2.news.atman.pl> <k59q5n$np3$1@mx1.internetia.pl>
<k5bc6k$4ea$1@mx1.internetia.pl>
<50795bb6$0$1297$65785112@news.neostrada.pl>
<k5bo04$n79$2@mx1.internetia.pl>
<507968f5$0$1220$65785112@news.neostrada.pl>
<k5hr1v$a5s$1@adenine.netfront.net>
<s...@n...notb-home>
<k5kbuv$rbj$1@node1.news.atman.pl>
<c...@g...com>
<f...@g...com>
<k5m1uh$s3v$2@news.task.gda.pl>
<e...@g...com>
<e...@g...com>
<k5maho$i8s$2@news.task.gda.pl>
<8...@g...com>
<k5md5l$p6n$1@news.task.gda.pl>
<a...@g...com>
<k5mga6$290$2@news.task.gda.pl>
<c...@g...com>
<k5mjui$boi$2@news.task.gda.pl> <k5mnbq$vak$1@mx1.internetia.pl>
<k5n4dd$ms1$1@news.task.gda.pl>
NNTP-Posting-Host: 83.238.197.12
Mime-Version: 1.0
Content-Type: text/plain; charset=ISO-8859-2; format=flowed
Content-Transfer-Encoding: 8bit
X-Trace: mx1.internetia.pl 1350587667 20521 83.238.197.12 (18 Oct 2012 19:14:27 GMT)
X-Complaints-To: a...@i...pl
NNTP-Posting-Date: Thu, 18 Oct 2012 19:14:27 +0000 (UTC)
In-Reply-To: <k5n4dd$ms1$1@news.task.gda.pl>
X-Tech-Contact: u...@i...pl
User-Agent: Mozilla/5.0 (X11; Linux i686 on x86_64; rv:10.0.6esrpre) Gecko/20120817
Icedove/10.0.6
X-Server-Info: http://www.internetia.pl/
Xref: news-archive.icm.edu.pl pl.comp.programming:200091
[ ukryj nagłówki ]On 17.10.2012 22:28, Baranosiu wrote:
> Z technicznego punktu widzenia rejestr to taka sama pamięć jak RAM czy
> cache,
Zwłaszcza, że RAM jest pamięcią dynamiczną a cache i rejestry pamięcią
statyczną(i to też pamięć RAM tak w sumie) więc technicznie to się dość
mocno różnią. Logicznie to i to jest pamięcią.
> a że nie jest podpięty do szyny adresowej
Której szyny adresowej? Jest ich w komputerze kilka a jak sam zauważyłeś
rejestry są kawałkiem pamięci - jakoś zaadresować je trzeba.
> ale już na przykład w
> niektórych procesorach RISC (choćby takie małe Atmegi z rdzeniem AVR)
> rejestry są jak najbardziej adresowalne.
Bo skoro na pokładzie jest tylko kilka kilo SRAM to umieszczanie tam
rejestrów jest naturalne. W x86 L1 jest zazwyczaj kilka razy większe a
pamięć rejestrów niewiele mniejsza od całej pamięci w małym uC.
> Takie pierdoły jak "register
> rename" wynikają z prostego faktu, że nawet tanie mikrokontrolery za
> 20zł mają 32 ortogonalne rejestry (nawet Amiga 30 lat temu miała
> 16 rejestrów 32-bitowych, choć nie w pełni ortogonalnych) a Intel robi
> "wielką rewolucję" że w 64-bitowej maszynie raptem dodaje 8
> dodatkowych rejestrów do 4 już istniejących (reszta to indeksowe i
> segmentowe) i tylko dlatego, że AMD to zrobiło wcześniej, więc trzeba
> było "dogonić" konkurencję :D
Ale zauważyłeś że nowe x86 mają takie ciekawostki jak np. prefetch,
których w RISC nie ma?
>
> Pipeline? W 1996 roku na studiach programowałem procesor
> SparcUltra, który (pomijając że w pełni 64-bitowy) wykonywał dwie
> instrukcje w jednym cyklu zegara i trzeba było uważać jak się pisało
> programy w assemblerze, bo jak się po CALL _adres nie dało instrukcji
> NOP, to drugi potok mógł zdążyć wykonać instrukcję za "CALL" zanim się
> skok wykonał :D
Jeżeli to skutkowało błędami to był to kiepski procesor. W momencie gdy
pierwszy dekoder rozkazów trafił na instrukcję skoku (ret, jmp, etc.)
pipeline powinien być blokowany (tzn w niepopsutych rozwiązaniach to
działa tak, że część drugiej instrukcji się wykona, tak gdzieś do zapisu
wyniku).
> "Nikt nie widział eax" bo pewnie nikt do środka nie zaglądał :D A tak
> na serio, to Intele nie są procesorami tzw. hardwired (takie są na
> przykład ARM-y, AVR-y itd.) tylko mają prosty rdzeń i mikrokodem
> załatwiają resztę :D W sumie mogliby udostępnić możliwość ładowania
> własnego mikrokodu, wtedy każdy mógłby stworzyć swój assembler (choć
> od takich rzeczy, to akurat układy FPGA są lepsze :D).
Jesteś pewien, ze ten mikrokod nie jest przynajmniej częściowo wsadem
konfiguracyjnym dla bloków FPGA-like wewnątrz procesora? Przy 3GHz
klasyczny RISC musiałby pracować chyba szybciej niż podłoże krzemowe na
to pozwala...
--
Pozdrawiam
Michoo
Następne wpisy z tego wątku
- 18.10.12 21:37 Edek Pienkowski
- 18.10.12 21:36 Michoo
- 18.10.12 21:38 slawek
- 18.10.12 21:41 Michoo
- 18.10.12 21:47 PK
- 18.10.12 22:01 PK
- 18.10.12 22:10 Michoo
- 18.10.12 22:12 Stachu 'Dozzie' K.
- 18.10.12 22:15 Stachu 'Dozzie' K.
- 18.10.12 23:04 Edek Pienkowski
- 18.10.12 23:06 Edek Pienkowski
- 18.10.12 23:02 PK
- 18.10.12 23:05 Stachu 'Dozzie' K.
- 18.10.12 23:12 PK
- 18.10.12 23:24 PK
Najnowsze wątki z tej grupy
- 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??
- Re: (PDF) Surgical Pathology of Non-neoplastic Gastrointestinal Diseases by Lizhi Zhang
Najnowsze wątki
- 2025-02-01 Śmierć mózgu a narządy do pobrania
- 2025-01-31 A niektórym to naprawdę zależy na ekologi w miastach LPG POWRACA ;-)
- 2025-01-31 Lublin => Programista Delphi <=
- 2025-01-31 Łódź => Programista NodeJS <=
- 2025-01-31 Wrocław => Senior SAP Support Consultant (SD) <=
- 2025-01-31 Warszawa => Full Stack web developer (obszar .Net Core, Angular6+) <=
- 2025-01-31 Gdańsk => iOS Developer (Swift experience) <=
- 2025-01-31 Kraków => UX Designer <=
- 2025-01-31 Warszawa => Data Engineer (Tech Leader) <=
- 2025-01-31 Gliwice => Business Development Manager - Dział Sieci i Bezpieczeńst
- 2025-01-31 Gliwice => Business Development Manager - Network and Network Security
- 2025-01-31 Warszawa => Architekt rozwiązań (doświadczenie w obszarze Java, AWS
- 2025-01-31 Warszawa => Full Stack .Net Engineer <=
- 2025-01-31 Warszawa => Programista Full Stack (.Net Core) <=
- 2025-01-31 Gdańsk => Programista Full Stack .Net <=