Registri registratorjev: vrste, sestanki in funkcije skupin

Procesorske celice, imenovane tudi registre sestavljavcev, preko svojega krmilnika nizkega nivoja programskega jezika predstavljajo nekakšen blok prostih elementov v spominu. Njihova posebnost je hiter dostop do spomina. Registri se pogosto uporabljajo med izvajanjem ukazov procesorja in niso na voljo programerju. Na primer, med vzorčenjem razpoložljivega ultra hitrega pomnilnika naslednje številke ukaza se njegova koda v binarnem sistemu vnese v register. Neposreden dostop do registra ni mogoč. Poleg tega so na voljo številni pomnilniški bloki, vendar je dostop do njih možen samo iz lupine operacijskega sistema. Ti vključujejo registre kontrolnih segmentov in tudi deskriptorje senčnih sistemov. V svojih delovnih evidencah se uporabljajo izključno razvijalci OS.


Vrste registrov

Za različne potrebe programiranja se uporabljajo različni registri asemblerja. Uporabite jih glede na cilje. Na primer, števec se uporablja za urejanje enostavnih in ugnezdenih zank. Spodaj so glavne vrste registrov zbirk:
  • Registri splošnega namena.
  • Indeksni registri.
  • Indeksni registri.
  • Segmentne pomnilniške enote.
  • Register zastav.
  • Dejansko vsi registri zavzemajo 32 bitov pomnilnika. To pomeni, da lahko vsebujejo številke od nič do 4294967295. Nekateri registri so razdeljeni na več delov s 16 in 8 bitov. To vam omogoča nadzor nad delom blokaali celico, snemanje v njem samo dela podatkov.
    Sklope sklopov so poimenovali v skladu z opravljenimi nalogami:
  • EAH - akumulator registra baterij;
  • EBX - osnovna osnova;
  • ECX - Counter - je odgovoren za stroške;
  • EDX - podatkovni blok podatkov;
  • ESI - Izvorni indeks - izvorni register;
  • EDI - ciljni indeks - register prejemnikov;
  • ESP - kazalec sklada - kazalec na sklad;
  • EBP - Osnovni kazalec - kazalec na osnovo skladovnice.
  • Značilnosti uporabe registrov

    Upoštevati je treba, da se lahko vsak od imenovanih registrov uporablja ne le za vnos podatkov. V osnovnem registru lahko na primer vnesete poljubno decimalno število in ga uporabite kot števec. Vendar v ta namen ni zaželeno uporabljati pomnilniških blokov, ki ustrezajo kazalcem, ESP in EBP, saj lahko to povzroči težave z dostopom do celic abstraktnega podatkovnega tipa. Imenovanje registrov zbirk je shranjevanje nekaterih informacij, za katere se lahko uporabi katera koli vrsta.


    Registri splošnega namena

    Ta vrsta registrov je zasnovana za shranjevanje podatkov po računalniških operacijah. Pravzaprav lahko uporabijo ukaz comm za vnos podatkov v kateri koli obliki in sistemu: binarno, oktalno, decimalno ali šestnajstiško. Drugo ime so zbirni registri podatkov. Seznam registrskih zbirk splošnega namena vključuje:
  • register akumulatorja EAH (akumulator). Sestavljen je iz treh junior blokov 8 bitov: AX, AN, AL. Če je potrebnolahko stopite v stik z dvema manjšima enotama.
  • ЕВХ (base) - podatkovni blok, ki je odgovoren za bazo. Enako kot vsi registri za splošne namene, ki je sestavljeno iz dveh junior poglavij z 8 bitov in enim heksadecimalnim bitom. Tako je v enem registru mogoče postaviti več številskih vrednosti.
  • ECC (števec) - je odgovoren za števec. Uporablja se med cikli. Brez tega ukaz zanka ne deluje. Sestavljen je iz dveh delov, od katerih eden vključuje dva osembitna bloka CH in CL.
  • EDX - Podatki so potrebni za natančne operacije naslova pomnilnika za vhodne in izhodne funkcije. Poleg tega lahko v tem registru shranite podatke za preusmeritev za uporabo v postopkih in predlogah.
  • Kazalniki za registracijo

    Za delo s skladom v razvijalcih sestavljalcev obstajata dve vrsti registra. Za dostop do njih se izvede operacija, da se indeksu najvišje vrednosti abstraktnega tipa bitnosti doda vrednost določene vrste podatkov, ki je bila postavljena na sklad. Vsi izračuni se izvajajo ročno. To prihrani veliko količino podatkov in se prenese v podprograme - postopke in polja. Med registri kazalcev v zbirniku se razlikujejo:
  • Register ESP je kazalec na vrh kupa. Vedno vsebuje naslov prvega elementa, ki je bil postavljen v sklad v predpomnilniku procesorja. Po potrebi se lahko zapolni z drugimi podatki. Vključuje junior SP register, sestavljen iz 16 bitov.
  • Register baznega kazalca je blok pomnilniških celic, potrebnih za naslavljanje podatkov,ki so v paketu. To močno olajša dostop do vseh podatkov in spremenljivk. Vključuje junior razred BP.
  • Indeksni registri

    Indeksni pomnilniški bloki so potrebni za razširjeno indeksiranje. Poleg tega sodelujejo pri delu nekaterih aritmetičnih operacij in obdelave nizov bajtov - zaporedja bajtov, ki vsebujejo poljubne vrednosti. Sestavljalec vključuje dva registra, ki sta odgovorna za indeksiranje ESI in EDI. Opišite jih:
  • ESI (Source index) vključuje izvorni indeks (mesto, kjer se zbirajo podatki) in je potreben za del dejanj v bajtnih vrsticah;
  • EDI (ciljni indeks) je potreben za beleženje rezultatov izračuna. Uporablja se tudi za del stavke. Delno povezan z registrom segmentov ES.
  • Segmentni registri

    so prvi bloki v pomnilniku. Imenujejo se trenutni segmenti. Programska oprema lahko distribuira več kot štiri pomnilniške enote. Vendar pa morate hkrati vključiti naslov blokov v pomnilniško celico med segmentnimi registri. Tovrstni pomnilniški bloki so strogo specifični, zaradi česar jih je nemogoče zapolniti z ločeno vrsto podatkov. Vrstni red blokov pomnilniških registrov se lahko razlikuje. Shranjevanje segmentnih registrov se izvaja naključno v naključnih mestih spomina.
  • Koda registra CS v svoji običajni obliki vsebuje naslov začetka segmenta kode programske opreme (začetek predstavitve strojne kode). Na ta način se ukazi izvajajo na račun IP-ja ukazov.
  • Podatkovni register vsebuje naslov podatkov, ki jih program obdelujezagonski čas Prenos podatkov se izvede na račun premestitve, zabeležene v registru EIP.
  • ​​
  • Segment stack (ESS) je potreben za vzdrževanje začetka segmenta abstraktnega podatkovnega tipa.
  • Dodatni segment je pomožni register, ki vsebuje prazno območje za zapisovanje podatkov med nekaterimi dejanji v bajtnih vrsticah. Lahko vsebuje informacije, podobne podatkovnemu registru.
  • Register seznamov ukazov

    Ta vrsta pripada ekipi. S pomočjo tega indeksa se izvede register sestavljavca v seznamu. Vključuje podatke pristranskosti za naslednji ukaz v primerjavi s prejšnjim. Kadar se razvoj programske opreme praktično ne uporablja, je potrebno pregledati seznam izvajanja kode. Tako sledijo napakam.

    Sklop zastavice registra

    Ustreza trenutnemu stanju CPE. Sestavljen je iz 16 bitov, od katerih je lahko zasedenih le 9. Polnjenje tega pomnilniškega bloka se izvede po izvršitvi kode ali napake kot rezultata prejšnjega ukaza. Poleg tega procesor uporablja del bitov, ki se lahko inicializira in izbriše z uporabo določenega sistema ukazov. Tako se upravlja ukazni sistem.

    Sorodne publikacije