The Art of Computer Programming: differenze tra le versioni

Contenuto cancellato Contenuto aggiunto
AlessioBot (discussione | contributi)
m Voci correlate: Bot: +controllo di autorità
Aggiunto la copertina del primo volume della serie con la relativa didascalia nell'introduzione #WPWP #WPWPIT
 
(16 versioni intermedie di 9 utenti non mostrate)
Riga 1:
{{S|programmazione}}
[[File:ArtOfComputerProgramming.svg|miniatura|Copertina del primo volume della serie]]
 
'''''The Art of Computer Programming''''' ('''TAOCP''') è una serie di libri in più volumi sulla [[Programmazione (informatica)|programmazione]] scritta dadi [[Donald Knuthalgoritmi]]. Sonoe statila pubblicatirelativa interamenteanalisi soloformale idegli primi tre volumistessi, ilscritta primoda tomo[[Donald delKnuth]] quartodell'[[Università èdi stato pubblicato nel 2011 :Stanford]].
== Piano dell'opera ==
Il piano dell'opera, ancora incompleta, è mutato nel corso del tempo. Sono stati pubblicati interamente solo i primi tre volumi, mentre il primo tomo del quarto volume è stato pubblicato nel 2011:
* Volume 1, ''Fundamental Algorithms'' (terza edizione 1997) ;
* Volume 2, ''Seminumerical Algorithms'' (terza edizione 1997) ;
* Volume 3, ''Sorting and Searching'' (seconda edizione, 1998) ;
* Volume 4A, ''Enumeration and Backtracking'' (2011).;
* Volume 4, Fascicolo 6 ''Satisfiability'' (Dicembre 2015);
* Volume 4, Fascicolo 5 ''Mathematical Preliminaries Redux, Backtracking, Dancing Links'' (Giugno 2017).
 
Gli altri due tomi previsti per il quarto volume (''Combinatorial Algorithms'') sono in corso di redazione. Alcune parti sonoerano disponibili sulla pagina ufficiale.<ref>{{Cita [web|url=http://www-cs-faculty.stanford.edu/~knuth/taocp.html|titolo=The Art of Computer Programming (TAOCP])|autore=Donald Knut|urlarchivio=https://web.archive.org/web/20080904163709/http://www-cs-faculty.stanford.edu/~knuth/taocp.html}}</ref> In totale sono previsti sette volumi.
 
== Storia ==
Il professor [[Donald Knuth,|Donald consideratoE. unKnuth]], espertomatematico nellae scritturainformatico di lungo corso, tra i massimi esperti nello studio della [[compilatorecomplessità computazionale|compilatoricomplessità computazionale degli algoritmi]], cominciòricevette al'incarico, nel 1962 circa, di scrivere un libro sullasui scrittura[[compilatore|compilatori]]. deiNel compilatoricorso neldegli 1962anni, tuttavia, il progetto iniziale mutò obiettivo e si trasformò nell'opera in oggetto. RealizzòKnuth, infatti, si rese conto ben presto che avrebbe dovuto aumentare considerevolmente il numero di argomenti inclusi nel libro. Nel 1965 finì di scrivere il primo manoscritto. Si componeva di un volume unico composto di dodici capitoli e 3000 pagine manoscritte o 2000 pagine dattiloscritte. Il piano dell'opera fu così modificato in modo da includere sette volumi di uno o due capitoli ciascuno. Il libro quarto è stato ulteriormente suddiviso innei volumi 4A, e 4B, ed è stata pianificata un'ulteriore suddivisione nei volumi 4C, 4D, 4E e forse4F.<ref>{{Cita 4Dweb|url=https://www.quantamagazine.org/computer-scientist-donald-knuth-cant-stop-telling-stories-20200416/|autore=Susan D'Agostino|titolo=The Computer Scientist Who Can’t Stop Telling Stories|sito=Quanta Magazine|data=16 aprile 2020|accesso=1º novembre 2023|lingua=en}}</ref>
 
==Linguaggio assembly nel libro==
Tutti gli esempi contenuti nei libri utilizzano un [[linguaggio assembly]] denominato [[MIX (informatica)|MIX]], che viene eseguito su un ipotetico computer MIX. In seguito il computer MIX è stato sostituito dal computer [[MMIX]], che è una versione con architettura [[RISC]]. Esistono alcuni software (tra cui [[GNU MDK]]<ref>{{Cita web|url=https://www.gnu.org/software/mdk/mdk.html|titolo=GNU MDK - GNU Project - Free Software Foundation|sito=gnu.org|accesso=1º novembre 2023|lingua=en}}</ref>) che forniscono un'[[Emulatore|emulazione]] dell'architettura MIX. Knuth considera l'utilizzo del linguaggio assembly necessario per valutare la velocità e l'utilizzo della memoria degli algoritmi.
 
== Note ==
<references/>
 
== Voci correlate ==
* [[Introduzione agli algoritmi]]
* [[MMIX]] (architettura logica utilizzata in TAOCP)
 
== Collegamenti esterni ==
* {{Collegamenti esterni}}
 
{{portale|editoria|informatica}}
{{Controllo di autorità}}
{{portale|informatica}}
 
[[Categoria:Programmazione|Art of Computer Programming, The]]
[[Categoria:Libri sull'informatica]]