Stiamo lavorando per ripristinare l'app di Unionpedia nel Google Play Store
UscenteArrivo
🌟Abbiamo semplificato il nostro design per una migliore navigazione!
Instagram Facebook X LinkedIn

Compilatore

Indice Compilatore

Un compilatore è un programma informatico che traduce una serie di istruzioni scritte in un determinato linguaggio di programmazione (codice sorgente) in istruzioni di un altro linguaggio (codice oggetto): il processo di traduzione si chiama compilazione mentre l'attività inversa - ovvero passare dal codice oggetto al codice sorgente - è chiamata decompilazione ed è effettuata per mezzo di un decompilatore.

Indice

  1. 46 relazioni: A-0 System, Albero sintattico, Albero sintattico astratto, Analisi lessicale, Analisi semantica, Analizzatore lessicale, Architettura (computer), Assembler, C (linguaggio di programmazione), COBOL, Codice oggetto, Codice sorgente, Compilatore con ottimizzatore, Copy propagation, Cross-compilazione, Decompilazione, Decorator, Dialetto (informatica), Fortran, Front-end e back-end, Grace Murray Hopper, Grammatica, IBM, Informatica, Input, Istruzione (informatica), John Backus, Linguaggio assembly, Linguaggio di programmazione, Linguaggio macchina, Linking, Lisp, Massachusetts Institute of Technology, Parallelizzazione automatica, Parsing, Pascal (linguaggio di programmazione), Preprocessing, Preprocessore, Programma (informatica), Semantica formale, Sistema dei tipi, Specifica tecnica, Token (testo), Visibilità (programmazione), .bss, 1960.

  2. Compilatori
  3. Implementazione dei linguaggi di programmazione
  4. Librerie software

A-0 System

LA-0 System è stato il primo compilatore al mondo, scritto nel 1951 per UNIVAC da Grace Murray Hopper. Questo funzionava più come un caricatore o linker che come un effettivo compilatore.

Vedere Compilatore e A-0 System

Albero sintattico

Un albero sintattico o concreto è un albero che rappresenta la struttura sintattica di una stringa in accordo a determinate forme grammaticali.

Vedere Compilatore e Albero sintattico

Albero sintattico astratto

In informatica, un albero sintattico astratto (AST) o semplicemente albero sintattico è una rappresentazione ad albero della struttura sintattica astratta del testo (spesso codice sorgente) scritto in un linguaggio formale.

Vedere Compilatore e Albero sintattico astratto

Analisi lessicale

Lanalisi lessicale è il processo di prendere in ingresso una sequenza di caratteri e produrre in uscita una sequenza di token. Il flusso di caratteri è genericamente il codice sorgente di un programma.

Vedere Compilatore e Analisi lessicale

Analisi semantica

Lanalisi semantica è l'attività di assegnazione di un significato, un senso, alla struttura sintattica corretta e, di conseguenza, all'espressione linguistica.

Vedere Compilatore e Analisi semantica

Analizzatore lessicale

Un analizzatore lessicale, a volte chiamato scanner o lexer, è un programma, o una parte di un programma (vedi compilatori e parser), che si occupa di analizzare lessicalmente un dato input, genericamente il codice sorgente di un programma.

Vedere Compilatore e Analizzatore lessicale

Architettura (computer)

Con architettura hardware si intende l'insieme dei criteri di progetto in base ai quali è progettato e realizzato un computer, oppure un dispositivo facente parte di esso.

Vedere Compilatore e Architettura (computer)

Assembler

Un assembler (assemblatore in italiano) è un software che trasforma le istruzioni mnemoniche dell'assembly in linguaggio macchina. Si tratta dunque di un compilatore (traduttore) per un particolare linguaggio assembly.

Vedere Compilatore e Assembler

C (linguaggio di programmazione)

C (AFI) è un linguaggio di programmazione ad uso generale di natura imperativa e procedurale creato da Dennis Ritchie negli anni '70. Tutt'oggi influente, è largamente adoperato nei sistemi operativi, nei driver e nelle pile di protocolli, mentre è in diminuzione il suo uso nelle applicazioni.

Vedere Compilatore e C (linguaggio di programmazione)

COBOL

COBOL (acronimo di COmmon Business-Oriented Language, ossia, letteralmente, "linguaggio comune orientato alle applicazioni commerciali") è un linguaggio di programmazione, fra i primi a essere stato sviluppato e ancora presente in molte applicazioni software commerciali di tipo bancario.

Vedere Compilatore e COBOL

Codice oggetto

In informatica, il codice oggetto (o file oggetto) è la traduzione del codice sorgente in linguaggio macchina (binario), comprensibile solo all'elaboratore.

Vedere Compilatore e Codice oggetto

Codice sorgente

In informatica, il codice sorgente (spesso detto sorgente o codice o listato) è il testo di un algoritmo di un programma scritto in un determinato linguaggio di programmazione, compreso all'interno di un file sorgente, che definisce il flusso di esecuzione del programma stesso, ovvero la sua codifica software.

Vedere Compilatore e Codice sorgente

Compilatore con ottimizzatore

Il compilatore con ottimizzatore o compilatore ottimizzante è un compilatore che effettua automaticamente l'ottimizzazione di un programma durante il processo di compilazione.

Vedere Compilatore e Compilatore con ottimizzatore

Copy propagation

La copy propagation è una tecnica di ottimizzazione utilizzata dai compilatore per migliorare le prestazioni dei programmi informatici. La tecnica provvede a evitare copie multiple della stessa variabile eliminando eventuali variabili intermedie che vengono utilizzate come alias dai programmatori.

Vedere Compilatore e Copy propagation

Cross-compilazione

La cross-compilazione è la tecnica mediante la quale si compila un codice sorgente con un cross-compilatore, ottenendo così un file binario eseguibile su di un elaboratore con architettura diversa da quella della macchina su cui si è lanciato il cross-compilatore stesso.

Vedere Compilatore e Cross-compilazione

Decompilazione

La decompilazione è l'attività di ingegneria inversa mediante la quale viene ricostruito il codice sorgente a partire da un file eseguibile in linguaggio macchina.

Vedere Compilatore e Decompilazione

Decorator

Nella programmazione ad oggetti, il decorator è uno dei pattern fondamentali, definiti originariamente dalla Gang of Four. Il design pattern decorator consente di aggiungere nuove funzionalità ad oggetti già esistenti.

Vedere Compilatore e Decorator

Dialetto (informatica)

Un dialetto, in informatica, è una variante di un linguaggio di programmazione standard creata per aggiungergli funzioni o per adattarlo ad un uso particolare.

Vedere Compilatore e Dialetto (informatica)

Fortran

Fortran (fino alla versione 90 FORTRAN) è un linguaggio di programmazione, compilato e imperativo, particolarmente adatto per il calcolo numerico e la scienza computazionale.

Vedere Compilatore e Fortran

Front-end e back-end

I termini inglesi front end (in sigla FE) e back end (in sigla BE) (anche scritti, frontend o front-end e backend o back-end) in informatica denotano, rispettivamente, la parte visibile all'utente di un programma e con cui egli può interagire —tipicamente un'interfaccia utente— e la parte che permette l'effettivo funzionamento di queste interazioni.

Vedere Compilatore e Front-end e back-end

Grace Murray Hopper

Grace Murray nacque a New York; era la maggiore dei tre figli dei coniugi Walter Fletcher Murray e Mary Campbell Van Horne, che avevano origini scozzese e olandese e frequentavano la Chiesa Collegiata West End.

Vedere Compilatore e Grace Murray Hopper

Grammatica

La grammatica è quel complesso di regole necessarie alla costruzione di frasi, sintagmi e parole di una determinata lingua. Il termine si riferisce anche allo studio di dette regole.

Vedere Compilatore e Grammatica

IBM

LInternational Business Machines Corporation, comunemente nota come IBM e soprannominata "Big Blue", è un'azienda statunitense del settore informatico, tra le più importanti al mondo.

Vedere Compilatore e IBM

Informatica

Linformatica è la scienza o disciplina che si occupa del trattamento dell'informazione mediante procedure automatizzate, avendo in particolare per oggetto lo studio dei fondamenti teorici dell'informazione, della sua computazione a livello logico e delle tecniche pratiche per la sua implementazione e applicazione in sistemi elettronici automatizzati detti quindi sistemi informatici; come tale è una disciplina fortemente connessa con la logica matematica, l'automatica, l'elettronica e anche l'elettromeccanica.

Vedere Compilatore e Informatica

Input

Input è un termine inglese con significato di «immettere» che in campo informatico definisce una sequenza di dati o informazioni, immessi per mezzo di una periferica, detta appunto di input, e successivamente elaborati.

Vedere Compilatore e Input

Istruzione (informatica)

In informatica una istruzione è un comando impartito ad un esecutore (può essere il processore, ma anche il compilatore o il linker) in un sistema, utilizzando un linguaggio ad esso comprensibile.

Vedere Compilatore e Istruzione (informatica)

John Backus

Per ovviare alla difficoltà di programmazione del calcolatori dell'epoca, nel 1954 Backus iniziò la direzione di un progetto di ricerca della IBM per il progetto e la realizzazione di un linguaggio di programmazione più vicino alla comune notazione matematica.

Vedere Compilatore e John Backus

Linguaggio assembly

Un linguaggio assembly (detto anche linguaggio assemblativo o linguaggio assemblatore o semplicemente assembly) è un linguaggio di programmazione molto simile ai linguaggi macchina.

Vedere Compilatore e Linguaggio assembly

Linguaggio di programmazione

Un linguaggio di programmazione è un sistema di notazione per la scrittura di programmi per computer. La maggior parte dei linguaggi di programmazione sono linguaggi formali basati su testo, ma possono anche essere grafici.

Vedere Compilatore e Linguaggio di programmazione

Linguaggio macchina

Il linguaggio macchina (o codice macchina), in informatica, indica il linguaggio in cui sono scritti i programmi eseguibili per computer: può venire classificato come linguaggio di programmazione, sebbene quest'ultima espressione sia più spesso riservata per indicare i linguaggi di alto livello con cui si scrivono programmi non direttamente eseguibili, ma che richiedono una traduzione in linguaggio macchina, per es.

Vedere Compilatore e Linguaggio macchina

Linking

Il linking, in informatica, è il procedimento di integrazione dei vari moduli a cui un programma fa riferimento (i quali possono essere sottoprogrammi o librerie), per creare una singola unità eseguibile.

Vedere Compilatore e Linking

Lisp

Lisp (List Processor) è una famiglia di linguaggi di programmazione con implementazioni sia compilate sia interpretate, associata nel passato ai progetti di intelligenza artificiale.

Vedere Compilatore e Lisp

Massachusetts Institute of Technology

Il Massachusetts Institute of Technology (MIT) è una delle più importanti università di ricerca del mondo con sede a Cambridge, nel Massachusetts (Stati Uniti d'America).

Vedere Compilatore e Massachusetts Institute of Technology

Parallelizzazione automatica

In informatica la parallelizzazione automatica, o autoparallelizzazione, si riferisce alla conversione automatica da parte di compilatori di codice sequenziale in codice multi-threaded o vettoriale, o entrambi, in modo da utilizzare contemporaneamente tutte le unità di calcolo dei processori multi-core.

Vedere Compilatore e Parallelizzazione automatica

Parsing

In informatica il parsing, definito altresì analisi sintattica o parsificazione, è un processo che analizza un flusso continuo di dati in ingresso (input, letti per esempio da un file o una tastiera), in modo da determinare la correttezza della sua struttura grazie ad una data grammatica formale.

Vedere Compilatore e Parsing

Pascal (linguaggio di programmazione)

Il Pascal, in informatica, è un linguaggio di programmazione creato da Niklaus Wirth e basato sul linguaggio ALGOL; il nome è dedicato a Blaise Pascal che inventò nel 1645 la Pascalina, considerata la prima calcolatrice.

Vedere Compilatore e Pascal (linguaggio di programmazione)

Preprocessing

In informatica, e in particolare nella terminologia dei linguaggi di programmazione, il preprocessing (o precompilazione) è una fase dell'elaborazione del codice sorgente che precede la compilazione.

Vedere Compilatore e Preprocessing

Preprocessore

In informatica, un preprocessore o precompilatore è un programma (o una porzione di programma) che effettua sostituzioni testuali sul codice sorgente di un programma, ovvero la precompilazione.

Vedere Compilatore e Preprocessore

Programma (informatica)

In informatica, un programma è una sequenza di istruzioni codificate in un linguaggio interpretabile da un elaboratore, espressione di un algoritmo per la risoluzione automatica di una certa classe di problemi.

Vedere Compilatore e Programma (informatica)

Semantica formale

Nel campo dell'informatica teorica, il termine semantica formale riguarda i modelli matematici che definiscono formalmente i linguaggi di programmazione o, più generalmente, la computazione stessa.

Vedere Compilatore e Semantica formale

Sistema dei tipi

In informatica, un sistema dei tipi è un framework sintattico per la classificazione di espressioni secondo i tipi che esse calcolano. Un sistema dei tipi associa tipi a ogni valore computato.

Vedere Compilatore e Sistema dei tipi

Specifica tecnica

La specifica tecnica, in ingegneria, è un documento che correda disegni, schemi e altro relativi ad un prodotto o progetto, al fine di prescriverne una specifica funzionalità o un determinato impiego o livelli prestazionali determinati.

Vedere Compilatore e Specifica tecnica

Token (testo)

Un token (o token lessicale), in informatica, è un blocco di testo categorizzato, normalmente costituito da caratteri indivisibili chiamati lessemi.

Vedere Compilatore e Token (testo)

Visibilità (programmazione)

Nella programmazione, la visibilità o ambito è l'esistenza e la possibilità di richiamare un identificatore, in particolar modo una variabile, in un determinato punto del programma.

Vedere Compilatore e Visibilità (programmazione)

.bss

Il segmento bss (indicato come.bss o bss) è una porzione di un programma che contiene variabili statiche che sono dichiarate ma non esplicitamente inizializzate.

Vedere Compilatore e .bss

1960

Fu soprannominato "anno dell'Africa", per via dei numerosi paesi africani che ottennero l'indipendenza.

Vedere Compilatore e 1960

Vedi anche

Compilatori

Implementazione dei linguaggi di programmazione

Librerie software

Conosciuto come Compilatori, Compilazione, Compiler.