Science of computing suite (SOCS): resources for a breadth-first introduction
Proceedings of the 35th SIGCSE technical symposium on Computer science education
Use and assessment of a rigorous approach to CS1
Proceedings of the 36th SIGCSE technical symposium on Computer science education
Do we need a separate assembly language programming course?
Journal of Computing Sciences in Colleges
YESS: a Y86 pipelined processor simulator
ACM-SE 45 Proceedings of the 45th annual southeast regional conference
Digital LC-2: from bits & gates to a little computer
WCAE '02 Proceedings of the 2002 workshop on Computer architecture education: Held in conjunction with the 29th International Symposium on Computer Architecture
Teaching and teaching computer architecture: two very different topics: (some opinions about each)
WCAE '03 Proceedings of the 2003 workshop on Computer architecture education: Held in conjunction with the 30th International Symposium on Computer Architecture
An integrated approach to teaching computer systems architecture
WCAE '07 Proceedings of the 2007 workshop on Computer architecture education
Context as Support for Learning Computer Organization
Journal on Educational Resources in Computing (JERIC)
LC3uArch: a graphical simulator of the LC-3 microarchitecture
Proceedings of the 40th ACM technical symposium on Computer science education
Larc: a little architecture for the classroom
Journal of Computing Sciences in Colleges
JLS/JLSCircuitTester: a comprehensive logic design and simulation tool
Koli '08 Proceedings of the 8th International Conference on Computing Education Research
Responding to java-centric CS curricula: integration of c into a course in computer organization
FIE'09 Proceedings of the 39th IEEE international conference on Frontiers in education conference
The pep/8 memory tracer: visualizing activation records on the run-time stack
Proceedings of the 41st ACM technical symposium on Computer science education
Preparing students for future architectures with an exploration of multi- and many-core performance
Proceedings of the 16th annual joint conference on Innovation and technology in computer science education
Functional-Level Hardware Simulation with Pull-Model Data Flow
PADS '10 Proceedings of the 2010 IEEE Workshop on Principles of Advanced and Distributed Simulation
Frances: A Tool for Understanding Computer Architecture and Assembly Language
ACM Transactions on Computing Education (TOCE)
Building gates with transistors: a hands-on lab for computer organization
Journal of Computing Sciences in Colleges
Journal of Computing Sciences in Colleges
Journal of Computing Sciences in Colleges
Hands-on introduction to computer science at the freshman level
Proceedings of the 45th ACM technical symposium on Computer science education
Hi-index | 0.00 |
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. Table of contents 1 Welcome Aboard 2 Bits, Data Types, and Operations 3 Digital Logic Structures 4 The Von Neumann Model 5 The LC-3 6 Programming 7 Assembly Language 8 I/O 9 TRAP Routines and Subroutines 10 And, Finally...The Stack 11 Introduction to Programming in C 12 Variables and Operators 13 Control Structures 14 Functions 15 Testing and Debugging 16 Pointers and Arrays 17 Recursion 18 I/O in C 19 Data Structures Appendix A The LC-3 ISA Appendix B From LC-3 to x86 Appendix C The Microarchitecture of the LC-3 Appendix D The C Programming Language Appendix E Useful Tables Appendix F Selected Solutions (available at website)