Skip to main content

Hva er et statusregister?

Statusregisteret mdash;Også kjent som flaggregister, programstatusord og tilstandskoderegister mdash;er definert som et kollektiv av flaggbiter inne i en prosessor.Et register er en prosessorkrets og er omtrent som et minneplass, noe som betyr at data kan skrives og leses fra den.I motsetning til et minneplassering, har statusregisteret ikke ofte en adresse fordi mikroprosessoren bruker den internt.I en sentral prosesseringsenhet (CPU) som er 8-biters, kan en statusregisterbit sett , lik nummer 1, eller ryddet , lik tallet 0, med assortert prosessoroperasjonsresultater.Prosessoren setter eller fjerner noen ganger selve bitene, men andre ganger setter en bestemt programinstruksjonssett eller tømmer bitene.

Statusregisterbiter kalles også flagg, eller flaggbiter, og brukes av programmereren til visse programmeringsformål.Hvert flagg i et statusregister har et unikt formål.Bæreflagget setter seg hvis en tidligere operasjon gjorde den syvende biten mdash;eller negativt flagg mdash;Overløp, eller gjort bæreflagget understrømning.Det setter under skift av logikk, sammenligning og aritmetikk.Null flaggsett hvis det nyeste operasjonsresultatet var 0.

Et flagg som kalles “Interrupt Disable” opererer ved å la eller ikke tillate driften av avbrudd, som er instruksjoner som midlertidig stopper visse operasjoner slik at andre operasjoner kan utføres.Når akkurat dette flagget setter seg, har ikke avbrytelse lov til å operere, men når det er klart, er avbrytelser tillatt.Et annet flagg kalt desimalflagget lar prosessoren følge en mer avansert binær modus for å utføre feilfrie aritmetiske ligninger.Når flagget setter seg, bruker det denne avanserte binære modusen.En annen registerbit er Break Flag -biten, som setter seg når kommandoen for avbrudd (BRK) utføres.

Et overløpsflagg sett under driften av aritmetikk hvis en operasjon gir et ugyldig resultat.Det negative flagget setter seg hvis den nyeste operasjonens resultat hadde satt til 1. Et siste flagg, kalt Bit 5, er navnløst og alltid satt til 1. Programmerere har i hovedsak ingen bruk for denne spesielle biten.

Flaggregisteret er ett eksempelav et statusregister som ble brukt i visse sentrale prosessorenheter og inneholdt gjeldende tilstander til en prosessor.Det var 16 biter bredt og ble etterfulgt av henholdsvis EFLAGS og RFLAGS, et 32-biters register og 64-biters register.Flaggregisteret hadde imidlertid noen flagg som var forskjellige fra det originale 8-biters registeret, inkludert paritetsflagget, hjelpeflagget og felleflagget.