Co to jest rejestr?

Jeśli nie jesteś szczególnie zainteresowany komputerami, wybaczono by ci założenie, że jedynymi formami pamięci w komputerze były dysk twardy i pamięć RAM. Ci z was, którzy interesują się komputerami, prawdopodobnie wiedzą, że tak nie jest i że procesor ma również zestaw pamięci podręcznych, które służą do buforowania danych z pamięci RAM, aby procesor mógł uzyskać do nich szybszy dostęp. Wszystkie te funkcje są reklamowane, głównie dlatego, że szybkość i/lub pojemność jest przyzwoitą zaletą i ogólnie wpływa na poziom wydajności.

W rzeczywistości jest jeszcze jedna warstwa pamięci. O ile mogłoby się wydawać, że pamięć podręczna L1 jest jak najbliżej rzeczywistego rdzenia przetwarzającego, w hierarchii pamięci znajduje się jeszcze jedna wyższa warstwa. To są rejestry procesora. Powodem, dla którego tak naprawdę nie są one reklamowane ani wspominane, jest to, że tak naprawdę w ogóle się nie zmieniają. Technicznie rzecz biorąc, mogą być, jednak liczba i rozmiar rejestrów jest w rzeczywistości fundamentalna dla architektury. Oznacza to, że wszystkie procesory x86-64 mają taką samą liczbę rejestrów. Nie są sprzedawane, ponieważ nie są punktem konkurencyjnym.

Co robi rejestr?

Rejestr to szybko dostępne miejsce przechowywania dla procesora. Dostęp do rejestru jest natychmiastowy z zerowym opóźnieniem, podczas gdy nawet pamięć podręczna L1 ma opóźnienie około 4-5 cykli w nowoczesnych procesorach. Ta natychmiastowość dostępu wskazuje na przypadek użycia rejestrów. Rejestry służą do przechowywania instrukcji aktywnie obsługiwanych przez procesor. Przechowują również punkty danych, które mają zostać przetworzone. Niektóre rejestry są ogólnego przeznaczenia, podczas gdy inne mają bardzo specyficzny cel. Przykładem rejestru specjalnego przeznaczenia byłby licznik programu, w którym procesor śledzi swoją pozycję w sekwencji programu.

Wiele rejestrów uważa się za dostępne dla użytkownika. Nie oznacza to jednak, że użytkownik komputera może wybrać, jaką wartość w nich umieścić. Oznacza to, że działające oprogramowanie może określić dane, które mają zostać załadowane do tych rejestrów. Mniejsza liczba rejestrów jest wewnętrzna, co oznacza, że ​​oprogramowanie w ogóle nie może ich adresować. Przykładem rejestru wewnętrznego jest rejestr instrukcji, w którym przechowywana jest aktualnie wykonywana instrukcja.

Zarejestruj zmianę nazwy

Chociaż architektura procesora może zezwalać tylko na jedną konfigurację rejestrów, w rzeczywistości jest w tym trochę niuansów. Wszystkie nowoczesne procesory wykorzystują zmianę nazwy rejestru. Jest to technika, w której można mieć więcej fizycznych rejestrów i używać ich do wstępnego ładowania danych lub przechowywania danych związanych z rozkazami poza kolejnością, które w przeciwnym razie zostałyby nadpisane. Kiedy procesor dochodzi do punktu, w którym potrzebuje danych w dodatkowych rejestrach, po prostu zmienia ich nazwę, aby był adresowalny, jednocześnie czyniąc wcześniej adresowalny rejestr nieadresowalnym.

Proces zmiany nazwy rejestru może być bardzo pomocny przy wykonywaniu poza kolejnością. Na przykład, jeśli miejsce w pamięci jest zaprogramowane do odczytu, a następnie zapisu do niego, a instrukcje zostały wykonane w tej kolejności, jest to w porządku. Jeśli jednak kolejność instrukcji zostanie zmieniona, aby najpierw wykonać zapis, instrukcja odczytu otrzyma niewłaściwą wartość. Aby temu zapobiec, oryginalna wartość do odczytania jest przechowywana w nieużywanym rejestrze, którego nazwa jest następnie zmieniana podczas przetwarzania odpowiedniej instrukcji.

Wniosek

Rejestry są najwyższym poziomem w hierarchii pamięci. Są jedyną częścią bezpośrednio adresowaną przez procesor i nie mają opóźnień. Rejestry służą do przechowywania danych aktywnie wykonywanych przez CPU. Służą również do przechowywania innych punktów danych, takich jak licznik programu, który śledzi, która instrukcja jest następna do wykonania. Dostępna jest bardzo ograniczona liczba rejestrów w architekturze x86-64 z 16 rejestrami ogólnego przeznaczenia i 16 lub 32 rejestrami zmiennoprzecinkowymi, w zależności od tego, czy AVX-512 jest obsługiwany.



Leave a Comment

Co zrobić, jeśli Powerbeats Pro nie ładują się w etui

Co zrobić, jeśli Powerbeats Pro nie ładują się w etui

Jeśli Twoje Powerbeats Pro się nie ładują, spróbuj użyć innego źródła zasilania i oczyść swoje słuchawki. Pozostaw etui otwarte podczas ładowania słuchawek.

Canon Pixma MG5220: Skanowanie bez atramentu

Canon Pixma MG5220: Skanowanie bez atramentu

Jak włączyć skanowanie w Canon Pixma MG5220, gdy brakuje atramentu.

5 powodów, dla których Twój laptop się przegrzewa

5 powodów, dla których Twój laptop się przegrzewa

Poznaj możliwe przyczyny przegrzewania się laptopa oraz wskazówki, jak temu zapobiegać i utrzymać urządzenie w chłodzie.

Jak naprawić błąd GeForce Now kod 0xC272008F

Jak naprawić błąd GeForce Now kod 0xC272008F

Przygotowujesz się na wieczór gier, a będzie to duży wieczór – właśnie odebrałeś „Star Wars Outlaws” w serwisie GeForce Now. Odkryj jedyny znany sposób na naprawę błędu GeForce Now kod 0xC272008F, aby móc znowu grać w gry Ubisoftu.

Podstawy drukowania 3D: Wskazówki dotyczące utrzymania drukarki 3D

Podstawy drukowania 3D: Wskazówki dotyczące utrzymania drukarki 3D

Utrzymanie drukarek 3D jest bardzo ważne, aby uzyskać najlepsze wyniki. Oto kilka ważnych wskazówek, które warto wziąć pod uwagę.

Jak znaleźć adres IP drukarki

Jak znaleźć adres IP drukarki

Masz problem z ustaleniem, jaki adres IP ma twoja drukarka? Pokażemy ci, jak to zrobić.

Podstawy Druku 3D: Lista Kontrolna Utrzymania, Którą Musisz Przeczytać

Podstawy Druku 3D: Lista Kontrolna Utrzymania, Którą Musisz Przeczytać

Zachowanie sprzętu w dobrym stanie jest kluczowe. Oto kilka przydatnych wskazówek, aby utrzymać swoją drukarkę 3D w doskonałym stanie.

Jak używać AirPods z telefonami Samsung

Jak używać AirPods z telefonami Samsung

Jeśli zastanawiasz się nad zakupem AirPods do swojego telefonu Samsung, ten przewodnik na pewno pomoże. Najważniejsze pytanie to, czy oba urządzenia są ze sobą kompatybilne i odpowiedź brzmi: tak!

Co to jest DHCP?

Co to jest DHCP?

Kiedy łączysz się z siecią, zazwyczaj masz adres IP przypisywany automatycznie przez router dzięki usłudze DHCP.

Jak uruchomić dwa komputery na jednym monitorze?

Jak uruchomić dwa komputery na jednym monitorze?

Przestrzeń może być na wagę złota. Dowiedz się, jak połączyć dwa komputery za pomocą jednego wyświetlacza. Poznaj najlepsze rozwiązania.