Cosè un set di istruzioni?

Qualsiasi CPU è progettata da zero per supportare un particolare set di istruzioni. Un set di istruzioni è un insieme di operazioni codificate che la CPU può eseguire. Queste operazioni possono essere, ad esempio, sommare due numeri, saltare a una parte diversa del programma o confrontare due valori. Ogni operazione che un computer può eseguire è rappresentata in modo univoco da un codice operativo.

Opcode

Durante l'esecuzione di un programma, la CPU utilizza un contatore di programma per tenere traccia di quale istruzione deve essere eseguita successivamente. Quando viene prelevata un'istruzione, il contatore del programma viene incrementato della lunghezza dell'istruzione in modo che punti all'inizio dell'istruzione successiva. Ogni istruzione è costituita da un codice operativo. A seconda dell'istruzione, può includere o meno operandi. Gli operandi possono essere un valore costante o un puntatore alla posizione di un valore nel registro della CPU o nella RAM di sistema.

Una volta che l'istruzione completa è stata recuperata, deve essere decodificata. Questo è il processo in cui la CPU separa il codice operativo e tutti gli operandi. Il codice operativo decodificato viene utilizzato per abilitare o disabilitare specifici percorsi elettrici nella CPU che si tradurranno nel corretto funzionamento.

Una volta che l'istruzione è stata decodificata, verrà eseguita. Il comportamento esatto della CPU dipenderà dal funzionamento. Un'operazione di addizione somma due valori insieme. Un'operazione di salto calcolerà dove saltare nel programma. Un'operazione di confronto confronterà due valori. Un'operazione NOP rimarrà inattiva, poiché NOP sta per Nessuna operazione.

La maggior parte delle istruzioni produrrà quindi il risultato dell'operazione. Questa uscita può andare ai registri del processore e, se necessario, alla RAM di sistema. Ognuna di queste operazioni richiede un singolo ciclo di clock per essere completata.

Opcode illegali

Ogni architettura della CPU ha il suo elenco specifico di codici operativi pubblicato dal produttore. I valori di questi codici operativi non sono necessariamente gli stessi multipiattaforma, motivo per cui il software deve essere compilato per architetture diverse. In alcuni casi, il produttore include anche codici operativi non documentati. Questi sono indicati come "opcode illegali". I codici operativi illegali, sebbene non documentati, eseguiranno la stessa funzione ogni volta che vengono chiamati. In quanto funzionalità non documentate e non standard, tuttavia, gli aggiornamenti all'architettura della CPU possono semplicemente rimuoverle.

Alcuni dei primi giochi per computer su Apple II si basavano su codici operativi illegali specifici. Hanno quindi subito problemi di prestazioni e stabilità nella successiva revisione della CPU Apple IIc poiché IIc ha rimosso i codici operativi illegali richiesti dai giochi. I codici operativi illegali sono stati utilizzati anche nei circoli di protezione del copyright come metodo di sicurezza attraverso l'oscurità nella loro lotta contro i pirati che violano il loro contenuto. Alcuni codici operativi illegali sono semplicemente intesi come strumenti di debug e gestori di errori.

Il set di istruzioni x86 contiene un gran numero di codici operativi illegali non documentati. È interessante notare che alcuni di questi sono condivisi tra CPU Intel e AMD, indicando che entrambe le società sono pubblicamente consapevoli del loro scopo mentre non sono documentate.

Compilatori e Assembly

La maggior parte dei programmi sono scritti in linguaggi di alto livello. Questi sono relativamente facili da leggere, spesso usano parole inglesi o abbreviazioni per ridurre al minimo le curve di apprendimento. Affinché un computer possa eseguire questi programmi, devono essere compilati. Un compilatore è fondamentalmente un traduttore. Prende il codice di alto livello e lo converte in codice informatico, le istruzioni che la CPU può comprendere.

È anche possibile, in alcuni linguaggi, eseguire codice non compilato tramite un programma compilato in precedenza che genera codice macchina al volo. Assembly è un linguaggio di programmazione di basso livello che utilizza la scorciatoia per consentire agli sviluppatori visibilità diretta e controllo sulle operazioni eseguite. NOP è un esempio di scorciatoia di assemblaggio.

Conclusione

Un set di istruzioni è un elenco di funzioni ufficiali che un'architettura della CPU può eseguire. È un elenco di operazioni che possono essere eseguite. Queste operazioni sono hardcoded nella CPU e chiamate utilizzando i rispettivi opcode.

Il software generalmente utilizza un compilatore per tradurre dal codice di alto livello leggibile dall'uomo al codice macchina che la CPU può leggere. A volte, un'architettura della CPU può avere codici operativi non documentati, chiamati codici operativi illegali. I codici operativi illegali sono tecnicamente parte del set di istruzioni. Tuttavia, potrebbero non essere disponibili in modo affidabile nelle future iterazioni della piattaforma. Non dimenticare di lasciare i tuoi pensieri nei commenti qui sotto.



Leave a Comment

Come far funzionare Spotify nel nuovo Garmin Venu

Come far funzionare Spotify nel nuovo Garmin Venu

Scopri come configurare Spotify sul tuo Garmin Venu per ascoltare la tua musica preferita mentre ti alleni.

Risoluzione dei problemi dellapp Blink quando la fotocamera è offline

Risoluzione dei problemi dellapp Blink quando la fotocamera è offline

Scopri come risolvere i problemi dell

S Pen rispetto a Apple Pencil

S Pen rispetto a Apple Pencil

Scopri le differenze tra S Pen e Apple Pencil, due accessori per disegnare e prendere appunti, analizzando design, prestazioni e costi.

Che cosè WPS e come funziona?

Che cosè WPS e come funziona?

Scopri tutto su cosa è WPS e come funziona, insieme ai suoi vantaggi e svantaggi.

La TV Samsung non salva le impostazioni dellimmagine

La TV Samsung non salva le impostazioni dellimmagine

Scopri come risolvere il problema della tua TV Samsung che non salva le impostazioni dell

Come acquisire uno screenshot su un laptop Chromebook

Come acquisire uno screenshot su un laptop Chromebook

Guida dettagliata su come acquisire screenshot a schermo intero e parziale su Chromebook. Segui questi passaggi per facilitare la tua esperienza.

Correggi Chromebook Errore durante linstallazione di Linux Beta

Correggi Chromebook Errore durante linstallazione di Linux Beta

Se si è verificato un errore durante l

Guida ai materiali di stampa 3D: cosa sapere sul TPU

Guida ai materiali di stampa 3D: cosa sapere sul TPU

Per ottenere i migliori risultati nella stampa 3D, ecco cosa devi sapere sul TPU e i suoi utilizzi.

Che cosa fa Blocco scorrimento?

Che cosa fa Blocco scorrimento?

Il blocco dello scorrimento è un tasto sulla maggior parte delle tastiere, sebbene raramente venga utilizzato. Scopri come funziona e la sua utilità nei moderni software.

È possibile aggiornare la memoria del Chromebook?

È possibile aggiornare la memoria del Chromebook?

Scopri se è possibile aggiornare la memoria del tuo Chromebook e quali sono le migliori opzioni per ottimizzare le prestazioni del dispositivo.