The third edition of Introduction to Computing From bits & gates to C/C++ and beyond is designed to give students a strong foundation of computing early on in their coursework. The book is in two (a) the underlying structure of a computer, and (b) programming in two high-level languages and programming methodology. Taking a bottom-up approach from foundational concepts, such as how a computer operates, to more high-level programming languages enables students to understand each concept while working through the text. This bottom-up approach can lead students to more conceptual understanding and application with less memorizing.
I’ve read about 1/3 of the chapters and did about 20-30 problems.
This book is an excellent bottom-up introduction to computation in modern computers. A suitable stepping stone for more advanced material on OS, computer architecture, and in-depth study of programming languages such as C and C++ .