Cod de operare
Un opcode identifică operația de bază a calculatorului din setul de instrucțiuni care trebuie efectuată. Acesta este utilizat la scrierea codului mașină. Acesta îi spune calculatorului să facă ceva. Fiecare instrucțiune în limbaj mașină are, de obicei, atât un cod operațional, cât și operanzi. Codul operațional este ca un verb într-o propoziție, iar operanzii sunt ca subiectul într-o propoziție. Operanzii sunt, de obicei, adrese de memorie sau de registru.
Codurile operaționale sunt utilizate în codul mașină pentru o serie de funcții, inclusiv adunarea flotantă a registrelor, adunarea complementară a registrelor în doi, transferul valorilor registrelor în memorie sau pe un hard disk, oprirea unui program etc. Există literalmente sute de coduri operaționale comune utilizate în calculatoarele moderne.
Din cauza naturii arhitecturii unui calculator, codurile operaționale iau forma unor numere binare. Alternativ, codurile operaționale pot fi reprezentate prin cifre hexazecimale, (de exemplu, 10100101 = A5) pentru a facilita citirea și codificarea atunci când se proiectează sau se emulează un program de cod mașină. Aceste valori sunt apoi transformate în echivalentele lor binare pentru a fi salvate. Codurile operaționale moderne au o lungime de cel puțin două caractere hexagonale care ocupă 1 octet de spațiu de stocare.
Capacitatea și "valoarea" codurilor operaționale variază în funcție de computerul căruia îi aparțin, deoarece acestea depind de hardware. De exemplu, codul operațional pentru STORE, exprimat în hexagonal, poate fi FA pentru o mașină și 02 pentru alta. Unele coduri operaționale nu vor fi disponibile pe anumite calculatoare. În general, există două abordări pentru construirea seturilor de instrucțiuni. Un calculator cu set redus de instrucțiuni (RISC) oferă mai puține coduri operaționale posibile în favoarea creșterii vitezei pentru procese simple. Un calculator cu set de instrucțiuni complexe (CISC) oferă mai multe coduri operaționale în favoarea creșterii vitezei pentru procesele complexe.
Codurile operaționale sunt rareori folosite direct de programatori. Ori de câte ori sunt programate direct în memorie, acestea sunt garantate să funcționeze doar pe calculatorul pentru care au fost proiectate. Atunci când programatorii scriu în limbaj de asamblare, un program traducător convertește declarațiile de program, una câte una, în comenzi în limbaj de mașină. Programatorul trebuie să rețină doar un mnemonic pentru fiecare cod operațional în loc de valoarea sa binară. Alternativ, se poate utiliza un limbaj de programare de nivel înalt, de exemplu, de generația a 4-a, care este convertit în generația a 3-a și așa mai departe până când ajunge la generația 1. De aici, un calculator individual va converti programul în cod mașină ori de câte ori este citit fișierul de program. În acest fel, un program poate funcționa pe o varietate mult mai mare de calculatoare.
Întrebări și răspunsuri
Î: Ce este un opcode?
R: Un opcode este un număr binar care identifică operațiunea de bază a calculatorului din setul de instrucțiuni care trebuie efectuată. Acesta este utilizat la scrierea codului mașină și îi spune calculatorului ce trebuie să facă.
Î: Ce sunt operanzii?
R: Operanzii sunt, de obicei, adrese de memorie sau de registru care însoțesc un cod operațional într-o instrucțiune în limbaj mașină. Aceștia pot fi considerați ca fiind subiectul unei propoziții, în timp ce opcode-ul acționează ca un verb.
Î: Câte coduri operaționale obișnuite sunt utilizate în calculatoarele moderne?
R: Există sute de coduri operaționale comune utilizate în calculatoarele moderne.
Î: Cum sunt reprezentate codurile operaționale?
R: Codurile de operare pot fi reprezentate fie prin numere binare, fie prin cifre hexazecimale, pentru a facilita citirea și codificarea atunci când se proiectează sau se emulează un program de cod mașină.
Î: Cât de lungi sunt codurile operaționale moderne?
R: Codurile de operare moderne au o lungime de cel puțin două caractere hexazecimale, ocupând 1 octet de spațiu de stocare.
Î: Ce este RISC și CISC?
R: Reduced Instruction Set Computing (RISC) oferă mai puține coduri operaționale posibile în favoarea creșterii vitezei pentru procesele simple, în timp ce Complex Instruction Set Computing (CISC) oferă mai multe coduri operaționale în favoarea creșterii vitezei pentru procesele complexe.
Î: Cum utilizează programatorii, de obicei, codurile operaționale?
R: Programatorii folosesc rareori programarea directă în memorie cu un set de instrucțiuni specifice unui calculator individual; în schimb, scriu programe folosind limbajul de asamblare sau limbaje de programare de nivel înalt care sunt convertite în cod mașină ori de câte ori fișierul de program este citit, astfel încât să poată funcționa pe mai multe tipuri de calculatoare.