Ce este un registru?

Dacă nu sunteți în mod deosebit interesat de computere, ați fi iertat să presupuneți că singurele forme de memorie dintr-un computer sunt hard disk-ul și RAM. Cei dintre voi care sunt interesați de computere ar ști probabil că acesta nu este cazul și că procesorul are, de asemenea, un set de cache-uri care sunt folosite pentru a stoca în cache datele din RAM, astfel încât procesorul să le poată accesa mai repede. Toate acestea sunt caracteristici promovate, în primul rând pentru că viteza și/sau capacitatea este un punct de vânzare decent și afectează în general nivelurile de performanță.

Există totuși un alt strat de memorie. Oricât de mult ați putea crede cache-ul L1 este cât mai aproape de nucleul de procesare real, există un alt strat superior în ierarhia memoriei. Acestea sunt registrele CPU. Motivul pentru care acestea nu sunt cu adevărat promovate sau menționate este că nu sunt deloc schimbate. Din punct de vedere tehnic, acestea ar putea fi, totuși, numărul și dimensiunea registrelor este de fapt fundamentală pentru arhitectură. Aceasta înseamnă că toate procesoarele x86-64 au același număr de registre. Nu sunt comercializate pentru că nu sunt un punct concurent.

Ce face un registru?

Un registru este o locație de stocare rapidă disponibilă pentru procesor. Accesul la un registru este imediat cu latență zero, în timp ce chiar și memoria cache L1 are o latență de aproximativ 4-5 cicluri în procesoarele moderne. Această proximitate a accesului indică cazul de utilizare pentru registre. Registrele sunt folosite pentru a stoca instrucțiunile operate în mod activ de CPU. De asemenea, ele stochează puncte de date care urmează să fie procesate. Unele registre au un scop general, în timp ce altele au un scop foarte specific. Un exemplu de registru cu scop special ar fi contorul de programe, care este locul în care procesorul își urmărește poziția în secvența sa de program.

Multe registre sunt considerate accesibile utilizatorilor. Acest lucru nu înseamnă însă că utilizatorul unui computer poate alege ce valoare să le pună. Înseamnă că software-ul care rulează poate specifica datele care urmează să fie încărcate în aceste registre. Un număr mai mic de registre sunt interne, ceea ce înseamnă că software-ul nu le poate aborda deloc. Registrul de instrucțiuni, care stochează instrucțiunea în curs de executare, este un exemplu de registru intern.

Înregistrați redenumirea

În timp ce o arhitectură CPU poate permite doar o singură configurație de registre, există de fapt un pic de nuanță în asta. Toate procesoarele moderne folosesc redenumirea registrului. Aceasta este o tehnică în care puteți avea mai multe registre fizice și le puteți folosi pentru a preîncărca date sau pentru a stoca date legate de o instrucțiune nefuncțională care altfel ar fi fost suprascrise. Când CPU ajunge în punctul în care are nevoie de datele din registrele suplimentare, pur și simplu le redenumește astfel încât să fie adresabil, în același timp cu facerea unui registru adresabil anterior inadresabil.

Procesul de redenumire a registrului poate fi foarte util pentru execuția necorespunzătoare. De exemplu, dacă o locație de memorie este programată să fie citită de atunci în care este scrisă și instrucțiunile au fost executate în acea ordine, este bine. Dacă, totuși, instrucțiunile sunt reordonate pentru a efectua mai întâi scrierea, instrucțiunea de citire ar obține o valoare greșită. Pentru a preveni acest lucru, valoarea inițială de citit este stocată într-un registru neutilizat, care este apoi redenumit atunci când instrucțiunea relevantă este procesată.

Concluzie

Registrele sunt cel mai înalt nivel din ierarhia memoriei. Sunt singura parte care poate fi adresată direct de CPU și nu au latență. Registrele sunt folosite pentru a stoca datele executate în mod activ de CPU. Ele sunt, de asemenea, folosite pentru a stoca alte puncte de date, cum ar fi contorul de programe care ține evidența instrucțiunii care urmează să fie executată. Un număr foarte limitat de registre sunt disponibile cu arhitectura x86-64 având 16 registre de uz general și fie 16, fie 32 registre în virgulă mobilă, în funcție de dacă AVX-512 este suportat.



Leave a Comment

Cum se clonează un hard disk

Cum se clonează un hard disk

În era digitală modernă, în care datele sunt un bun valoros, clonarea unui hard disk pe Windows poate fi un proces crucial pentru mulți. Acest ghid cuprinzător

Cum să remediați driverul WUDFRd care nu s-a încărcat pe Windows 10?

Cum să remediați driverul WUDFRd care nu s-a încărcat pe Windows 10?

În timpul pornirii computerului, vă confruntați cu mesajul de eroare care spune că driverul WUDFRd nu s-a încărcat pe computer?

Cum să remediați codul de eroare NVIDIA GeForce Experience 0x0003

Cum să remediați codul de eroare NVIDIA GeForce Experience 0x0003

Aveți experiența NVIDIA GeForce cu codul de eroare 0x0003 pe desktop? Dacă da, citiți blogul pentru a afla cum să remediați această eroare rapid și ușor.

How to Use Auto Clicker for Chromebook

How to Use Auto Clicker for Chromebook

Today, were going to delve into a tool that can automate repetitive clicking tasks on your Chromebook: the Auto Clicker. This tool can save you time and

Cum să eliminați un GPU de pe un computer Windows în 2023

Cum să eliminați un GPU de pe un computer Windows în 2023

Trebuie să eliminați GPU-ul de pe computer? Alăturați-vă pentru a explica cum să eliminați un GPU de pe computer în acest ghid pas cu pas.

Cum se instalează un SSD NVMe pe un desktop și laptop

Cum se instalează un SSD NVMe pe un desktop și laptop

Ați cumpărat un nou SSD NVMe M.2, dar nu știți cum să îl instalez? Citiți mai departe pentru a afla cum să instalați un SSD NVMe pe laptop sau desktop.

Ce este o bombă logică?

Ce este o bombă logică?

O bombă logică este un incident de securitate în care un atacator stabilește o acțiune întârziată. Continuați să citiți pentru a afla mai multe.

Ce este un SoC?

Ce este un SoC?

Dacă v-ați uitat vreodată în interiorul unui turn de PC, puteți vedea că există o mulțime de componente diferite. Laptopul tău obișnuit conține majoritatea componentelor

Ce este criptarea asimetrică?

Ce este criptarea asimetrică?

Algoritmii de criptare asimetrică utilizează două chei distincte. O cheie este folosită pentru criptare, iar cealaltă pentru decriptare.

Steam Deck: Cum se formatează cardul SD

Steam Deck: Cum se formatează cardul SD

Steam Deck vine în trei opțiuni de stocare: eMMC de 64 GB, SSD NVMe de 256 GB și SSD NVMe de 512 GB. În funcție de biblioteca dvs. de jocuri și de dimensiunea jocurilor