Computer Systems Architecture, by Rob Williams, presents an incremental look at networked computer systems starting with digital logic and hardware, moving through the layers of software and leading to an introduction of networking and operating systems. Its practical, modern approach draws upon areas of student interest and experience (the Internet, Pentium processors, GUIs, mobile communications) to stimulate the reader's enthusiasm for the subject. Throughout, the author emphasizes how software performance can be dependent on hardware features. Practical exercises demonstrate this aspect of hardware/software interaction. Computer Systems Architecture is meant as a 1st year introduction to the subject for students in Computer Science and related courses. Recognizes that most computer systems work in a networked environment and includes an introduction to networking. Takes a traditional bottom-up presentation using applied technology and ideas. Treats digital logic in sufficient detail to remove the mystery of how computers work. Adopts a practical approach, not requiring advanced mathematics. Uses Microsoft's Visual Developer Studio debugger to provide a brief experience with assembly language programming. Programming examples, exercises and worksheets drawn from common experience reinforce the text's practical approach.