AccueilGroupesDiscussionsPlusTendances
Site de recherche
Ce site utilise des cookies pour fournir nos services, optimiser les performances, pour les analyses, et (si vous n'êtes pas connecté) pour les publicités. En utilisant Librarything, vous reconnaissez avoir lu et compris nos conditions générales d'utilisation et de services. Votre utilisation du site et de ses services vaut acceptation de ces conditions et termes.

Résultats trouvés sur Google Books

Cliquer sur une vignette pour aller sur Google Books.

Chargement...

The Elements of Computing Systems: Building a Modern Computer from First Principles

par Noam Nisan

MembresCritiquesPopularitéÉvaluation moyenneDiscussions
345575,926 (4.65)Aucun
"Unlike other texts that cover only one aspect of the field, The Elements of Computing Systems gives students an integrated and rigorous picture of applied computer science, as it comes to play in the construction of a simple yet powerful computer systems.". "Indeed, the best way to understand how computers work is to build one from scratch, and this textbook leads students through twelve chapters and projects that gradually build a basic hardware platform and a modern software hierarchy from the ground up. In the process, the students gain hands-on knowledge of hardware architecture, operating systems, programming languages, compilers, data structures, algorithms, and software engineering. Using this constructive approach, the book exposes a significant body of computer science knowledge and demonstrates how theoretical and applied techniques taught in other courses fit into the overall picture.". "Designed to support one- or two-semester courses, the book is based on an abstraction-implementation paradigm; each chapter presents a key hardware or software abstraction, a proposed implementation that makes it concrete, and an actual project."--BOOK JACKET.… (plus d'informations)
Chargement...

Inscrivez-vous à LibraryThing pour découvrir si vous aimerez ce livre

Actuellement, il n'y a pas de discussions au sujet de ce livre.

5 sur 5
I worked carefully through the hardware half of the book. I finally understand the elements of digital logic, the design of an ALU, instruction decoding, the design of a CPU. I skimmed the second half, on software, because I'm already familiar with those topics. It seemed equally clear but I'm not the target audience for the software topics so I cannot say if they succeeded as brilliantly as they did with the hardware half. ( )
  nillacat | Sep 21, 2019 |
The five stars are really for the textbook plus the course materials, including video lectures and projects. This filled a ton of gaps in my understanding. Since I was a math major, I'd never had architecture, compilers, programming language design, systems, etc. Just the basics of application programming and computer graphics. Bought this a few years ago after reading about it on HackerNews. Read the first couple of chapters right away, set it down, forgot about it. Rediscovered it when I moved recently. Put it on my desk for months, then while searching Coursera for something completely unrelated, stumbled across the authors' class, which has split the material into two sections, roughly into a hardware stack and a software stack. For having no knowledge of hardware, I found the first section surprisingly doable with a reasonable time commitment. I spent way more time and effort on the software stack, including a ridiculous amount of time hunting down a jump-less-than which should have been a jump-not-equal in my assembler. But, I've now written an assembler, not to mention a compiler.

Which error I made because I didn't read closely enough. The book rewards close reading. In that sense, it takes after K&R C, being about the same thickness and directness. ( )
  encephalical | Mar 20, 2018 |
Useful curriculum, implemented through CPU/RAM.
It would be better with actual explanation instead of purely instructional content.
Will look elsewhere for machine language and operating systems. ( )
  THC-NYC | Nov 25, 2016 |
The first part of the book describes the logic which is necessary to construct a simplistic computer from NAND gates, data-flip-flops, a clock, and IO-interfaces. The second part describes how to write (in a given higher-level language, like C++) a simplistic compiler which generates machine code for the computer from part one.

The book is well-written and very understandable. The exercises, which are are nicely integrated into the text, are insightful.

The authors do not get tired to say that the book teaches to build a computer from NAND gates, but I find this somewhat boastful because (a) as mentioned above also data-flip-flops, ... are taken for granted and (b) you are only simulating the logic in an emulator which means you are not building anything. ( )
  Tobias.Bruell | Oct 24, 2013 |
I have used this book in my computer organization class and I must admit that it brought a very fresh perspective to second year computer science students. For the first time they were able to see the process of designing a computer from the ground up.

The book is very suitable for self-study or classroom use: it has an excellent website, all the required HDL simulator, assembler, CPU and VM emulator and compiler are freely available and easy to run on any platform (they are all coded in Java).

Of course there are simplifications such as the lack of interrupts and multhithreading but this book prepares the students very well for 3rd and 4th year courses. Every chapter has very well and clearly defined goals and projects that are %100 self-contained. That means even if you skip a chapter you can work out the next project without any loss in implementation.

If you or your students want to have a grasp what it means to build a computer starting from logic gates, hardware definition languages, up to the ALU, RAM, CPU, assembler, virtual machine and compilation of an object oriented high level language, then this book is the best choice. It is one of the most hands-on book I've ever seen in this subject matter and at that intermediate level. ( )
  EmreSevinc | May 20, 2009 |
5 sur 5
aucune critique | ajouter une critique
Vous devez vous identifier pour modifier le Partage des connaissances.
Pour plus d'aide, voir la page Aide sur le Partage des connaissances [en anglais].
Titre canonique
Titre original
Titres alternatifs
Date de première publication
Personnes ou personnages
Lieux importants
Évènements importants
Films connexes
Épigraphe
Dédicace
Premiers mots
Citations
Derniers mots
Notice de désambigüisation
Directeur de publication
Courtes éloges de critiques
Langue d'origine
DDC/MDS canonique
LCC canonique

Références à cette œuvre sur des ressources externes.

Wikipédia en anglais

Aucun

"Unlike other texts that cover only one aspect of the field, The Elements of Computing Systems gives students an integrated and rigorous picture of applied computer science, as it comes to play in the construction of a simple yet powerful computer systems.". "Indeed, the best way to understand how computers work is to build one from scratch, and this textbook leads students through twelve chapters and projects that gradually build a basic hardware platform and a modern software hierarchy from the ground up. In the process, the students gain hands-on knowledge of hardware architecture, operating systems, programming languages, compilers, data structures, algorithms, and software engineering. Using this constructive approach, the book exposes a significant body of computer science knowledge and demonstrates how theoretical and applied techniques taught in other courses fit into the overall picture.". "Designed to support one- or two-semester courses, the book is based on an abstraction-implementation paradigm; each chapter presents a key hardware or software abstraction, a proposed implementation that makes it concrete, and an actual project."--BOOK JACKET.

Aucune description trouvée dans une bibliothèque

Description du livre
Résumé sous forme de haïku

Discussion en cours

Aucun

Couvertures populaires

Vos raccourcis

Évaluation

Moyenne: (4.65)
0.5
1
1.5
2
2.5
3 1
3.5 1
4 4
4.5 1
5 16

Est-ce vous ?

Devenez un(e) auteur LibraryThing.

 

À propos | Contact | LibraryThing.com | Respect de la vie privée et règles d'utilisation | Aide/FAQ | Blog | Boutique | APIs | TinyCat | Bibliothèques historiques | Critiques en avant-première | Partage des connaissances | 206,960,378 livres! | Barre supérieure: Toujours visible