Qual è la differenza tra linguaggio macchina, linguaggio assembly e linguaggio di alto livello nei computer?
linguaggi macchina: questa famiglia di linguaggi consiste solo di cifre binarie, cioè 0 e 1. per esempio: se devo scrivere 10 come un numero intero in linguaggio macchina, allora sarà come 1010. dal momento che si ha una scelta limitata per scrivere, cioè solo {0,1} spesso la scrittura è complessa, inefficiente e non facile da usare. Immaginate se vi mando "buongiorno" in binario, sentirete la complessità perché per leggere il messaggio dovreste conoscere il valore binario di ogni alfabeto, numero e carattere speciale e questo restringe il campo della facilità d'uso. Anche se dal punto di vista della macchina è il migliore perché la macchina può capire direttamente le istruzioni rendendo l'esecuzione veloce, ma usarlo come un linguaggio dove la scelta è solo binaria {0,1} lo rende complesso e meno amichevole dal punto di vista dell'utente. limita il dominio dell'utente, poche persone possono usarlo così la macchina non può essere sfruttata al massimo e non va bene, giusto. Un linguaggio dovrebbe essere sempre facile da leggere e scrivere, ma abbiamo molti problemi per comunicare nel linguaggio macchina, ma con questo linguaggio bisogna essere binari solo per scrivere, leggere solo in binario mi fa sentire davvero un nerd.
Linguaggio assemblato: il linguaggio macchina è come il sanscrito e il computer capisce solo questa famiglia di lingua madre. Ma leggere e scrivere non è facile in sanscrito, quindi abbiamo bisogno di un linguaggio che sia più facile da usare per quanto riguarda la lettura e la scrittura. Abbiamo linguaggi di assemblaggio dove abbiamo una serie di istruzioni come (ADD, SUB) con alcuni registri dedicati su cui lavorare. Come sappiamo, ogni macchina ha una certa architettura e una macchina come la macchina di calcolo deve avere un'architettura per memorizzare il calcolo, quindi abbiamo una serie di registri in tali macchine. Ogni macchina di calcolo ha diversi set di registri su cui lavorare con la propria descrizione e set di istruzioni. qui almeno siamo su per quanto riguarda il linguaggio macchina, non ha bisogno di scrivere in binario, ma ha ancora complessità e meno facile da usare. dovremmo conoscere l'architettura della macchina prima di lavorare con quelle istruzioni. Abbiamo bisogno di un assemblatore (una persona media lo chiama come un software che convertirà ogni istruzione in lingua madre (linguaggio macchina/Sanscrito)). ancora abbiamo il problema proprio a causa della facilità d'uso. basta pensare se si desidera utilizzare si dovrebbe conoscere l'architettura della macchina e la sua non grande per limitare il confine. L'esecuzione è veloce ma non come il linguaggio macchina.
Linguaggio di alto livello: Quindi è come la moderna generazione Instagram, WhatsApp più popolare, facile da usare e facile da leggere e scrivere. non abbiamo bisogno di essere scienziati informatici per lavorare con le macchine. anche una persona che non conosce l'architettura della macchina né il binario può usarlo quindi sembra che abbiamo raggiunto il nostro obiettivo per quanto riguarda la facilità d'uso, ma è così? basta pensare. Questi set di linguaggi sono facili da usare perché sono avvolti in strati per fornire all'utente una piattaforma dove sembra di interagire nella nostra lingua madre e permette all'utente di concentrarsi maggiormente sulla costruzione della logica. Una moneta ha due facce. Da oggi queste macchine da calcolo sono penetrate quasi in tutti i campi e aiutano ogni campo a modo loro grazie a questi set di linguaggi che hanno permesso all'utente di lavorare su più dimensioni. Dobbiamo adattarci alla complessità del tempo perché questi linguaggi hanno bisogno del supporto di altri strati sottostanti per lavorare. Pensate a questi strati come a un mucchio di codici che alla fine generano un linguaggio macchina per la macchina di calcolo su cui lavorare. ogni strato ha la sua funzionalità e potete immergervi in questi strati per conoscere il loro lavoro specifico non è un problema.
Spero di essere stato in grado di narrarvi un viaggio filosofico sul linguaggio senza usare la profondità della prima ricerca. penso che la filosofia sia il modo migliore di generare concetti in modo che possiamo avere una visualizzazione su cui possiamo pensare, ripensare e fare cambiamenti secondo le necessità.