Paperback: 266 pages
Publisher: Pearson; 1 edition (November 23, 2001)
Language: English
ISBN-10: 0130615897
ISBN-13: 978-0130615893
Product Dimensions: 7 x 0.8 x 9 inches
Shipping Weight: 1 pounds
Average Customer Review: 3.0 out of 5 stars See all reviews (12 customer reviews)
Best Sellers Rank: #1,952,764 in Books (See Top 100 in Books) #118 in Books > Computers & Technology > Programming > Languages & Tools > Assembly Language Programming #215 in Books > Computers & Technology > Hardware & DIY > Microprocessors & System Design > Embedded Systems #622 in Books > Computers & Technology > Programming > Languages & Tools > C & C++ > C
While not for the first-time programmer, this book is great for the first-time embedded programmer. To get the most from this book you should already know the "C" programming language. Then this book will take you "down to the metal", covering details and techniques for embedded programming in the "C" language. Much of the information is specific to the x86/PC architecture, but this is a perfect platform for starting out, since you can buy an old 486 or even Pentium for [not much money]. An overview of embedded software programming models concludes with the multi-threaded approach (which is almost universal for larger or more complex systems). This is all great, but the real treasure is the CD ROM, which is keyed to a set of projects in the book. The whole tool chain (compiler, assembler, linker, etc.) is included, along with an embedded PC library which boots the machine, loads your program, starts it in protected mode using the flat memory module (4 gigabyte address space). The library includes an interrupt registration mechanism and a set of display utilities. Also included is UCOS-II with the "board support package" for this execution environment. You can insert the CD ROM and have your embedded program "Hello world!" in less than 30 minutes. If you work through the project set, then you are on your way!!
I love this book because:1- Very effective description on how to use C to interface to the Hardware environment that an embedded programmer has to deal with everday. Most of the book on C somehow just gloss over this area.2- A fundamental introduction to real time OS and its potential problems in an embedded systems. The readers might want to check out the book "An Embedded Software Primer" by David Simon for more detailed treatment on this subject.3- Its 11 programming excercices using the PC to practice what you learn in the book. This is very useful in building your confidence in the subject matters. You don't have to buy any kits to do the excercices.Here is the thing that might give you trouble: Intel Assembly language.This is a small book, 266 pages. It seems the author chose to trim down the section on Intel architecture & its assembly language to keep the book small. I went to the book website (this is another plus) and it looks like the author is using Intel manuals as the companion for this book to fill in the details on the Intel architecture.If you are a student, having to digest all of this materials (plus other classes) in one quarter, probably, you will have a hard time. However, if you just want to:1- know how to do embedded programming using C2- know how real time OS works and how to use it3- do some hands on excercises4- can afford to gloss over the Intel architecture and not worrying about the grade.then this book is for you
I have been teaching X86 assembly language for 6 years as an undergraduate course in Computer Engineering in San Jose State University. The students have been always concerned about the value of this course after graduation. Many have the false perception that learning assembly is no longer needed since most of our programming is done nowadays with high level languages. Last semester I introduced assembly language as a tool to program embedded systems and I used the first few chapters of this book to demonstrate to students the fact that 98% of processors sold are embedded. As a result, most students selected their class project based on one of the embedded examples shown in this book. For students who needed more X86 details, I referred them to a complementary text book. But, for those who needed to understand the fundamental link between c/C++ and assembly, this book was very helpful. I would recommend this book for Juniors or Seniors who would like to have a better understanding of the high level and assembly language interface. To maximize the effectiveness of this book, I recommend the use of more complex real-life design examples, the use of commercial Assemblers, and more emphasis needs to be given for embedding assembly into high level language and vice versa.
I realize this is a forum for reviewing books, but I can't help sharing this with all who may be interested in purchasing this particular book. I have read portions of the book and it seems to be heavily dependent upon the CD-ROM written about in the book, but not included! Make no assumption here as the author states IT'S INCLUDED. There's a C library supposedly contained on the CD-ROM in which all the examples in the book rely upon. This library was written by the author and I cannot seem to locate it online. The book demonstrates what appears to be how to take a PC and strip it down for use in embedded control applications. One could also purchase an SBC with an x86 processor and do the same.I have ordered AND received THREE copies of this book, all of which are currently in my posession awaiting delivery to the post office for return. ALL of which DO NOT CONTAIN AFOREMENTIONED CD-ROM. Without the CD-ROM I find the book useless. Especially given the fact I paid over $100 per copy! sent me a canned form letter via e-mail stating the book would be temporarily unavailable while they investigated this issue. I never saw the book unavailable for purchase. And, based on the third purchase a couple weeks later no one investigated the issue either. Therefore, if you're looking for some aggrevation of receiving an incomplete product and the hassle of returning it then by all means BUY THIS BOOK.
Fundamentals of Embedded Software: Where C and Assembly Meet DSP Software Development Techniques for Embedded and Real-Time Systems (Embedded Technology) Design Patterns for Embedded Systems in C: An Embedded Software Engineering Toolkit A Communication from Sir Charles Brisbane, K.C.B. Governor of Saint Vincent: To the House of Assembly of That Colony, Enclosing Lord Bathurst's ... Assembly; and a Letter Depicting the Alarm Some Assembly Required: Assembly Language Programming with the AVR Microcontroller The Gun Digest Book of Firearms Assembly/Disassembly Part I - Automatic Pistols: Pt. 1 (Gun Digest Book of Firearms Assembly/Disassembly: Part 1 Automatic Pistols) The Gun Digest Book of Tactical Weapons Assembly/Disassembly (Gun Digest Book of Firearms Assembly/Disassembly) The Gun Digest Book of Revolvers Assembly/Disassembly (Gun Digest Book of Firearms Assembly/Disassembly) Gun Digest Book of Revolvers Assembly/Disassembly (Gun Digest Book of Firearms Assembly/Disassembly) PC Assembly Language: learn how computer work easy ways to learn assembly language The Gun Digest Book of Firearms Assembly/Disassembly Part V - Shotguns: Shotguns Pt.5 (Gun Digest Book of Firearms Assembly/Disassembly: Part 5 Shotguns) AVR Microcontroller and Embedded Systems: Using Assembly and C (Pearson Custom Electronics Technology) PIC Microcontroller and Embedded Systems: Using Assembly and C for PIC18 Embedded Systems with ARM Cortex-M Microcontrollers in Assembly Language and C Embedded Systems with ARM Cortex-M3 Microcontrollers in Assembly Language and C Embedded Systems Architecture: A Comprehensive Guide for Engineers and Programmers (Embedded Technology) Linux for Embedded and Real-time Applications, Third Edition (Embedded Technology) Linux for Embedded and Real-time Applications (Embedded Technology) Linux for Embedded and Real-time Applications, Second Edition (Embedded Technology) Applied Control Theory for Embedded Systems (Embedded Technology)