Instruktion (datavetenskap)
Inom datavetenskap är en instruktion en enskild operation i en processor som definieras av processorns instruktionsuppsättning.
Storleken eller längden på en instruktion varierar kraftigt, från så lite som 4 bitar i vissa mikrokontroller till flera multiplar av en byte i vissa VLIW-system (very long instruction word). De flesta moderna processorer som används i persondatorer, stordatorer och superdatorer har instruktionsstorlekar på mellan 16 och 64 bitar. I vissa arkitekturer, särskilt datorer med reducerad instruktionsuppsättning, har instruktionerna en fast längd som vanligtvis motsvarar arkitekturens ordstorlek.
På traditionella arkitekturer innehåller en instruktion en opkod som anger den operation som ska utföras, t.ex. "lägg till minnets innehåll i ett register", och noll eller flera operandspecifikatorer, som kan ange register, minnesplatser eller bokstavsdata. Operandspecifikatorerna kan ha adresseringslägen som bestämmer deras innebörd eller kan vara i fasta fält.
I VLIW-arkitekturer, som inkluderar många mikrokodarkitekturer, specificeras flera samtidiga operationer och operander i en enda instruktion.
Instruktioner specificeras sällan i sin maskinkodform; de kan specificeras av programmerare med hjälp av ett assembleringsspråk eller, vilket är vanligare, genereras av kompilatorer.
Det finns en annan mer allmän definition av en "instruktion" som inte bara är relaterad till processorns instruktionsuppsättning: En "instruktion" kan vara en representation av ett element i ett körbart datorprogram.
Relaterade sidor
Frågor och svar
F: Vad är en instruktion i datavetenskap?
S: En instruktion inom datavetenskapen är en enskild operation i en processor som definieras av processorns instruktionsuppsättning.
F: Hur långa kan instruktioner vara?
S: Storleken eller längden på en instruktion varierar kraftigt, från så lite som 4 bitar i vissa mikrokontroller till många multiplar av bytes i vissa VLIW-system (Very Long Instruction Word). De flesta moderna processorer som används i persondatorer, stordatorer och superdatorer har instruktionsstorlekar på mellan 16 och 64 bitar. I vissa arkitekturer, särskilt RISC-datorer (Reduced Instruction Set Computers), har instruktionerna en fast längd som vanligtvis motsvarar arkitekturens ordstorlek.
F: Vad ingår i en instruktion?
S: En instruktion innehåller en op-kod som anger den operation som skall utföras, t.ex. "addera minnets innehåll till ett register", och noll eller flera operandspecifikatorer som kan ange register, minnesplatser eller bokstavliga data. Operandspecifikatorerna kan ha adresseringslägen som bestämmer deras innebörd eller kan vara i fasta fält. I VLIW-arkitekturer specificeras flera samtidiga operationer och operander i en enda instruktion.
F: Hur specificeras vanligtvis instruktioner?
S: Instruktioner specificeras sällan med hjälp av sin maskinkodform; de kan specificeras av programmerare med hjälp av ett assembleringsspråk eller, vilket är vanligare, genereras av kompilatorer.
F: Finns det en annan definition av "instruktion"?
S: Ja, det finns en annan mer allmän definition av en "instruktion" som inte bara är relaterad till processorns instruktionsuppsättning som är en representation av ett element i ett körbart datorprogram.
F: Är alla instruktioner lika stora?
S: Nej, instruktionernas storlek eller längd varierar kraftigt beroende på vilken typ av processor som används, från 4 bitar upp till flera bytes för VLIW-system, där de flesta moderna processorer har storlekar på mellan 16 och 64 bitar, medan RISC-arkitekturer vanligtvis har instruktioner med fast längd som motsvarar den arkitekturens ordstorlek.