Torna indietro   Hardware Upgrade Forum > Software > Programmazione

Recensione OPPO Find X9 Ultra: è lui il cameraphone definitivo
Recensione OPPO Find X9 Ultra: è lui il cameraphone definitivo
Find X9 Ultra è lo smartphone che tanti aspettavano, e finalmente è arrivato anche in Italia. Abbiamo provato il flagship di OPPO per diverse settimane, e siamo volati fino in Cina alla sua presentazione ufficiale. Tutto gira intorno al suo incredibile comparto fotografico in collaborazione con Hasselblad e con un totale di sei fotocamere. Il resto è un mix di specifiche di altissimo livello, così come il prezzo. Vi raccontiamo tutto nella nostra recensione completa.
Ecovacs Deebot X12 OmniCyclone: lava grazie a FocusJet
Ecovacs Deebot X12 OmniCyclone: lava grazie a FocusJet
Il nuovo Deebot X12 OmniCyclone abbina un sistema di raccolta dello sporco senza sacchetto, un rullo di lavaggio esteso e la tecnologia FocusJet per intervenire più efficacemente sulle macchie più persistenti. Un robot completo e preciso che aiuta a tenere puliti i pavimenti di casa con il minimo sforzo
Narwal Flow 2: la pulizia di casa con un mocio a nastro
Narwal Flow 2: la pulizia di casa con un mocio a nastro
Narwal Flow 2 implementa un mocio a nastro che esegue una pulizia dettagliata del pavimento di casa, in abbinamento ad un potente motore di aspirazione della polvere: un prodotto ideale per gestire in autonomia e con grande efficacia le necessità di pulizia dei pavimenti di casa
Tutti gli articoli Tutte le news

Vai al Forum
Rispondi
 
Strumenti
Old 10-02-2007, 00:13   #1
Digital_Style
Senior Member
 
Iscritto dal: Jan 2007
Messaggi: 332
come si crea un linguaggio di programmazione

Molto spesso mi chiedo come si è passati dai primi computer che erano solo delle lampadine che si accendevano e spegnevano fino ad oggi.se erano solo lampadine i primi computer come hanno scritto il software?e come si scrive un linguaggio di programmazione?ad esempio il C in che linguaggio è scritto?
Digital_Style è offline   Rispondi citando il messaggio o parte di esso
Old 10-02-2007, 00:24   #2
okay
Senior Member
 
Iscritto dal: Feb 2002
Messaggi: 906
Quote:
Originariamente inviato da Digital_Style
Molto spesso mi chiedo come si è passati dai primi computer che erano solo delle lampadine che si accendevano e spegnevano fino ad oggi.se erano solo lampadine i primi computer come hanno scritto il software?e come si scrive un linguaggio di programmazione?ad esempio il C in che linguaggio è scritto?
è scritto in c e assembly
okay è offline   Rispondi citando il messaggio o parte di esso
Old 10-02-2007, 10:32   #3
repne scasb
Bannato
 
Iscritto dal: Feb 2003
Messaggi: 947
Sembrera' strano ma C e' scritto in C. A grandi linee, si supponga di creare un nuovo linguaggio il D:

1) Il primo passo e' di creare un interprete del linguaggio D scritto in assembly o in un altro linguaggio preesistente.

2) Il secondo passo sara' quello di scrivere il compilatore D in linguaggio D (sorgente).

3) Il terzo passo sara' quello di eseguire il compilatore D con l'interprete appena creato nel punto 1).

4) Il quarto passo sara' quello di compilare il compilatore D, con il compilatore D interpretato dall'interprete del punto 1).

5) L'eseguibile ottenuto dal punto 4) e' il compilatore D scritto in D (autocompilazione).
repne scasb è offline   Rispondi citando il messaggio o parte di esso
Old 10-02-2007, 13:25   #4
Digital_Style
Senior Member
 
Iscritto dal: Jan 2007
Messaggi: 332
scusa, ma non ho capito molto bene!
Digital_Style è offline   Rispondi citando il messaggio o parte di esso
Old 10-02-2007, 14:34   #5
marco.r
Senior Member
 
Iscritto dal: Dec 2005
Città: Istanbul
Messaggi: 1817
Prima scrivi il compilatore/interprete in un altro linguaggio, poi lo riscrivi nel linguaggio stesso. Nel caso del C, se non ricordo male, la cosa e' stata fatta a passi (prima un compilatore per un sottoinsieme del linguaggio, per poi aggiungere man mano features).
__________________
One of the conclusions that we reached was that the "object" need not be a primitive notion in a programming language; one can build objects and their behaviour from little more than assignable value cells and good old lambda expressions. —Guy Steele
marco.r è offline   Rispondi citando il messaggio o parte di esso
Old 10-02-2007, 15:44   #6
Digital_Style
Senior Member
 
Iscritto dal: Jan 2007
Messaggi: 332
e per scrivere un compilatore/interprete in un altro linguagio cosa si dovrebbe fare?scrivere la sintassi del nuovo linguaggio che si vuole creare o altro?
Digital_Style è offline   Rispondi citando il messaggio o parte di esso
Old 11-02-2007, 09:51   #7
Digital_Style
Senior Member
 
Iscritto dal: Jan 2007
Messaggi: 332
up
Digital_Style è offline   Rispondi citando il messaggio o parte di esso
Old 11-02-2007, 12:14   #8
D4rkAng3l
Bannato
 
Iscritto dal: Mar 2004
Città: Roma
Messaggi: 2688
oddio non è così banale la cosa...ti dovresti leggere bene qualcosa sull'architettura degli elaboratori...
D4rkAng3l è offline   Rispondi citando il messaggio o parte di esso
Old 11-02-2007, 13:15   #9
Digital_Style
Senior Member
 
Iscritto dal: Jan 2007
Messaggi: 332
qualche link?
Digital_Style è offline   Rispondi citando il messaggio o parte di esso
Old 11-02-2007, 17:17   #10
D4rkAng3l
Bannato
 
Iscritto dal: Mar 2004
Città: Roma
Messaggi: 2688
mmmm purtroppo il mio professore (cioè purtroppo per te ma bene per me perchè era Dio) odiava libri, dispense...parlava spiegava...e gli appunti erano la bibbia...mmm mi informo in facoltà se qualcuno conosce qualche link fatto benino e te lo passo
D4rkAng3l è offline   Rispondi citando il messaggio o parte di esso
Old 12-02-2007, 10:50   #11
lovaz
Senior Member
 
L'Avatar di lovaz
 
Iscritto dal: Jul 2002
Messaggi: 4334
Comincia da qua:
http://en.wikipedia.org/wiki/Formal_grammar
lovaz è offline   Rispondi citando il messaggio o parte di esso
Old 12-02-2007, 20:45   #12
AMD_GO
Senior Member
 
L'Avatar di AMD_GO
 
Iscritto dal: Jan 2006
Città: Prov.Cagliari
Messaggi: 1583
Quote:
Originariamente inviato da D4rkAng3l
oddio non è così banale la cosa...ti dovresti leggere bene qualcosa sull'architettura degli elaboratori...
Quoto....dovresti quindi vedere qualcosa che riguarda le macchine virtuali ed i linguaggi connessi...capirai subito, inizialmente a grandi linee, come si "costruisce" un linguaggio....logica digitale, microprogrammazione, ecc....
__________________
MB: ASUS Prime x570-P - CPU: AMD Ryzen 9 3900x with Arctic Liquid Freezer II 240 - Memorie: G.Skill Ripjaws DDR4 2x16GB 3200 - HDs: Samsung 970 EVO plus and Crucial P2 1TB - Ali: Seasonic Focus GX-650 - Video: AMD Asus GTX770 Direct CU II - Concluso Positivamente con : M@x27, mirco2034, max x2, relativo, Mighty Max e tanti altri
AMD_GO è offline   Rispondi citando il messaggio o parte di esso
Old 14-02-2007, 15:28   #13
Digital_Style
Senior Member
 
Iscritto dal: Jan 2007
Messaggi: 332
ok capisco.

@lovaz:non hai un link in italiano?
Digital_Style è offline   Rispondi citando il messaggio o parte di esso
Old 14-02-2007, 17:05   #14
71104
Bannato
 
L'Avatar di 71104
 
Iscritto dal: Feb 2005
Città: Roma
Messaggi: 7029
Quote:
Originariamente inviato da repne scasb
Sembrera' strano ma C e' scritto in C. A grandi linee, si supponga di creare un nuovo linguaggio il D:

1) Il primo passo e' di creare un interprete del linguaggio D scritto in assembly o in un altro linguaggio preesistente.

2) Il secondo passo sara' quello di scrivere il compilatore D in linguaggio D (sorgente).

3) Il terzo passo sara' quello di eseguire il compilatore D con l'interprete appena creato nel punto 1).

4) Il quarto passo sara' quello di compilare il compilatore D, con il compilatore D interpretato dall'interprete del punto 1).

5) L'eseguibile ottenuto dal punto 4) e' il compilatore D scritto in D (autocompilazione).
quoto, infatti il compilatore GCC è scritto in C

e molto probabilmente anche il CL di Microsoft
71104 è offline   Rispondi citando il messaggio o parte di esso
Old 14-02-2007, 17:09   #15
71104
Bannato
 
L'Avatar di 71104
 
Iscritto dal: Feb 2005
Città: Roma
Messaggi: 7029
Quote:
Originariamente inviato da VeeJ
[...] (per farci capire il concetto, il nostro prof di sistemi in 3° o 4° superiore ci ha spiegato come funzionava la codifica dell'istruzione MOV dell'ASM x86 ). In pratica un linguaggio assembly ha una corrispondenza 1:1 con il linguaggio macchina (ogni singola istruzione assembly viene tradotta in un singolo codice in linguaggio macchina).
ehm...
il fatto della corrispondenza 1:1 mi sembra una generalizzazione veramente eccessiva, mi sa che il vostro prof di assembly x86 non ne sapeva più o meno all'incirca un cazz

scaricati se vuoi i manuali gratuiti (dal sito della Intel, in PDF) dei processori x86, e vedi giustappunto la codifica delle varie versioni di MOV: certe hanno proprio opcodes diversi, non è possibile dire che la corrispondenza sia 1:1.

Quote:
I moderni linguaggi sono quindi scritti o direttamente in ASM, oppure tramite uno o più linguaggi intermedi.
ehm... no
leggi la spiegazione di repne scasb, è chiarissima; e fai caso anche al fatto che il GCC è scritto in C

Ultima modifica di 71104 : 14-02-2007 alle 17:12.
71104 è offline   Rispondi citando il messaggio o parte di esso
Old 14-02-2007, 17:16   #16
wisher
Senior Member
 
L'Avatar di wisher
 
Iscritto dal: Aug 2005
Messaggi: 2755
Mi sapete dire perchè si è soliti scrivere un compilatore con lo stesso linguaggio che andrà a compilare?
__________________
wisher è offline   Rispondi citando il messaggio o parte di esso
Old 14-02-2007, 17:18   #18
lovaz
Senior Member
 
L'Avatar di lovaz
 
Iscritto dal: Jul 2002
Messaggi: 4334
Quote:
Originariamente inviato da wisher
Mi sapete dire perchè si è soliti scrivere un compilatore con lo stesso linguaggio che andrà a compilare?
Non sempre, javac non è scritto in java...
Motivi prestazionali, penso...
lovaz è offline   Rispondi citando il messaggio o parte di esso
Old 14-02-2007, 17:51   #19
marco.r
Senior Member
 
Iscritto dal: Dec 2005
Città: Istanbul
Messaggi: 1817
Quote:
Originariamente inviato da wisher
Mi sapete dire perchè si è soliti scrivere un compilatore con lo stesso linguaggio che andrà a compilare?
Scrivere un compilatore del linguaggio A nel linguaggio B vuol dire dover conoscere a fondo entrambi i linguaggi, e' piu' facile trovare una persona che conosca molto bene uno solo dei due.
Inoltre tipicamente se si progetta un nuovo linguaggio si vuole ottenere un linguaggio "migliore" (dal punto di vista dell'autore) dei precedenti, per cui se chi lo progetta e' anche chi ne scrive il compilatore, tendera' a preferirlo in quanto considerato piu' adatto.
La cosa non e' una regola ovviamente. Ci sono persone bravissime e fluenti in piu' linguaggi, e non e' detto che un linguaggio vada bene anche per scrivere compilatori, soprattutto i linguaggi di scripting per settori abbastanza particolari.
__________________
One of the conclusions that we reached was that the "object" need not be a primitive notion in a programming language; one can build objects and their behaviour from little more than assignable value cells and good old lambda expressions. —Guy Steele
marco.r è offline   Rispondi citando il messaggio o parte di esso
Old 14-02-2007, 19:45   #20
Digital_Style
Senior Member
 
Iscritto dal: Jan 2007
Messaggi: 332
scusate, ma se io vorrei inventare il linguaggio G come faccio a scrivere il compilatore in G se nemmeno l'ho inventato?!
Digital_Style è offline   Rispondi citando il messaggio o parte di esso
 Rispondi


Recensione OPPO Find X9 Ultra: è lui il cameraphone definitivo Recensione OPPO Find X9 Ultra: è lui il c...
Ecovacs Deebot X12 OmniCyclone: lava grazie a FocusJet Ecovacs Deebot X12 OmniCyclone: lava grazie a Fo...
Narwal Flow 2: la pulizia di casa con un mocio a nastro Narwal Flow 2: la pulizia di casa con un mocio a...
Tastiera gaming MSI GK600 TKL: switch hot-swap, display LCD e tre modalità wireless Tastiera gaming MSI GK600 TKL: switch hot-swap, ...
DJI Osmo Pocket 4: la gimbal camera tascabile cresce e ha nuovi controlli fisici DJI Osmo Pocket 4: la gimbal camera tascabile cr...
Tute spaziali AxEMU per Artemis: Axiom S...
Nutanix Government Cloud Clusters arriva...
Troy Baker lavora a un progetto tutto su...
Motorola Edge 60 Neo è il compatt...
Stretto di Hormuz, finti funzionari iran...
Dragon Ball Xenoverse 3 annunciato uffic...
WINDTRE BUSINESS potenzia i servizi IoT ...
OPPO rinnova l'ecosistema: arrivano Watc...
OPPO Find X9 Ultra ufficiale: debutta il...
Renault Twingo: esposta a Milano per far...
Intel vuole cambiare: overclocking anche...
Anche PlayStation introduce la verifica ...
Samsung ed Sk hynix, i bonus per gli ope...
Windows 11 velocizza Esplora File: ecco ...
Funzioni nascoste nelle librerie ADLX Ra...
Chromium
GPU-Z
OCCT
LibreOffice Portable
Opera One Portable
Opera One 106
CCleaner Portable
CCleaner Standard
Cpu-Z
Driver NVIDIA GeForce 546.65 WHQL
SmartFTP
Trillian
Google Chrome Portable
Google Chrome 120
VirtualBox
Tutti gli articoli Tutte le news Tutti i download

Strumenti

Regole
Non Puoi aprire nuove discussioni
Non Puoi rispondere ai messaggi
Non Puoi allegare file
Non Puoi modificare i tuoi messaggi

Il codice vB è On
Le Faccine sono On
Il codice [IMG] è On
Il codice HTML è Off
Vai al Forum


Tutti gli orari sono GMT +1. Ora sono le: 18:23.


Powered by vBulletin® Version 3.6.4
Copyright ©2000 - 2026, Jelsoft Enterprises Ltd.
Served by www3v