DOMANDA Come è stato creato il primo linguaggio di programmazione

Stato
Discussione chiusa ad ulteriori risposte.

Nicco199o

Utente Attivo
904
86
CPU
intel core i7 6500U skylake
Dissipatore
integrato
Scheda Madre
del notebook asus x
HDD
250gb ssd
RAM
8gb
GPU
nVidia geforce 920m
Audio
realtek high definition audio
Monitor
samsung SyncMaster p2770HD
PSU
450w asus
Case
E un notebook elegante e robusto
Periferiche
Mouse e tastiera logitech cuffie sony
Net
100mb
OS
Windows 10 pro
E da anni che mi faccio una domanda, come è stato creato il primo linguaggio di programmazione, perché se non c'era nessun programma per programmare visto che i programmi devono essere programmati come è stato creato il primo linguaggio di programmazione?

Inviato dal mio SM-G900F utilizzando Tapatalk
 

rodhellas

Utente Èlite
1,522
427
CPU
Ryzen 5 3600
Dissipatore
GELID Phantom
Scheda Madre
MSI B450 Gaming Plus Max
HDD
500GB m.2 + 2TB HDD
RAM
16GB Corsair LPX 3000mhz
GPU
Gigabyte GTX 960 OC
Audio
Integrata
Monitor
SyncMaster 223BW
PSU
Antec HCG-520M
Case
Meshify C
Net
Gigabit Fastweb
OS
Windows 10 64bit
https://it.wikipedia.org/wiki/Assembly
In breve, data una sequenza di bit corrispondenti ad un istruzione, assegni alla medesima un termine che consenta di ricordarlo più facilmente, rende subito chiaro qual'è il suo scopo e infine, rendere il codice più leggibile.
 
  • Mi piace
Reazioni: EasyMan QV

Nicco199o

Utente Attivo
904
86
CPU
intel core i7 6500U skylake
Dissipatore
integrato
Scheda Madre
del notebook asus x
HDD
250gb ssd
RAM
8gb
GPU
nVidia geforce 920m
Audio
realtek high definition audio
Monitor
samsung SyncMaster p2770HD
PSU
450w asus
Case
E un notebook elegante e robusto
Periferiche
Mouse e tastiera logitech cuffie sony
Net
100mb
OS
Windows 10 pro
https://it.wikipedia.org/wiki/Assembly
In breve, data una sequenza di bit corrispondenti ad un istruzione, assegni alla medesima un termine che consenta di ricordarlo più facilmente, rende subito chiaro qual'è il suo scopo e infine, rendere il codice più leggibile.
E come si faceva a dare il codice assembly alla CPU per processarlo se la CPU non aveva nessun programma per la lettura, io penso di più a prendere l'elettricità e farli fare acceso e spento a mano per così dare i comandi al pc nel senso 0=spento 1=acceso cioè in binario

Inviato dal mio SM-G900F utilizzando Tapatalk
 

rctimelines

Utente Èlite
5,143
2,023
CPU
Ryzen 7 2700X | i7-6700k@4.5 | i5-4460... altri
Dissipatore
wraith MAX | Scythe Katana2|Arctic Freezer 11LP
Scheda Madre
Asrock B450 Fatal1ty 4K | Asus Prime Z270P | Acer Veriton
HDD
Samsung 970evo m.2 | vari | Samsung 860 evo
RAM
16GB G.Skill TridentZ 3000 | 16GB CORSAIR 2133 | 8GB DDR3 1600
GPU
RadeonPro WX3100 4G | ZOTAC GTX 1070 8G | Quadro k620 2G
Monitor
DELL 2419P 2K + Benq 17" | LG Ultrawide 27''
Net
fibra 1000
OS
Windows10-pro64/OpenSUSE-QL15.1/Debian 10.3
E da anni che mi faccio una domanda, come è stato creato il primo linguaggio di programmazione, perché se non c'era nessun programma per programmare visto che i programmi devono essere programmati come è stato creato il primo linguaggio di programmazione?

Inviato dal mio SM-G900F utilizzando Tapatalk
Il primo linguaggio di programmazione è intrinseco al computer stesso, si chiama "linguaggio macchina" e sta appena sotto, nel grado di astrazione, all'assembler le cui istruzioni sono definite "codici mnemonici" in quanto sono semplicemente un breve codice per ricordare (mnemonico) le istruzioni del microcodice, cioè quelle native della macchina stessa.

Perché esista un "linguaggio" di programmazione è necessario che ci siano le "parole" e la "sintassi", ecco, le parole sono il microcodice che è già residente nella macchina o, più tardi, nel microprocessore. Un insieme di piccoli programmi identificati da un numero (binario) che fanno semplici elaborazioni su registri, dati e locazioni di memoria.

Questo concetto che permette la "programmabilità" cioè l'esecuzione da parte di una macchina di un codice di programma memorizzato e modificabile non appartiene a tutti i primi computer, che invece venivano configurati di volta in volta manualmente con spinotti e prese per eseguire specifiche operazioni, si chiama architettura di Von Neumann...

Inviato dal mio Nexus 5 utilizzando Tapatalk
 

rctimelines

Utente Èlite
5,143
2,023
CPU
Ryzen 7 2700X | i7-6700k@4.5 | i5-4460... altri
Dissipatore
wraith MAX | Scythe Katana2|Arctic Freezer 11LP
Scheda Madre
Asrock B450 Fatal1ty 4K | Asus Prime Z270P | Acer Veriton
HDD
Samsung 970evo m.2 | vari | Samsung 860 evo
RAM
16GB G.Skill TridentZ 3000 | 16GB CORSAIR 2133 | 8GB DDR3 1600
GPU
RadeonPro WX3100 4G | ZOTAC GTX 1070 8G | Quadro k620 2G
Monitor
DELL 2419P 2K + Benq 17" | LG Ultrawide 27''
Net
fibra 1000
OS
Windows10-pro64/OpenSUSE-QL15.1/Debian 10.3
E come si faceva a dare il codice assembly alla CPU per processarlo se la CPU non aveva nessun programma per la lettura, io penso di più a prendere l'elettricità e farli fare acceso e spento a mano per così dare i comandi al pc nel senso 0=spento 1=acceso cioè in binario

Inviato dal mio SM-G900F utilizzando Tapatalk
Il concetto di CPU si è formato con il tempo è tutta la macchina era un insieme di CPU, memoria, bus dati, input-output ecc.. il codice assembly richiede già un programma per essere impartito, cioè il linker, che è quello che trasforma (in origine per semplicissima sostituzione, poi sono usciti macro-assembler più strutturati) i codici mnemonici in linguaggio macchina... si fa anche oggi.

Prima impartivi direttamente i codici macchina nella memoria ed la macchina (quella che chiami CPU) allora come oggi è progettata in modo da prelevare questi codici ed eseguire i corrispondenti programmi.


Inviato dal mio Nexus 5 utilizzando Tapatalk
 

Nicco199o

Utente Attivo
904
86
CPU
intel core i7 6500U skylake
Dissipatore
integrato
Scheda Madre
del notebook asus x
HDD
250gb ssd
RAM
8gb
GPU
nVidia geforce 920m
Audio
realtek high definition audio
Monitor
samsung SyncMaster p2770HD
PSU
450w asus
Case
E un notebook elegante e robusto
Periferiche
Mouse e tastiera logitech cuffie sony
Net
100mb
OS
Windows 10 pro
Il concetto di CPU si è formato con il tempo è tutta la macchina era un insieme di CPU, memoria, bus dati, input-output ecc.. il codice assembly richiede già un programma per essere impartito, cioè il linker, che è quello che trasforma (in origine per semplicissima sostituzione, poi sono usciti macro-assembler più strutturati) i codici mnemonici in linguaggio macchina... si fa anche oggi.

Prima impartivi direttamente i codici macchina nella memoria ed la macchina (quella che chiami CPU) allora come oggi è progettata in modo da prelevare questi codici ed eseguire i corrispondenti programmi.


Inviato dal mio Nexus 5 utilizzando Tapatalk
Cioè se io faccio 01000001 vuol dire a

Inviato dal mio SM-G900F utilizzando Tapatalk
 

rctimelines

Utente Èlite
5,143
2,023
CPU
Ryzen 7 2700X | i7-6700k@4.5 | i5-4460... altri
Dissipatore
wraith MAX | Scythe Katana2|Arctic Freezer 11LP
Scheda Madre
Asrock B450 Fatal1ty 4K | Asus Prime Z270P | Acer Veriton
HDD
Samsung 970evo m.2 | vari | Samsung 860 evo
RAM
16GB G.Skill TridentZ 3000 | 16GB CORSAIR 2133 | 8GB DDR3 1600
GPU
RadeonPro WX3100 4G | ZOTAC GTX 1070 8G | Quadro k620 2G
Monitor
DELL 2419P 2K + Benq 17" | LG Ultrawide 27''
Net
fibra 1000
OS
Windows10-pro64/OpenSUSE-QL15.1/Debian 10.3
Cioè se io faccio 01000001 vuol dire a

Inviato dal mio SM-G900F utilizzando Tapatalk
No. 01000001 vuol dire cose diverse a seconda di dove si trova.

Comunque lascia perdere la codifica alfanumerica... È un'altra cosa ancora.

Un programma in LM è una sequenza di 1 e 0.

Il numero binario che hai scritto, in una macchina con parola 8 bit potrebbe voler dire il numero decimale 65 se inteso come dato, potrebbe essere la parte di un indirizzo di memoria.. oppure essere il codice che identifica un'istruzione del microcodice interno... ecc



jb
 

Nicco199o

Utente Attivo
904
86
CPU
intel core i7 6500U skylake
Dissipatore
integrato
Scheda Madre
del notebook asus x
HDD
250gb ssd
RAM
8gb
GPU
nVidia geforce 920m
Audio
realtek high definition audio
Monitor
samsung SyncMaster p2770HD
PSU
450w asus
Case
E un notebook elegante e robusto
Periferiche
Mouse e tastiera logitech cuffie sony
Net
100mb
OS
Windows 10 pro
No. 01000001 vuol dire cose diverse a seconda di dove si trova.

Comunque lascia perdere la codifica alfanumerica... È un'altra cosa ancora.

Un programma in LM è una sequenza di 1 e 0.

Il numero binario che hai scritto, in una macchina con parola 8 bit potrebbe voler dire il numero decimale 65 se inteso come dato, potrebbe essere la parte di un indirizzo di memoria.. oppure essere il codice che identifica un'istruzione del microcodice interno... ecc



jb
Intendevo dire 01000001 nel senso 65 che poi nella codifica ASCII vuol dire A

Inviato dal mio SM-G900F utilizzando Tapatalk
 

Nicco199o

Utente Attivo
904
86
CPU
intel core i7 6500U skylake
Dissipatore
integrato
Scheda Madre
del notebook asus x
HDD
250gb ssd
RAM
8gb
GPU
nVidia geforce 920m
Audio
realtek high definition audio
Monitor
samsung SyncMaster p2770HD
PSU
450w asus
Case
E un notebook elegante e robusto
Periferiche
Mouse e tastiera logitech cuffie sony
Net
100mb
OS
Windows 10 pro
Ma l'assembly viene usato oggi per fare cosa, nell'uefi lo hanno rimpiazzato con il C++

Inviato dal mio SM-G900F utilizzando Tapatalk
 

rctimelines

Utente Èlite
5,143
2,023
CPU
Ryzen 7 2700X | i7-6700k@4.5 | i5-4460... altri
Dissipatore
wraith MAX | Scythe Katana2|Arctic Freezer 11LP
Scheda Madre
Asrock B450 Fatal1ty 4K | Asus Prime Z270P | Acer Veriton
HDD
Samsung 970evo m.2 | vari | Samsung 860 evo
RAM
16GB G.Skill TridentZ 3000 | 16GB CORSAIR 2133 | 8GB DDR3 1600
GPU
RadeonPro WX3100 4G | ZOTAC GTX 1070 8G | Quadro k620 2G
Monitor
DELL 2419P 2K + Benq 17" | LG Ultrawide 27''
Net
fibra 1000
OS
Windows10-pro64/OpenSUSE-QL15.1/Debian 10.3
Intendevo dire 01000001 nel senso 65 che poi nella codifica ASCII vuol dire A

Inviato dal mio SM-G900F utilizzando Tapatalk
Vabbè, ma la codifica ASCIi non c'entra niente.

Il concetto è che è un numero che assume significati diversi a seconda del contesto.
In una tabella ASCII rappresenta la lettera 'a' , nella tabella del microcodice individua un'istruzione macchina... per esempio la mnemonica LOAD che carica un dato da una locazione RAM.

jb
 

rctimelines

Utente Èlite
5,143
2,023
CPU
Ryzen 7 2700X | i7-6700k@4.5 | i5-4460... altri
Dissipatore
wraith MAX | Scythe Katana2|Arctic Freezer 11LP
Scheda Madre
Asrock B450 Fatal1ty 4K | Asus Prime Z270P | Acer Veriton
HDD
Samsung 970evo m.2 | vari | Samsung 860 evo
RAM
16GB G.Skill TridentZ 3000 | 16GB CORSAIR 2133 | 8GB DDR3 1600
GPU
RadeonPro WX3100 4G | ZOTAC GTX 1070 8G | Quadro k620 2G
Monitor
DELL 2419P 2K + Benq 17" | LG Ultrawide 27''
Net
fibra 1000
OS
Windows10-pro64/OpenSUSE-QL15.1/Debian 10.3
Ma l'assembly viene usato oggi per fare cosa, nell'uefi lo hanno rimpiazzato con il C++

Inviato dal mio SM-G900F utilizzando Tapatalk
Ma cosa c'entra questo con il post iniziale? Da quanto capisco non mi pare che tu faccia programmazione.

Il C o il C++ sono linguaggi di alto livello, quando vengono 'compilati' il codice viene trasformato in assembly che a sua volta viene 'linkato' per diventare codice macchina eseguibile (binario)

Inviato dal mio Nexus 5 utilizzando Tapatalk
 

rctimelines

Utente Èlite
5,143
2,023
CPU
Ryzen 7 2700X | i7-6700k@4.5 | i5-4460... altri
Dissipatore
wraith MAX | Scythe Katana2|Arctic Freezer 11LP
Scheda Madre
Asrock B450 Fatal1ty 4K | Asus Prime Z270P | Acer Veriton
HDD
Samsung 970evo m.2 | vari | Samsung 860 evo
RAM
16GB G.Skill TridentZ 3000 | 16GB CORSAIR 2133 | 8GB DDR3 1600
GPU
RadeonPro WX3100 4G | ZOTAC GTX 1070 8G | Quadro k620 2G
Monitor
DELL 2419P 2K + Benq 17" | LG Ultrawide 27''
Net
fibra 1000
OS
Windows10-pro64/OpenSUSE-QL15.1/Debian 10.3
Ma l'assembly viene usato oggi per fare cosa, nell'uefi lo hanno rimpiazzato con il C++

Inviato dal mio SM-G900F utilizzando Tapatalk
Tra l'altro, veramente, cosa c'entra il fatto che UEFI lo abbia dismesso? È proprio una divagazione senza senso!

Comunque l'assembler viene utilizzato ancora oggi in diversi ambiti e, alla fine, credo che verrà usato sempre in quanto non è un linguaggio di programmazione ma appunto un codice mnemonico, cioè un modo per utilizzare più facilmente il linguaggio macchina.

Inviato dal mio Nexus 5 utilizzando Tapatalk
 

Nicco199o

Utente Attivo
904
86
CPU
intel core i7 6500U skylake
Dissipatore
integrato
Scheda Madre
del notebook asus x
HDD
250gb ssd
RAM
8gb
GPU
nVidia geforce 920m
Audio
realtek high definition audio
Monitor
samsung SyncMaster p2770HD
PSU
450w asus
Case
E un notebook elegante e robusto
Periferiche
Mouse e tastiera logitech cuffie sony
Net
100mb
OS
Windows 10 pro
Tra l'altro, veramente, cosa c'entra il fatto che UEFI lo abbia dismesso? È proprio una divagazione senza senso!

Comunque l'assembler viene utilizzato ancora oggi in diversi ambiti e, alla fine, credo che verrà usato sempre in quanto non è un linguaggio di programmazione ma appunto un codice mnemonico, cioè un modo per utilizzare più facilmente il linguaggio macchina.

Inviato dal mio Nexus 5 utilizzando Tapatalk
Ciò serve per facilitare il modo di impartire comandi alla macchina

Inviato dal mio SM-G900F utilizzando Tapatalk
 

rctimelines

Utente Èlite
5,143
2,023
CPU
Ryzen 7 2700X | i7-6700k@4.5 | i5-4460... altri
Dissipatore
wraith MAX | Scythe Katana2|Arctic Freezer 11LP
Scheda Madre
Asrock B450 Fatal1ty 4K | Asus Prime Z270P | Acer Veriton
HDD
Samsung 970evo m.2 | vari | Samsung 860 evo
RAM
16GB G.Skill TridentZ 3000 | 16GB CORSAIR 2133 | 8GB DDR3 1600
GPU
RadeonPro WX3100 4G | ZOTAC GTX 1070 8G | Quadro k620 2G
Monitor
DELL 2419P 2K + Benq 17" | LG Ultrawide 27''
Net
fibra 1000
OS
Windows10-pro64/OpenSUSE-QL15.1/Debian 10.3
Ciò serve per facilitare il modo di impartire comandi alla macchina

Inviato dal mio SM-G900F utilizzando Tapatalk

Serve per impartire direttamente le uniche istruzioni che un computer esegue in maniera nativa: di conseguenza è il modo per scrivere programmi più veloci in assoluto. In qualche modo tutti i linguaggi per eseguire un programma devono trasformare il codice sorgente in linguaggio macchina (compilando, interpretando e trasformandolo al volo): l'assembler è già linguaggio macchina.
 

Nicco199o

Utente Attivo
904
86
CPU
intel core i7 6500U skylake
Dissipatore
integrato
Scheda Madre
del notebook asus x
HDD
250gb ssd
RAM
8gb
GPU
nVidia geforce 920m
Audio
realtek high definition audio
Monitor
samsung SyncMaster p2770HD
PSU
450w asus
Case
E un notebook elegante e robusto
Periferiche
Mouse e tastiera logitech cuffie sony
Net
100mb
OS
Windows 10 pro
Serve per impartire direttamente le uniche istruzioni che un computer esegue in maniera nativa: di conseguenza è il modo per scrivere programmi più veloci in assoluto. In qualche modo tutti i linguaggi per eseguire un programma devono trasformare il codice sorgente in linguaggio macchina (compilando, interpretando e trasformandolo al volo): l'assembler è già linguaggio macchina.
Schematizandolo

Comando --> macchina

Inviato dal mio SM-G900F utilizzando Tapatalk
 
Stato
Discussione chiusa ad ulteriori risposte.

Entra

oppure Accedi utilizzando
Discord Ufficiale Entra ora!

Discussioni Simili