Što je registar?

Ako niste osobito zainteresirani za računala, oprostit će vam se ako pretpostavite da su jedini oblici memorije u računalu tvrdi disk i RAM. Oni od vas koje zanimaju računala vjerojatno bi znali da to nije slučaj i da CPU također ima skup predmemorija koje se koriste za spremanje podataka iz RAM-a kako bi im CPU mogao brže pristupiti. Sve su to reklamirane značajke, prvenstveno zato što su brzina i/ili kapacitet pristojna prodajna točka i općenito utječu na razine performansi.

No zapravo postoji još jedan sloj sjećanja. Koliko god mislili da je L1 predmemorija što je moguće bliža stvarnoj procesorskoj jezgri, postoji još jedan viši sloj u hijerarhiji memorije. Ovo su CPU registri. Razlog zašto se oni stvarno ne reklamiraju ili spominju je taj što se zapravo uopće ne mijenjaju. Tehnički, mogli bi biti, međutim, broj i veličina registara zapravo su temeljni za arhitekturu. To znači da svi x86-64 procesori imaju isti broj registara. Ne reklamiraju se jer nisu konkurentska točka.

Što registar radi?

Registar je brzo dostupno mjesto za pohranu procesora. Pristup registru je trenutačan s nultom latencijom, dok čak i L1 predmemorija ima otprilike 4-5 ciklusa latencije u modernim procesorima. Ova neposrednost pristupa ukazuje na slučaj korištenja registara. Registri se koriste za pohranu instrukcija kojima CPU aktivno upravlja. Oni također pohranjuju podatkovne točke koje treba obraditi. Neki registri su opće namjene, dok drugi imaju vrlo specifičnu namjenu. Primjer registra posebne namjene bio bi programski brojač gdje procesor prati svoju poziciju u svom programskom nizu.

Mnogi se registri smatraju dostupnima korisnicima. To ipak ne znači da korisnik računala može birati koju će vrijednost staviti u njih. To znači da pokrenuti softver može specificirati podatke koji se učitavaju u te registre. Manji broj registara su interni, što znači da ih softver uopće ne može adresirati. Registar instrukcija, koji pohranjuje instrukcije koje se trenutno izvode, primjer je internog registra.

Preimenovanje registra

Dok CPU arhitektura može dopustiti samo jednu konfiguraciju registara, zapravo postoji malo nijanse u tome. Svi moderni procesori koriste preimenovanje registara. Ovo je tehnika u kojoj možete imati više fizičkih registara i koristiti ih za prethodno učitavanje podataka ili pohranjivanje podataka koji se odnose na instrukcije izvan reda koje bi inače bile prepisane. Kada CPU dođe do točke kada treba podatke u dodatnim registrima, jednostavno ih preimenuje tako da se mogu adresirati, u isto vrijeme kad registar koji se prethodno mogao adresirati čini neadresiranim.

Proces preimenovanja registra može biti od velike pomoći za izvođenje izvan redoslijeda. Na primjer, ako je memorijska lokacija programirana za čitanje i zapisivanje, a instrukcije su izvršene tim redoslijedom, to je u redu. Međutim, ako se instrukcije promijene tako da se prvo izvrše pisanje, instrukcija za čitanje dobila bi pogrešnu vrijednost. Kako bi se to spriječilo, izvorna vrijednost za čitanje pohranjuje se u neiskorišteni registar koji se zatim preimenuje kada se relevantna instrukcija obrađuje.

Zaključak

Registri su najviša razina u hijerarhiji memorije. Oni su jedini dio koji CPU može izravno adresirati i nemaju kašnjenja. Registri se koriste za pohranjivanje podataka koje CPU aktivno izvršava. Također se koriste za pohranu drugih podatkovnih točaka kao što je programski brojač koji prati koja je instrukcija sljedeća za izvršenje. Vrlo ograničen broj registara dostupan je s x86-64 arhitekturom koja ima 16 registara opće namjene i 16 ili 32 registra s pomičnim zarezom, ovisno o tome je li podržan AVX-512.


Kako klonirati tvrdi disk

Kako klonirati tvrdi disk

U modernom digitalnom dobu, gdje su podaci dragocjena imovina, kloniranje tvrdog diska u sustavu Windows za mnoge može biti ključan proces. Ovaj sveobuhvatni vodič

Kako popraviti upravljački program WUDFRd koji se nije učitao u sustavu Windows 10?

Kako popraviti upravljački program WUDFRd koji se nije učitao u sustavu Windows 10?

Jeste li suočeni s porukom o pogrešci tijekom pokretanja računala koja kaže da se upravljački program WUDFRd nije uspio učitati na vašem računalu?

Kako popraviti šifru pogreške NVIDIA GeForce Experience 0x0003

Kako popraviti šifru pogreške NVIDIA GeForce Experience 0x0003

Imate li NVIDIA GeForce iskustvo s kodom pogreške 0x0003 na radnoj površini? Ako da, pročitajte blog kako biste saznali kako brzo i jednostavno popraviti ovu pogrešku.

Što je SMPS?

Što je SMPS?

Naučite što je SMPS i značenje različitih ocjena učinkovitosti prije nego što odaberete SMPS za svoje računalo.

Zašto se moj Chromebook ne uključuje

Zašto se moj Chromebook ne uključuje

Pronađite odgovore na pitanje Zašto se moj Chromebook ne uključuje? U ovom korisnom vodiču za korisnike Chromebooka.

Kako Googleu prijaviti phishing prijevare

Kako Googleu prijaviti phishing prijevare

Pomoću ovog vodiča saznajte kako Googleu prijaviti prevaranta kako biste ga spriječili da vara druge.

Roomba staje, zapinje i okreće se – popravi

Roomba staje, zapinje i okreće se – popravi

Riješite problem u kojem vaš Roomba robot usisavač stane, zaglavi se i stalno se okreće.

Kako promijeniti grafičke postavke na Steam Decku

Kako promijeniti grafičke postavke na Steam Decku

Steam Deck nudi robusno i svestrano iskustvo igranja na dohvat ruke. Međutim, kako biste optimizirali svoje igranje i osigurali najbolje moguće

Što je sigurnost temeljena na izolaciji?

Što je sigurnost temeljena na izolaciji?

Namjeravali smo se zadubiti u temu koja postaje sve važnija u svijetu kibernetičke sigurnosti: sigurnost temeljena na izolaciji. Ovaj pristup prema

Kako koristiti Auto Clicker za Chromebook

Kako koristiti Auto Clicker za Chromebook

Danas smo namjeravali istražiti alat koji može automatizirati ponavljajuće zadatke klikanja na vašem Chromebooku: Auto Clicker. Ovaj vam alat može uštedjeti vrijeme i