En instruksjonsmnemonikk er en menneskelesbar forkortelse for en instruksjon, mens en opkode er maskinkoderepresentasjonen av den instruksjonen. For eksempel kan instruksjonen mnemonic `ADD` ha en opkode på `0x01`.
Instruksjonsminne er definert av instruksjonssettarkitekturen (ISA) for en bestemt prosessor. Dette betyr at samme instruksjonsmnemonic kan ha forskjellige opkoder på forskjellige prosessorer. For eksempel kan `ADD`-instruksjonen ha opcode `0x01` på én prosessor og opcode `0x02` på en annen prosessor.
Opkoder er vanligvis kodet i binær form, men de kan også representeres i andre formater, for eksempel heksadesimal eller desimal. Størrelsen på en opcode avhenger av ISA for den aktuelle prosessoren. For eksempel, på noen prosessorer kan opkoder være 8 bits lange, mens de på andre prosessorer kan være 16 biter eller 32 biter lange.
Forholdet mellom instruksjonsmnemonikk og opkoder ligner på forholdet mellom funksjonsnavn og funksjonsadresser i et programmeringsspråk. Akkurat som et funksjonsnavn kan brukes til å referere til en funksjon på en menneskelig lesbar måte, kan en instruksjonsmenemonikk brukes til å referere til en instruksjon på en menneskelig lesbar måte. Når en instruksjonsmnemonikk brukes i et assemblerspråkprogram, vil assembleren oversette den til den tilsvarende opkoden før den genererer maskinkoden for programmet.