Instruksjonssett

Instruksjonssettet , i informatikk og elektronikk , er settet med maskininstruksjoner som beskriver de aspektene, synlige på et lavt nivå for programmereren , av arkitekturen til en datamaskin , definert på engelsk som instruksjonssettarkitektur eller i akronym ISA . Uttrykket brukes noen ganger også for å skille det nevnte settet med funksjoner fra mikroarkitektur , som er settet med designteknikker som brukes for å implementere instruksjonssettet (inkludert mikrokode , pipeline , cache og så videre).

Beskrivelse

Det er faktisk settet med grunnleggende instruksjoner som prosessoren kan utføre og som derfor utgjør maskinspråket , hvorfra de relative programmene er skrevet på de forskjellige programmeringsspråkene på det høyeste abstraksjonsnivået . Datamaskiner med forskjellige mikroarkitekturer kan dele samme instruksjonssett. For eksempel implementerer Intel Pentium og AMD Athlon nesten identiske versjoner av x86 -instruksjonssettet , samtidig som de er totalt forskjellige internt. Blant de innfødte tilgjengelige dataene er instruksjoner , registre , adresseringsmoduser , minnearkitektur, avbrudds- og unntakshåndtering og eventuell ekstern I/O.

En ISA er en spesifikasjon av settet med alle de binære kodene ( opcodes ) som representerer kommandoene som er naturlig implementert av en bestemt CPU -design . Settet med opkoder til en spesifikk ISA kalles også maskinspråket til ISA. En ISA kan også emuleres av en programvaretolk . Siden emulatoren må utføre en oversettelse fra en ISA til en annen ISA, er denne løsningen generelt tregere enn en ISA implementert i maskinvare. Det er vanlig praksis i dag for produsenter av nye ISA-er eller mikroarkitekturer å gjøre emulatorer tilgjengelige for programvareutviklere før maskinvareimplementering er klar.

Typer

Det finnes flere typer ISA-er tilgjengelig, men de er alltid gjenstand for nye endringer i takt med utviklingen av informasjonsteknologi; imidlertid er det en enorm mengde mikroprosessorer og mikrokontrollere som implementerer ISA av alle slag. De er til og med vanlige for noen tilpassede ISA-applikasjoner, for eksempel de fra ARC International , ASICs , FPGAer og rekonfigurerbare databehandlingsteknikker .

ISA-er vanligvis implementert i maskinvare

ISA-er vanligvis implementert i programvare, men med maskinvareinkarnasjoner

ISA-er aldri implementert i maskinvare

Relaterte elementer

ISA-kategorier

ISA-eksempler

Annet