Asembler x86/Wstęp
Procesory z rodziny IA-32 (zwanej też 80x86 lub krócej x86) na dobre rozgościły się w komputerach domowych. Nie może to być zaskoczeniem - procesory x86 projektowane są jako tanie i stosunkowo wydajne urządzenia, co przy dobrej dokumentacji dało taki a nie inny rezultat. Jednak pomimo zasięgu swego występowania, dość duża część ich użytkowników nie zdaje sobie sprawy, jak one działają. Niniejszy podręcznik adresowany jest zarówno dla osób chcących się uczyć programowania w języku asemblera, jak i dla wszystkich, którzy chcą zrozumieć, jak działa przeciętny pecet. Zanim zaczniemy kodować dobrze jest poznać nasze nowe środowisko pracy. Dlatego najpierw zaczniemy od uproszczonej historii najsłynniejszej rodziny procesorów.
Intel
edytuj8086
edytujDane techniczne | |
---|---|
Cecha | Opis |
Rok rozpoczęcia produkcji | 1978 |
Rok zakończenia produkcji | 1990 |
Producent | Intel |
Minimalne taktowanie | 5 MHz |
Maksymalne taktowanie | 10 MHz |
Pierwszym procesorem z linii 80x86 był 8086. Jego ekspansję bardzo ułatwiła współpraca jego producenta - firmy Intel z firmą IBM - głównym producentem PC-tów. 8086 był 16-bitowym procesorem, z 20-bitową przestrzenią adresową. Oznacza to, że mógł zaadresować maksymalnie 1 MB pamięci RAM. Nie było to dużo, lecz w ówczesnych czasach wystarczało do wszystkiego. Przestrzeń adresowa dla urządzeń wejścia/wyjścia była 16-bitowa, zatem mikroprocesor ten mógł zaadresować do 65 536 portów (216 = 65536). Pracował w trybie rzeczywistym oraz wyposażony był w segmentację pamięci. Oprócz tego, procesor nie umożliwiał praktycznie żadnej, sprzętowej ochrony pamięci, zaś jego wczesne technologie wstępnego pobierania rozkazów i ich dekodowania były nastawione na przyspieszenie pracy rozkazów o operandach umieszczonych w rejestrach lub bezpośrednich. Rozkazy wykorzystujące operandy w pamięci były znacznie wolniejsze (na szczęście 4 lata później, ten problem z wydajnością został naprawiony przy mikroprocesorach 80186 i 80286).
80186
edytujDane techniczne | |
---|---|
Cecha | Opis |
Rok rozpoczęcia produkcji | 1982 |
Rok zakończenia produkcji | produkowany do dzisiaj (wersja CMOS) |
Producent | Intel |
Minimalne taktowanie | 6 MHz |
Maksymalne taktowanie | 12 MHz |
Ten procesor nie był wielką rewolucją w porównaniu do 8086. Główne cechy to zwiększona wydajność zarówno w taktowaniu jak i dekodowaniu rozkazów. Mimo wszystko został wyposażony w takie elementy jak: kontroler DMA, różnego rodzaju zegary (ang. timers), kontroler przerwań, odswieżanie pamięci i oszczędzanie poboru mocy. Ciekawostką jest fakt, że z nielicznymi wyjątkami ten układ nigdy nie został użyty do budowy komputerów PC. Wykorzystany był niemal wyłącznie jako mikroprocesor urządzeń wbudowanych, gdzie występuje do dziś.
80286
edytujDane techniczne | |
---|---|
Cecha | Opis |
Rok rozpoczęcia produkcji | 1982 |
Rok zakończenia produkcji | 1990 |
Producent | Intel, AMD, Harris Corporation, Siemens AG |
Minimalne taktowanie | 6 MHz |
Maksymalne taktowanie | 25 MHz |
Następnym procesorem w serii był 80286. Nadal procesor 16-bitowy, jednak miał spore zmiany. Szyna adresowa została rozszerzona do 24 linii ( czyli de facto przestrzeń adresowa była 24-bitowa). Wskutek tej zmiany procesor mógł zaadresować do 16 MB pamięci. Nowy model miał też kilka nowych rozkazów, niektóre spośród tych instrukcji umożliwiały "zapisywanie" stanu rejestrów, dzięki czemu procesor mógł przerwać wykonywanie jednego programu, zapisać w jakim miejscu program został zatrzymany i kontynuować pracę z innym programem. Odpowiednie instrukcje w stosunku do 8086 były wykonywane niemal dwukrotnie szybciej. Specjalne tryby adresowania - takie jak bazowo-indeksowe - były wykonywanie znacznie szybciej niż na poprzednikach dzięki specjalnym obwodom, zaprojektowanym właśnie dla 80286 (przykładowo 8086 takie samo adresowanie wykonywał przy pomocy jednostki arytmetyczno-logicznej która dosłownie "pochłaniała" sporo cykli procesora). Zastosowanie 80286 było zupełnie inne niż jego poprzednika - ten układ był szeroko rozpowszechniony w komputerach klasy IBM PC.
80386
edytujDane techniczne | |
---|---|
Cecha | Opis |
Rok rozpoczęcia produkcji | 1986 |
Rok zakończenia produkcji | październik 2007 |
Producent | Intel, AMD, IBM |
Minimalne taktowanie | 16 MHz |
Maksymalne taktowanie | 40 MHz |
W procesorze 386 nastąpiła mała rewolucja. Był to pierwszy, w pełni 32-bitowy procesor Intela do zastosowań domowych.Zaprojektowany był z myślą o systemach operacyjnych obsługujących wiele użytkowników naraz oraz wiele równoległych programów. Właśnie ten procesor jako pierwszy zapoczątkował nowy, płaski model pamięci, oraz wprowadził 3 tryby pracy: chroniony, rzeczywisty i zupełnie nowy w celu kompatybilności wstecznej - wirtualny. Od momentu jego powstania zaczęło się mówić o linii i386, zaś następne implementacje miały na celu ciągłe zwiększenie szybkości wykonywanych rozkazów. W niektórych źródłach można się natknąć na określenie generacji P3, co oznacza właśnie nową podrodzinę i386. Z punktu widzenia technicznego nowy mikroprocesor miał 32-bitową magistralę adresową, co umożliwia zaadresowanie do 4 GB pamięci. Wszystkie rejestry ogólnego przeznaczenia zostały rozszerzone do 32-bitów, a sam procesor wyposażono w osobne rejestry wspomagające debugowanie (co było zupełną nowością). Dzięki nowemu modelowi pamięci oraz jednostki stronicującej swoją "premierę" miała pamięć wirtualna umożliwiająca wykonywanie wielu zadań na raz oraz na adresowanie i używanie większej ilości pamięci niż komputer w istocie miał. Krótko po wydaniu 80386 pojawiły się jego podwersje, w związku z tym przemianowano go na 80386DX aby uniknąć nieporozumień. Oto i warianty tego układu:
- i386SX - tańszy model, który posiadał 16-bitową magistralę danych, której układ przypominał tą z 8086. W ten sposób zredukowano koszty produkcji. Co dziwniejsze SX posiadał 32-bitową magistralę adresową, jednak tylko 24 piny były podpięte ograniczając limit pamięci do 16 MB (na wzór Motoroli 68000). Zarówno dla wersji DX jak i SX był dostępny zewnętrzny układ, odpowiednio i387DX i i387SX, czyli po prostu koprocesor.
- i386SL - ten wariant był stworzony z myślą o oszczędności energii dla laptopów. Ten model oferował także czwarty tryb pracy procesora: SMM (ang. System Management Mode), pozwalający na "usypianie" laptopa czy hibernację.
80486
edytujDane techniczne | |
---|---|
Cecha | Opis |
Rok rozpoczęcia produkcji | 1989 |
Rok zakończenia produkcji | 2007 |
Producent | Intel, IBM |
Minimalne taktowanie | 16 MHz |
Maksymalne taktowanie | 50 MHz |
Pierwszy model w rodzinie 32-bitowych procesorów, który przekroczył 1 milion tranzystorów. 80486 w pełni wykorzystywał tzw. potoki (ang. pipelines). Polegało to na równoległej pracy różnych podukładów mikroprocesora w celu zwiększenia wydajności (analogicznie jak praca taśmy produkcyjnej w przedsiębiorstwie motoryzacyjnym - wiele czynności wykonywanych równolegle w tym samym czasie). Procesor 80486 był w pełni kompatybilny binarnie z swoimi poprzednikami oraz jako pierwszy w historii miał wbudowany koprocesor (FPU). Oczywiście Intel wydał kilka wersji tego samego procesora:
- i486DX - zwany po prostu i486, posiadał wbudowane FPU.
- i486SX - wariant bez koprocesora (albo go nie posiadał, albo był on wyłączony).
- i486DX2 - ten model posiadał wbudowany zegar procesora bijący dwukrotnie szybciej niż w i486DX.
- i486SX2 - tym czym dla i486DX był i486SX, tym właśnie dla i486DX2 jest i486SX2. Uboższa wersja nieposiadająca FPU.
- i486SL - energooszczędna wersja, zredukowano w niej pobór mocy.
Intel Pentium
edytujPentium I
edytujDane techniczne | |
---|---|
Cecha | Opis |
Rok rozpoczęcia produkcji | 1993 |
Rok zakończenia produkcji | 1999 |
Producent | Intel |
Minimalne taktowanie | 30 MHz |
Maksymalne taktowanie | 300 MHz |
Ten procesor rozpoczął następną generację zwaną też P5. Nazwa Pentium wzięła się od połączenia greckiego słowa pente (πέντε), co oznacza 'pięć' wraz z łacińską końcówką "-ium". Konwencja nazywania cyframi nowych układów zakończyła się na i486. Mimo wszystko, nadal funkcjonuje pojęcie i586, które jest jednak nieoficjalne. Głównymi ulepszeniami były superskalarność (jest to cecha mikroprocesorów oznaczająca możliwość ukończenia kilku instrukcji na raz w pojedynczym cyklu zegara), technologia SIMD oraz 64-bitowa magistrala danych. Co więcej Pentium I oferował ponad dwukrotnie większą wydajność niż i486.
Pentium II
edytujDane techniczne | |
---|---|
Cecha | Opis |
Rok rozpoczęcia produkcji | 1997 |
Rok zakończenia produkcji | 1999 |
Producent | Intel |
Minimalne taktowanie | 233 MHz |
Maksymalne taktowanie | 450 MHz |
Tak jak i poprzednik zarówno i ten model wyznaczył nową gałąź produktów Intela, zwaną P6. Zawierał już 7.5 miliona tranzystorów oraz miał swoje dwie odmiany: niskobudżetowego Celerona, nastawionego głównie na stacje robocze oraz wydajnego Xeona stworzonego z myślą o serwerach. W stosunku do Pentium I nie zawierał dość istotnych usprawnień. Zmieniono jedynie sposób mocowania procesora do płyty głównej oraz rozbudowano pamięć cache.
Pentium III
edytujDane techniczne | |
---|---|
Cecha | Opis |
Rok rozpoczęcia produkcji | 1999 |
Rok zakończenia produkcji | 2003 |
Producent | Intel |
Minimalne taktowanie | 450 MHz |
Maksymalne taktowanie | 1.4 GHz |
Pentium III należał do szóstej generacji procesorów Intela (P6). Najbardziej znaczącą zmianą było dodanie technologii SSE, która umożliwiała jednoczesne operacje na dużej ilość danych zmiennoprzecinkowych (głównie wykorzystywane w grafice 3D). Również i ten procesor miał swoich kuzynów: Celerona i Xeona o tych samych właściwościach co Pentium II. Nowy układ był pierwszym w historii, który przekroczył prędkość 1 GFLOPS (czyli wykonywał 1 miliard operacji na liczbach rzeczywistych w ciągu 1 sekundy) teoretycznie potrafił także osiągnąć 2 GFLOPS. Własnie ten model został "bazą" dla dalszych badań nad procesorem Pentium w wersji dla laptopów.
Pentium M
edytujDane techniczne | |
---|---|
Cecha | Opis |
Rok rozpoczęcia produkcji | 2003 |
Rok zakończenia produkcji | 2008 |
Producent | Intel |
Minimalne taktowanie | 900 MHz |
Maksymalne taktowanie | 2.26 GHz |
Literka "M" w nazwie wzięła się od słowa "mobilny" (ang. mobile). Był to procesor wykonany wyłącznie dla komputerów przenośnych, stanowiący podstawę dla nowej platformy - Intel Centrino. Początkowo posiadał nowość w postaci SSE2, końcowe modele był już z kolei dwurdzeniowe. Także i ten model należy do rodziny P6. Pentium M potrafił pracować z częstotliwością jak Pentium 4 w wersji mobilnej przy niejednokrotnie dużo niższym poborze mocy.
Pentium 4
edytujDane techniczne | |
---|---|
Cecha | Opis |
Rok rozpoczęcia produkcji | 2000 |
Rok zakończenia produkcji | 2008 |
Producent | Intel |
Minimalne taktowanie | 1.3 GHz |
Maksymalne taktowanie | 3.8 GHz |
Od tego procesora Intel zmienił całkowicie postępowanie przy rozbudowie procesorów. Projektanci założyli (na wzór AMD), że częstotliwość taktowania zegara to nie wszystko. Od teraz polegali głównie na potokowości, dbano o wykonywaniu jak największej liczby instrukcji w danej jednostce czasu. Nową linię produkcyjną nazwali NetBurst (potocznie dla zachowania schematu - P7). Dodano technologie SSE2 oraz SSE3, które były niezastąpione przy obróbce multimediów. Wielką nowością, niemal rewolucyjną w świecie procesorów Intela było wsparcie architektury EMT64, czyli niektóre modele Pentium 4 były już w pełni 64-bitowe (niemniej potrafiły nadal wykonywać 32-bitowy kod). Wprowadzono także wielowątkowość zwaną Hyper-threading Technology (HTT).
AMD
edytujAm286
edytujDane techniczne | |
---|---|
Cecha | Opis |
Rok rozpoczęcia produkcji | 1982 |
Rok zakończenia produkcji | 1990 (pod koniec wyłącznie dla urządzeń wbudowanych) |
Producent | AMD na licencji Intel |
Minimalne taktowanie | 8 MHz |
Maksymalne taktowanie | 25 MHz |
Procesor ten był identycznym klonem i286. Posiada wszystkie cechy kompatybilne z 80286 przy niewielkich zmianach taktowania zegara. Produkowany na podstawie umowy licencyjnej z firmą Intel. W praktyce procesor ten sam co i286.
Am386
edytujDane techniczne | |
---|---|
Cecha | Opis |
Rok rozpoczęcia produkcji | 1991 |
Rok zakończenia produkcji | produkowany do dzisiaj (tylko dla urządzeń wbudowanych) |
Producent | AMD |
Minimalne taktowanie | 40 MHz |
Maksymalne taktowanie | 40 MHz |
Początkowo firma Intel miała monopol na procesory z serii i386 jednak w 1991 roku korporacja AMD wypuściła swój procesor o nazwie Am386. Był to mikroprocesor w 100 % kompatybilny z 80386 firmy Intel. Umowa handlowa podpisana między obiema firmami dotyczyła procesorów 80286 jednak AMD zinterpretował ją na swój sposób w związku z czym został pozwany do sądu. Rozprawa zakończyła się zwycięstwem AMD nad Intelem i od tego momentu Am386 jest pełnoprawnym, legalnym procesorem stanowiącym poważną alternatywę dla układów Intela, tym bardziej, że sprzedawane były w znacznie niższych cenach. To umocniło pozycję AMD na rynku czyniąc go najwiekszą konkurencją "procesorowego giganta". Co więcej Am386 był nawet kompatybilny z 80486 dorównując mu również prędkością, niestety tylko w obliczeniach na liczbach całkowitych gdyż wówczas nic nie było w stanie pokonać wbudowanego koprocesora i487.
Am486
edytujDane techniczne | |
---|---|
Cecha | Opis |
Rok rozpoczęcia produkcji | 1990 |
Rok zakończenia produkcji | 1995 |
Producent | AMD |
Minimalne taktowanie | 25 MHz |
Maksymalne taktowanie | 120 MHz |
Am486 był przykładem zaciętej, ekonomicznej "wojny" z firmą Intel. Bazowany na układzie i486, produkt AMD oferował ponad 20 % większą wydajność, zaś chip Am486 z taktowaniem 40 MHz był tańszy niż 80486 przy częstotliwości 33 MHz, co stanowi niezwykle atrakcyjną alternatywę z punktu widzenia klienta. Dalsze procesory z serii Am486 pobierały prąd o napięciu 3.3V zaś procesory Intela 5V. Procesor Am486 miał dość sporo swoich modeli takich jak: Am486 DX , Am486 DX2 , Am486 DX4, Am486 SX, Am486 SX2, zaś na końcu nazwy znajdowała się cyfra stanowiąca taktowanie zegara, na przykład Am486DX2-80.
AMD K5
edytujDane techniczne | |
---|---|
Cecha | Opis |
Rok rozpoczęcia produkcji | 1996 (choć zaprojektowany w 1995) |
Rok zakończenia produkcji | 1997 |
Producent | AMD |
Minimalne taktowanie | 75 MHz |
Maksymalne taktowanie | 133 MHz |
Począwszy od AMD-K5 firma AMD rozpoczęła produkcję własnych procesorów, opartych na własnych technologiach i rozwiązaniach, bez wzorowania się na serii 80x86. Ten procesor został zbudowany z myślą o stanowienia konkurencji dla rodziny Pentium. Pod względem podejścia technicznego K5 przypominał bardziej Pentium Pro, niemniej końcowy produkt miał mimo wszystko wydajność zbliżoną do Pentiuma. K5 posiadał 4.3 mln tranzystorów, 5 jednostek do obliczeń na liczbach całkowitych oraz wbudowany FPU. Wydajność koprocesora w porównaniu do jednostki zmiennoprzecinkowej Pentium było ok 10 % gorsza. Z racji tego, że Intel wprowadził techologię MMX dopiero w 1997 roku, K5 nie posiadał instrukcji wspierających ją. Jak większość procesorów K5 posiadał swoje podmodele - SSA/5 oraz 5k86. Niestety pomimo wszelkich starań inżynierów AMD procesor K5 był generalnie mniej wydajny niż Pentium, zatem nie zagościł na dobre na komputerach stacjonarnych.
AMD-K6
edytujDane techniczne | |
---|---|
Cecha | Opis |
Rok rozpoczęcia produkcji | 1997 |
Rok zakończenia produkcji | 1997 |
Producent | AMD |
Minimalne taktowanie | 166 MHz |
Maksymalne taktowanie | 300 MHz |
Procesor K6 tak jak swój poprzednik został zaprojektowany jako konkurent dla klasy Pentium. W tym przypadku dla szczególnego modelu jakim był Pentium II, jednak po niższej cenie. Z perspektywy technologicznej K6 posiadał nie tylko wsparcie dla MMX ale także zupełnie nowatorską, zwaną 3DNow!. O ile MMX pracowało na liczbach całkowitych, o tyle 3DNow! na liczbach zmiennoprzecinkowych, co było szczególnie przydatne w grafice 3D jak i obróbce audio/wideo. Mimo, że K6 posiadał bardzo niskie napięcie i wysoki mnożnik (wskutek czego nie był w pełni kompatybilny z niektórymi płytami głównymi) to jego efektywność pozytywnie zaskoczyła konsumentów. Produkty AMD stały się od modelu K6 poważnymi konkurentami dla procesorów firmy Intel, prezentując wysoką jakość przy niższych kosztach produkcji.
Athlon
edytujDane techniczne | |
---|---|
Cecha | Opis |
Rok rozpoczęcia produkcji | 1999 |
Rok zakończenia produkcji | 2005 |
Producent | AMD |
Minimalne taktowanie | 500 MHz |
Maksymalne taktowanie | 2.3 GHz |
Athlon był procesorem z tak zwanej siódmej generacji, nazwa kodowa tej architektury to K7. Nazwa wzięła się z starożytnego języka greckiego, od słowa Decathlon (podobnie jak Pentium). Oprócz klasycznego zwiększania wydajności oraz tradycyjnego dla AMD modyfikowania dekodera rozkazów Athlon oferował wsparcie nie tylko dla 3DNow! ale i dla intelowskiego SSE, choć nie był z nim w pełni kompatybilny. Także FPU został rewolucjonizowany. Do tej pory koprocesor był wąskim gardłem procesorów AMD jednak w Athlonie użyto potokowości co znacznie wpłynęło na wydajność całego układu. Pamięć cache została zwiększona do dwóch poziomów w stylu tzw architektury harvardzkiej. Athlon miał swoje liczne odmiany: Argon, Pluto, Orion, ThunderBird, Palomino, ThoroughBred, Barton. Na jądrze ThunderBird były oparte: Athlon, Athlon Mobile-4, oraz Duron, który miał tylko zablokowaną część cache drugiego poziomu (L2). Na jądrach od Palomino wzwyż: Athlon XP, Athlon MP, AthlonXP-M, Duron. Ciekawostką jest fakt, że Athlony były popularne wśród fanów overclockingu.
Opteron
edytujDane techniczne | |
---|---|
Cecha | Opis |
Rok rozpoczęcia produkcji | 2003 |
Rok zakończenia produkcji | produkowany do dzisiaj |
Producent | AMD |
Minimalne taktowanie | 1.4 GHz |
Maksymalne taktowanie | 3.2 GHz |
Opteron został opracowany z myślą wyłącznie o serwerach jako konkurent intelowskiego Xeona. Jego architektura oraz wykonanie nie były zaprojektowane dla celów domowych. Wyposażono go jednak w pewną innowacyjną cechę którą wykorzystano później w niemal każdym komputerze stacjonarnym - 64-bitowy procesor. Pierwszy w historii układ nazwany 80x86-64. Co więcej procesor potrafił pracować w dawnym 32-bitowym trybie bez spadku wydajności oraz w swoim nowoczesnym 64-bitowym środowisku. Również ważną właściwością było umożliwienie wspólnej pracy kilku procesorów, oraz wsparcie dla wielowątkowości na systemach wielordzeniowych.
Athlon 64
edytujDane techniczne | |
---|---|
Cecha | Opis |
Rok rozpoczęcia produkcji | 2003 |
Rok zakończenia produkcji | produkowany do dzisiaj |
Producent | AMD |
Minimalne taktowanie | 2.2 GHz |
Maksymalne taktowanie | 3.2 GHz |
Jak sama nazwa wskazuje ten model był drugim w pełni 64-bitowym procesorem. Tym razem jednak dla zastosowań domowych. Wyposażony był w cały pakiet technologi SIMD jak: MMX, 3DNow!, SSE, SSE2 i SSE3. Dodatkowo posiadał w rejestrze flag nowy bit zwany NX, służący jako dodatkowy środek bezpieczeństwa przed wirusami. Athlon 64 wprowadził nowy tryb zwany long mode. Był to natywny tryb pracy w środowisku 64-bitowym, pozwalający nie tylko na działanie 64-bitowego systemu operacyjnego ale także uruchamianie 32-bitowych programów pod takim systemem. Dodano także tryb legacy mode będący platformą dla kodu 8-, 16- i 32-bitowego. W tym procesorze nastąpiły liczne zmiany w pamięciach cache oraz ich buforach co wpłynęło na wydajność całego systemu.
Turion 64 X2
edytujDane techniczne | |
---|---|
Cecha | Opis |
Rok rozpoczęcia produkcji | 2006 |
Rok zakończenia produkcji | produkowany do dzisiaj |
Producent | AMD |
Minimalne taktowanie | 1.6 GHz (na rdzeń) |
Maksymalne taktowanie | 2.4 GHz (na rdzeń) |
Turion 64 X2 był dwurdzeniową, mobilną wersją Athlona 64, zatem posiada wszystkie cechy swojego poprzednika. Wyprodukowany wyłącznie na potrzeby komputerów przenośnych jako odpowiedź na Core 2 Duo Intela. Turion 64 X2 posiada wsparcie dla wirtualizacji oraz trybów oszczędności poboru mocy.
Phenom
edytujDane techniczne | |
---|---|
Cecha | Opis |
Rok rozpoczęcia produkcji | 2007/2008 |
Rok zakończenia produkcji | produkowany do dzisiaj |
Producent | AMD |
Minimalne taktowanie | 1.8 GHz (na rdzeń) |
Maksymalne taktowanie | 2.6 GHz (na rdzeń) |
Słowo Phenom pochodzi od angielskiego słowa phenomenon, co po polsku oznacza fenomen. Słowo to dobrze oddaje naturę tego układu, gdyż posiada 3 lub 4 rdzenie co było do tej pory niespotykane. Wyposażony w ten sam zestaw technologii co jego poprzednicy.
Kolejne modele
edytujNastępne wersje procesorów miały coraz większe możliwości w dziedzinie przetwarzania liczb zmiennoprzecinkowych (np. instrukcje MMX) oraz coraz szybsze zegary. Tendencja ta przełamana dopiero została przez firmę AMD, która wprowadzając procesor Athlon udowodniła, że sam zegar to nie wszystko. Wydajność można także zmienić poprzez np. zmniejszenie liczby cyklów zegara potrzebnych do wykonania instrukcji. Dzięki temu w czasie potrzebnym do wykonania jednej instrukcji w nowych procesorach wykonują się dwie instrukcje. Nie oznacza to jednak dwukrotnego wzrostu wydajności, ponieważ w czasie badania wydajności procesora trzeba brać pod uwagę także inne czynniki.