Home Hardware Networking Programmazione Software Domanda Sistemi
Conoscenza del computer >> Programmazione >> Computer Programming Languages >> .

In che modo il computer sa se le istruzioni digitate è un programma?

Un computer non "sa intrinsecamente" se un'istruzione è un programma. Conosce solo sequenze di istruzioni (codice) in una lingua che comprende (come il codice macchina o il linguaggio dell'assembly). Se quella sequenza costituisce un * programma * è una questione di interpretazione e contesto.

Ecco come funziona il processo:

1. Input: Il computer riceve una sequenza di caratteri (istruzioni digitate). Questo potrebbe essere in un linguaggio di alto livello (come Python, Java, C ++) o un linguaggio di basso livello (assemblea).

2. Analisi/compilazione/interpretazione: Il passo cruciale. Un programma (compilatore, interprete o assemblatore) analizza l'ingresso. Non comprende direttamente il significato in senso leggibile dall'uomo, ma controlla:

* Sintassi: La sequenza di caratteri è conforme alle regole grammaticali (sintassi) del linguaggio di programmazione? In caso contrario, riporta errori di sintassi.

* Semantica: Anche se la sintassi è corretta, il programma controlla se le istruzioni hanno un senso logico. Questo accade spesso durante la compilation o in fase di esecuzione. Un programma semanticamente errato potrebbe non crollare, ma potrebbe produrre risultati inaspettati o errati. Esempio:dividere per zero.

3. Traduzione: Se l'input passa la sintassi e i controlli semantici (o almeno il controllo della sintassi iniziale), il programma lo traduce in codice macchina - la lingua che la CPU del computer comprende direttamente (istruzioni binarie).

4. Esecuzione: La CPU esegue le istruzioni del codice macchina in sequenza (a meno che non vi siano salti, loop o chiamate ad altre funzioni). Il computer non decide se si tratta di un "programma"; esegue semplicemente le istruzioni.

5. Output/risultato: L'esecuzione produce alcuni output (ad es. Testo, grafica, una modifica del contenuto del file). Il * significato * e se questo output costituisce la riuscita esecuzione di un "programma" è giudicato dall'utente umano in base alle loro aspettative e allo scopo previsto del programma.

In breve, un computer segue le istruzioni. Se una raccolta di istruzioni è un programma dipende da:

* se si tratta sintatticamente corretto Nel contesto di un linguaggio di programmazione.

* se si tratta semanticamente significativo (Fa quello che intende fare?).

* Se raggiunge un obiettivo specifico come previsto dal programmatore. Questo è l'aspetto del giudizio umano.

Una singola istruzione, da sola, non è un programma. Un programma è un insieme completo di istruzioni che, quando eseguite, svolge un'attività. Il computer esegue solo le istruzioni; Spetta al programmatore organizzarli in un programma.

 

Programmazione © www.354353.com