Halls |
You are here > library > computer book list | |
Spook's Computer Book ListHardwarePC Hardware in a NutshellRobert and Barbara Thomson
Intermediate. Every wondered how a chipset relates to a motherboard, how to flash your BIOS (and can you be arrested for doing so?), or how to pick a hard disk drive or flat-screen monitor? These are the types of questions answered in PC Hardware in a Nutshell. Intended for PC hobbiests, gamers, enthusiasts and general DIYers, this book assumes some basic familiarity with a PC although not necessarily any particular hardware expertise, and walks the reader through understanding, choosing and installing or upgrading PC hardware and peripherals. Separate chapters are devoted to each class of hardware component: processors, motherboards, memory, hard drives, optical storage devices and media, graphics and sound cards/peripherals, keyboard, mice, USB devices, and so forth. Each chapter delves into basic principles, standards, and acronyms; commercial and technical factors to consider in purchasing or upgrading; and step-by-step installing, configuring, and troubleshooting under both Windows (9X/NT/2K/XP) and Linux. The authors are refreshingly unreluctant to express personal opinions and recommendations by specific make and model. On the down side, at current rates of evolution the book will need to be revised again within another 12-18 months, but the authors do maintain a no-frills website with updates and the book itself serves as a good general introduction and reference to current (as of 2003-04) PC hardware technology. August 2004 Programming - GeneralCode: The Hidden Language of Computer Hardware and SoftwareCharles Petzold
Beginning. Code is a beginner-level introduction to the fundamental principles underlying modern programmable computers. Early chapters start from basic code and numbering systems and electrical principles, and chapter by chapter introduce the conceptual components of a computer and show how they can be built from ordinary electrical relays. For instance, chapter 6 introduces relays and how they work. Chapters 10-12 illustrate how relays can be combined to make primitive logic gates, and then into a basic binary adding machine capable of adding positive integers. Subsequent chapters introduce negative number representation and subtraction, feedback loops, latches, RAM arrays, selectors and decoders, system clocks, and program counters. Chapters 18 and up leave relays behind, introducing transistors and ICs and, at an increasingly general level, the concepts of processors and architecture, instruction sets, assembly language, I/O, operating systems, floating-point representation, compilers, high-level languages, peripherals, and GUIs. Chapters 10-17 are particularly satisfying, leading the reader through a series of "aha ... so that's how it works" moments. Code is intended for the non-engineer and assumes no scientific education nor any programming or computer knowledge beyond a basic junior high school education. Early chapters present all material needed to understand later chapters. Petzold's decision to use simple telegraph relays to illustrate concepts introduced during the first half of the book, postponing discussion of more complex devices such as transistors and semiconductors deserves special commendation for its effectiveness. Although Code emphasizes the traditional desktop/workstation architecture in preference to mobile or embedded systems, the basic principles are extensible and, in an unexpected but welcome decision from Microsoft Press, the book refrains from plugging any particular platform or operating system. August 2004 Programming - AssemblyThe Art of Assembly LanguageRandall Hyde
Intermediate. For those who need a background, assembly code is characterizable as a human-legible representation of machine code in which each line of code maps more or less one-on-one to a binary CPU instruction, unlike high-level languages (HLLs) such as C/C++ or Pascal in which a single line of code may compile into a dozen machine instructions. An assembly programmer works just above the hardware, taking instruction-by-instruction control of the CPU without the help or nannying of a compiler. Mastery of assembly programming requires extensive knowledge about machine architecture, data representation, memory organization and access, system call syntax, and on and on, before the programmer can summon up even a trivial dialog box. Enter Prof. Randall Hyde's High-Level Assembler, or HLA. HLA is a free, open-source project developed by Prof. Hyde for the express purpose of teaching assembly language to students from a C/C++ or Pascal background. To oversimplify, HLA is a powerful preprocessor that translates source code written in HLA's unique syntax into MASM x86 assembly code, which is then assembled and linked into an executable file using Steve Hutchesson's MASM32 assembler. HLA's core consists of a curious combination of machine instructions and optional high-level control structures such as if/else branches and for/while loops and even classes, inheritance, and virtual functions. To handle the low-level drudgery, HLA also offers powerful compile-time functions and a library of prewritten string, character set, i/o, file, math, and other functions that automate a lot of grunt work, plus an extensive set of printed and online documentation starting with this book. HLA basically allows students to get up and running quickly, writing early programs using familiar high-level control structures and libraries while learning low-level assembly concepts, progressively replacing the high-level structures with low-level assembly as new concepts are mastered. If HLA is a tool for teaching assembly code, then The Art of Assembly Language is its user manual. The book is long but clearly written, and a reader who finishes it acquires a solid foundation in data representation, memory organization and access, low-level program structure, and the x86 CPU architecture and instruction set, including floating point and MMX instructions, and of course HLA syntax and libraries. This knowledge comes at no small cost in time and effort, though: this tome weighs in at over 900 pages, much of which is devoted to teaching HLA itself. Assembly purists may scoff, but the The Art of Assembly Language does impart the fundamental principles that underlie low-level x86 programming in any environment, and will enable the reader to understand and - with modest further effort - even to write code under other assemblers. Readers seeking a taste of Prof. Hyde's writing style should visit his website at http://webster.cs.ucr.edu, where they can download the latest version of HLA, browse numerous links to other assembly resources, read an early draft of Prof. Hyde's current project Windows Programming in Assembly, and even peruse an online copy of The Art of Assembly Language itself (but do your eyes a favor and buy the treeware edition). August 2004 NetworkingSAMS Teach Yourself TCP/IP in 24 HoursJoe Casad
Beginning. Routers or switches? Do they serve MAC addresses under the Golden Arches? What does a subnet mask hide? Will they evict you if you don't have a DCHP lease? If these questions ring a bell, give this book a try. TCP/IP in 24 Hours is a layman's introduction to computer networking from the programmer's perspective, suited for the the non-techie with limited spare time who needs to understand how to configure a home network or maybe just how the internet works. The contents are divided, logically enough, into 24 easy chapters with ample diagrams and illustrations to break up the text. Early chapters introduce the TCP/IP protocol suite and computer communication basics, followed by general coverage of networking hardware, addressing and name resolution, routing, and network utilities. Later chapters introduce file sharing, network services, the world wide web and email protocols, security, and new technologies such as wireless networking and IPv6. Each topic is covered briefly but in enough detail to explain and place the technologies in context. The technologies covered are common to all major operating systems. While this book won't turn you into a competent network administrator, it will orientate you, and by the last chapter you should be able to bluff your way at cocktail parties and maybe even intelligently configure a wireless router. August 2004 |
||