Introduction to Computing Systems: From bits & gates to C & beyond, now in its second edition, is designed to give students a better understanding of computing early in their college careers in order to give them a stronger foundation for later courses. The book is in two parts: (a) the underlying structure of a computer, and (b) programming in a high level language and programming methodology.
To understand the computer, the authors introduce the LC-3 and provide the LC-3 Simulator to give students hands-on access for testing what they learn. To develop their understanding of programming and programming methodology, they use the C programming language. The book takes a "motivated" bottom-up approach, where the students first get exposed to the big picture and then start at the bottom and build their knowledge bottom-up. Within each smaller unit, the same motivated bottom-up approach is followed. Every step of the way, students learn new things, building on what they already know. The authors feel that this approach encourages deeper understanding and downplays the need for memorizing. Students develop a greater breadth of understanding, since they see how the various parts of the computer fit together.
"synopsis" may belong to another edition of this title.
The focus of the book is on the fundamentals. The approach of this text better prepares students for later courses in both hardware and software, applications and operating systems, data structures and algorithms, data bases and networks, where an understanding of the basic underpinnings is essential to making the required tradeoffs in all of the above areas.
The book is broken down into two major segments, (a) The underlying structure of a computer, using the LC-3, and (b) programming in a high level language, in this case C.
Because students are taught debugging from the first program they write (in machine language) and are required to use the LC-3 Simulator's debugging tools from the beginning, they are better able to master programming and will be able to complete projects with a lot less help from the TA.
An expanded website for the text includes updated versions of the Solutions Manual, the LC-2 Simulator [to the LC-3 Simulator], Source Code of the examples, a link to the authors' website and JPEGs of all of the figures. It also contains a message board, lab manuals for both versions of the LC-3, as well as two sets of PowerPoint presentations created by instructors using the book in their course.
The second edition reflects the feedback of users of the book in the classroom. Over 50 universities have already adopted the book, and both instructors and students have been generous with their praise and constructive with their criticisms. The authors have taken the feedback seriously and, along with their own additional experience from teaching the course three more times since the first edition came out, have made a number of "improvements" in the new edition.
Chapter 3 on logic structures has been augmented with a section on sequential machines. The authors discovered, while teaching the material recently at Texas, that the student needed to understand finite state control before getting into Chapter 4, the VonNeumann Model. The result is Section 3.7, Sequential Circuits.
The new section 3.7 carefully explains the notion of state, and supplies examples. The authors feel that the notion of -state- is one of the most important fundamental concepts that an engineering or a computer science student must understand.
Chapters 8 and 10 include expanded coverage of the material in Section 10.5, Interrupt-driven I/O. The first edition's coverage of interrupt-driven I/O was very limited, but the authors realized, both as a result of teaching it themselves, and as a result of input from other instructors, that the topic is too important to not do solidly. The result is an additional section in Chapter 8 where material on the nature of interrupts, priority levels, and some basic I/O processing is covered, and an additional section in Chapter 10 where the implementation of interrupts using a stack is covered. The authors opted to cover the two parts of interrupt handling separately because it better matches the students' readiness for the material.
Chapters 11-19 and Appendix D. Feedback from several instructors suggest that the authors covered too much of the C language and not enough on programming methodology in the second half of the book. Keeping in line with the authors' initial manuscript, the 2nd edition goes back to more methodology and less complete C coverage.
Appendix D expanded. Given the new increased emphasis on methodology in Chapters 11-19, some of the C material covered in the first edition is relegated to Appendix D in the new edition.
Feedback has suggested that Chapter 5 flows a little too rapidly, and the discussions are a little too terse. The result in the 2nd edition is an overhauled Chapter 5, with extra drawings and extra verbiage to better illustrate what is going on.
A section discussing the hardware/software interface has been added to Chapter 1. The interplay between the software (what the programmer writes) and the hardware (what the computer executes) is essential to the student's understanding of the fundamentals of computer processing. This has been added to Chapter 1 to raise the reader's awareness at the outset of this topic, which is covered throughout the book.
"About this title" may belong to another edition of this title.
Book Description McGraw Hill Higher Education, 2003. Book Condition: New. Brand New, Unread Copy in Perfect Condition. A+ Customer Service!. Bookseller Inventory # ABE_book_new_0071245014
Book Description McGraw Hill Higher Education, 2003. Paperback. Book Condition: New. book. Bookseller Inventory # 0071245014