Introduction to Computing Systems
From Bits Et Gates to C/C++ Et Beyond
Description:... "Introduction to Computing Systems: From Bits & Gates to C/C++ & Beyond is built on the premise that students learn best by building on what they already know, rather than memorizing and accepting what they do not know. The result: a bottom-up approach to understanding computing, giving students a strong foundation in important aspects of computing early in their coursework. The book is structured in two parts: (a) understanding how a computer works (Chapters 1-10), and (b) programming in a high-level language (Chapters 11-20). Starting with the switch-level behavior of a MOS transistor (not unlike the switch-level behavior of a light switch in one's kitchen), the student constructs logic gates, then MUXes, Decoders, ALUS, latches, flipflops, culminating in memory and finite state control. Each step of the way, the level of abstraction is raised, with the student understanding how he/ she put the current step together. From there, it is a simple matter to define the LC-3, a computer that the student programs in both machine language and assembly language, and then tests and debugs his/ her programs with little or no help from the TA! Input and output (I/O) are done under both program control and via interrupts, through keyboard and monitor, requiring the student to communicate through device data and status registers. Finally, the student invokes system calls, which are implemented in the LC-3 instruction set architecture. The second half of the book focuses on high-level language programming in C and C++ and programming methodology. The essential core of C and C++ is taught, including pointers, arrays, recursion, data structures, objects, and object inheritance. All constructs are explained using the context of the LC-3, developed in the first half of the book. By reducing high-level constructs into low-level implementation in the LC-3, students are able to grasp advanced programing concepts such as function calls, dynamic memory allocation, and objects much more quickly and proficiently."--Page 4 of cover.
Show description