Driftkod

Den aktuella versionen av sidan har ännu inte granskats av erfarna bidragsgivare och kan skilja sig väsentligt från versionen som granskades den 10 juni 2018; kontroller kräver 7 redigeringar .

Operationskod , driftskod , opcode  - en del av maskinspråket som kallas en instruktion som definierar operationen som ska utföras.

Definitionen och formatet av instruktionskoder beror på instruktionsuppsättningen för en given processor (som antingen kan vara en huvudprocessor eller mer specialiserad för att arbeta inom ett visst område). Till skillnad från själva op-koden har en instruktion vanligtvis en eller flera definitioner för de operander (dvs. data ) som operationen ska utföras på, även om vissa operationer kan ha explicita operander eller inga alls. Det finns instruktionsuppsättningar med liknande fält med fast storlek för opcode- och operanddefinitioner, medan andra ( exempelvis x86 -arkitektur ) har en mer komplex struktur med variabel längd. [ett]

Beroende på arkitekturen kan operander vara registervärden , stackvärden , andra värden i minnet , I/O-portar och andra som definieras och nås med olika adresseringsmetoder . Operationstyper inkluderar aritmetiska operationer , datakopiering, logiska operationer , andra mjukvarukonstruktioner, i motsats till speciella instruktioner (som CPUID och andra).

Sammanställningsspråk

Assembly language , eller helt enkelt assembler, är ett programmeringsspråk på låg nivå som använder mnemonics , instruktioner och operander för att representera maskinkod. Detta förbättrar läsbarheten samtidigt som full kontroll över maskinens instruktioner bibehålls. Det finns också högnivåspråk som är lättare att skriva stor kod än assemblerspråk. Sådana språk måste kompileras för översättning till maskinspråk eller köras med andra program - emulatorer eller tolkar . [2]

Programvaruinstruktionsuppsättningar

Opkoden kan också hittas i så kallad bytecode och andra representationer som är designade för mjukvarutolkar snarare än hårdvara. Dessa programvaruinstruktionsuppsättningar använder ofta lite högre datatyper och operationer än de flesta hårdvarumotsvarigheter, men de är ändå baserade på samma principer. Exempel inkluderar Java Virtual Machine (JVM) för programmeringsspråket Java , bytekoden som används av Emacs för kompilerad Lisp -kod och många andra. [3]

Anteckningar

  1. Maskinspråk för nybörjare - Introduktion . Hämtad 21 juli 2008. Arkiverad från originalet 13 februari 2008.
  2. Introduktion till Assembly Language . Hämtad 21 juli 2008. Arkiverad från originalet 2 mars 2020.
  3. Bytecode Definition från PC Magazine Encyclopedia . Hämtad 13 april 2022. Arkiverad från originalet 6 oktober 2012.