Buy new:
-82% $17.59
$41.40 delivery October 15 - 30
Ships from: five star ten number
Sold by: five star ten number
$17.59 with 82 percent savings
List Price: $97.00
The List Price is the suggested retail price of a new product as provided by a manufacturer, supplier, or seller. Except for books, Amazon will display a List Price if the product was purchased by customers on Amazon or offered by other retailers at or above the List Price in at least the past 90 days. List prices may not necessarily reflect the product's prevailing market price.
Learn more
$41.40 delivery October 15 - 30. Details
Only 1 left in stock - order soon.
$$17.59 () Includes selected options. Includes initial monthly payment and selected options. Details
Price
Subtotal
$$17.59
Subtotal
Initial payment breakdown
Shipping cost, delivery date, and order total (including tax) shown at checkout.
Ships from
five star ten number
Ships from
five star ten number
Returns
30-day refund/replacement
30-day refund/replacement
This item can be returned in its original condition for a full refund or replacement within 30 days of receipt. You may receive a partial or no refund on used, damaged or materially different returns.
Returns
30-day refund/replacement
This item can be returned in its original condition for a full refund or replacement within 30 days of receipt. You may receive a partial or no refund on used, damaged or materially different returns.
Payment
Secure transaction
Your transaction is secure
We work hard to protect your security and privacy. Our payment security system encrypts your information during transmission. We don’t share your credit card details with third-party sellers, and we don’t sell your information to others. Learn more
Payment
Secure transaction
We work hard to protect your security and privacy. Our payment security system encrypts your information during transmission. We don’t share your credit card details with third-party sellers, and we don’t sell your information to others. Learn more
$10.99
FREE International Returns
This item shows wear including some highlighting or writing. This item shows wear including some highlighting or writing. See less
Delivery Wednesday, October 16
Or fastest delivery Friday, October 4. Order within 5 hrs 58 mins
Only 1 left in stock - order soon.
$$17.59 () Includes selected options. Includes initial monthly payment and selected options. Details
Price
Subtotal
$$17.59
Subtotal
Initial payment breakdown
Shipping cost, delivery date, and order total (including tax) shown at checkout.
Access codes and supplements are not guaranteed with used items.
Added to

Sorry, there was a problem.

There was an error retrieving your Wish Lists. Please try again.

Sorry, there was a problem.

List unavailable.
Kindle app logo image

Download the free Kindle app and start reading Kindle books instantly on your smartphone, tablet, or computer - no Kindle device required.

Read instantly on your browser with Kindle for Web.

Using your mobile phone camera - scan the code below and download the Kindle app.

QR code to download the Kindle App

Follow the author

Something went wrong. Please try your request again later.

Assembly Language for Intel-Based Computers (4th Edition) Subsequent Edition

4.3 4.3 out of 5 stars 36 ratings

{"desktop_buybox_group_1":[{"displayPrice":"$17.59","priceAmount":17.59,"currencySymbol":"$","integerValue":"17","decimalSeparator":".","fractionalValue":"59","symbolPosition":"left","hasSpace":false,"showFractionalPartIfEmpty":true,"offerListingId":"ZfKbkb6T9v%2BmN4cF%2BM%2FP1Qowsoa%2BihplBvF5kM%2Bka9u4Wut5EqTvQziPF69AjbS6HisOsHOlAVq0Xp9P0re%2FQYNQZseQ5knxaBMGzk0g9AhGDMzdPCk15h73ufEx0PndgohT31js%2BhHX10QKFLO%2F64GlB2wJ46WFZYy4SGSpD1gPEdbYQkhLMNP2pjqXBVjV","locale":"en-US","buyingOptionType":"NEW","aapiBuyingOptionIndex":0}, {"displayPrice":"$10.99","priceAmount":10.99,"currencySymbol":"$","integerValue":"10","decimalSeparator":".","fractionalValue":"99","symbolPosition":"left","hasSpace":false,"showFractionalPartIfEmpty":true,"offerListingId":"ZfKbkb6T9v%2BmN4cF%2BM%2FP1Qowsoa%2Bihplz57WueXNHb3pPfpVFnId82KtNCFsBGiAdMrfMdxOjButFEjiIMsBsh0b6SxLlO27gTHQI38xtZjx9jHYRwQjUa4MEwWYcTT3aw9icjRcOGvgW9bTnlR7Ozkk429qy1YHED8iAlncpaRo6ccQ%2B73UKZWPlCotHUy4","locale":"en-US","buyingOptionType":"USED","aapiBuyingOptionIndex":1}]}

Purchase options and add-ons

For undergraduate courses in assembly language programming and introductory courses in computer systems and computer architecture. This complete and fully updated study of assembly language for the IBM-PC teaches students how to write and debug programs at the machine level. Based on the Intel processor family, the text simplifies and demystifies concepts that students need to grasp before they can go on to more advanced computer architecture or operating systems courses.

Editorial Reviews

Excerpt. © Reprinted by permission. All rights reserved.

Assembly Language for Intel-Based Computers, Fourth Edition is based on the Intel IA-32 Processor architecture, seen from a programmer's point of view. It is appropriate as a text in the following types of college courses for computer science majors:

  • Assembly Language Programming
  • Fundamentals of Computer Systems
  • Fundamentals of Computer Architecture

Although this book was originally designed as a programming textbook for community college students, it has gradually developed into much more. Currently, many universities use the book for their introductory computer architecture courses. At Florida International University, for example, this book is used in a course named Fundamentals of Computer Systems, which leads to a more comprehensive course in Computer Architecture.

The present edition includes topics that lead naturally into subsequent courses in computer architecture, operating systems, and compiler writing:

  • Virtual machine concept
  • Elementary boolean operations
  • Instruction execution cycle
  • Memory access using clock cycles
  • Interrupts and polling
  • Multi-stage pipeline
  • Superscalar architecture
  • Multitasking
  • Loading and executing programs
  • Floating-point binary representation

Other topics relate specifically to Intel IA-32 architecture, using information gained from its manuals:

  • IA-32 Protected Memory addressing and paging
  • Memory segmentation in Real-address mode
  • Interrupt handling
  • Direct hardware I/O
  • Instruction encoding

Certain examples presented in the book lend themselves to courses that occur later in a computer science curriculum:

  • Searching and sorting algorithms
  • High-level language structures
  • Finite-state machines
  • Code optimization examples

There are a number of new features in this edition that relate to programming:

  • A more comprehensive and logical explanation of data definition.
  • A more careful explanation of addressing modes.
  • A simplified link library that requires fewer input parameters for nearly all procedures. There are new procedures to dump the CPU registers and sections of memory, as well as a delay timer.
  • An explanation and demonstration of top-down program design.
  • Use of flowcharts as code-generation tools.
  • Even more thorough coverage of assembly language directives, macros, and operators. For example, the PROC, PROTO, and INVOKE directives are thoroughly explained and demonstrated.
  • More complete coverage of structures, including nested structures and arrays of structures.
  • Block-structured IF, WHILE, and REPEAT statements (an advanced feature of MASM).
  • Introduction to video graphics, using both BIOS and direct-memory mapping techniques.
  • Mouse programming.
  • Win32 Console programming, using calls to the Kernel32 Windows library.
  • More array manipulation examples.

Still a Programming Book. It is important to note that this book is still focused on its original mission: to teach students how to write and debug programs at the machine level. It will never replace a complete book on computer architecture, but it does give students the first-hand experience of writing software in an environment that teaches them how the computer really works. The value of this cannot be underestimated, because they will retain a great deal more theoretical knowledge by having immediate contact with the machine. In an engineering course, students construct prototypes; in a software course, students write programs. In both cases, they have a memorable experience that gives them the confidence to work in any OS/machine-oriented environment.

Real Mode and Protected Mode. Many professors have indicated a desire to move to 32-bit programming, using Intel's protected memory model. This edition primarily emphasizes 32-bit Protected mode, but it still has three chapters devoted exclusively to Real-mode programming. For example, there is an entire chapter on BIOS programming for the keyboard, video display (including graphics), and mouse. There is another chapter exclusively on MS-DOS programming using interrupt (function) calls. It is very beneficial for students to have some experience programming directly for firmware and hardware.

The examples in the first part of the book are nearly all presented as 32-bit text-oriented applications running in Protected mode using the flat memory model. This is extremely straightforward. No longer do students have to deal with segment-offset addressing. There are specially marked paragraphs and popup boxes that note the small differences between Protected mode and Real-mode programming. Most of the differences are hidden away in the book's two link libraries.

Link Libraries. There are two versions of the link library that students use for basic input-output in this book. The 32-bit version (Irvine32.lib) works in Win32 Console mode, under any version of MS-Windows. The 16-bit version (Irvinel6.lib) works under MS-DOS, MS-Windows, and a Linux DOS emulator. In later chapters, all the functions in these two libraries are exposed, and readers can modify the libraries as they wish. It is important to realize that the link libraries are there only for convenience, not to prevent students from learning how to program input-output themselves.

Included Software and Examples. All the example programs have been tested with the Microsoft Macro Assembler Version 6.15. For the most part, the programs will assemble with Borland TASM 4.0 and 5.0, but there are some features that Borland does not fully support.

Web Site Information. Updates and corrections to this book may be found at the book's Web site, including additional programming projects for professors to assign at the ends of chapters.

If for some reason you cannot access this site, information about the book and a link to its current Web site can be found by searching for the book title or for the full author name "Kip Irvine." The author's e-mail address is kip@nuvisionmiami.com

Overall Goals

Each of the following goals of this book is designed to broaden the student's interest and knowledge in topics related to assembly language:

  • The Intel IA-32 processor architecture and programming
  • Assembly language directives, macros, operators, and program structure
  • Programming methodology, showing how to use assembly language to create both system-level software tools and application programs
  • Computer hardware manipulation
  • Interaction between assembly language programs, the operating system, and other application programs

One of my goals is to help students approach programming problems with a machine-level mind set. It is important to think of the CPU as an interactive tool, and to learn to monitor each of its actions as directly as possible. A debugger is a programmer's best friend, not only for catching errors, but as an educational tool that teaches about the CPU and operating system. I encourage students to look beneath the surface of high-level languages, and to realize that most programming languages are designed to be portable and, therefore, independent of their host machines.

In addition to the short examples, Assembly Language for Intel-Based Computers contains more than 115 ready-to-run programs that demonstrate instructions or ideas as they are presented in the text. Reference materials, such as guides to MS-DOS interrupts and instruction mnemonics, are available at the end of the book. There is a comprehensive link library that makes the user interface much more accessible for students writing their first programs. The macro library included with the book may also provide inspiration for further development by professors and students.

Required Background. The reader should already be able to program confidently in at least one other programming language, preferably Pascal, Java, C, or C++. One chapter goes into C++ interfacing in some depth, so it is very helpful to have a compiler on hand. I have used this book in the classroom with majors in both computer science and management information systems, and it has been used elsewhere in engineering courses. I used Microsoft Visual C++ 6.0 and Borland C++ 5.0 for the examples that deal with high-level language interfacing.

Features

Complete Program Listings. A companion CD-ROM contains all the source code from the examples in this book. Additional listings are available on the author's Web page. An extensive link library is supplied with the book, containing more than 30 procedures that simplify user input-output, numeric processing, disk and file handling, and string handling. In the beginning stages of the course, students can use this library to enhance their programs. Later, they can create their own procedures and add them to the library. Students are given the complete source code for the 16-bit and 32-bit link libraries.

Programming Logic. Two chapters emphasize boolean logic and bit-level manipulation. A conscious attempt is made to relate high-level programming logic to the low-level details of the machine. This helps students to create more efficient implementations and to better understand how language compilers generate object code.

Hardware and Operating System Concepts. The first two chapters introduce basic hardware and data representation concepts, including binary numbers, CPU architecture, status flags, and memory mapping. A survey of the computer's ha...

Product details

  • Publisher ‏ : ‎ Prentice Hall; Subsequent edition (January 1, 2002)
  • Language ‏ : ‎ English
  • Hardcover ‏ : ‎ 700 pages
  • ISBN-10 ‏ : ‎ 0130910139
  • ISBN-13 ‏ : ‎ 978-0130910134
  • Item Weight ‏ : ‎ 2.8 pounds
  • Dimensions ‏ : ‎ 7.5 x 1.25 x 9.5 inches
  • Customer Reviews:
    4.3 4.3 out of 5 stars 36 ratings

About the author

Follow authors to get new release updates, plus improved recommendations.
Kip R. Irvine
Brief content visible, double tap to read full content.
Full content visible, double tap to read brief content.

Kip Irvine has written five computer programming textbooks, for Intel Assembly Language, C++, Visual Basic, and COBOL. Along with Tony Gaddis, he is co-author of two books on Visual Basic: Starting Out with Visual Basic 2010, and Advanced Visual Basic 2010. His Assembly Language for Intel-Based Computers has been translated into six languages. Kip grew up in Kailua, Hawaii as a surfer, sailor, and surfboard maker. He studied classical guitar and music composition at University of Hawaii, and earned a doctorate in music composition from the University of Miami in 1982. Around that time he began programming computers, and was a professor of Computer Information Systems at Miami-Dade College for 17 years. He also holds a MS in Computer Science from the University of Miami, and since 2000 has been on the faculty of the School of Computing and Information Sciences at Florida International University. He is also a programming team coach and a 4th Degree Black Belt in Taekwondo.

Customer reviews

4.3 out of 5 stars
36 global ratings

Top reviews from the United States

Reviewed in the United States on March 8, 2007
Being a college student learning lower level coding techniques, I was intimidated by assembler and learning a language so close to computer level.

While this text is fairly dry, the author gives excellent description and examples to help the reader understand the language. The author is successful at giving detail about the methods involved in coding at various coding language levels and performing the math necessary to succeed at this.

Also, Kip Irvine has very detailed web pages for all editions of this book. Very good tools are available via the CD and the web pages.

Overall, this book is a great tool for the student of assembly.
3 people found this helpful
Report
Reviewed in the United States on March 19, 2020
I had a problem with the book which was promptly resolved!
Reviewed in the United States on October 5, 2018
not much use after 1 semester
Reviewed in the United States on July 30, 2006
Mr. Irvine's book is an outstanding introduction into the x86 microprocessor family and beyond. This is a great text for use in undergraduate CS classes or for any Joe who wants to learn to bust bits on bare metal. While some coverage may seem outdated (ala the days of DOS), only the initiated know that programming a computer on the lowest level possible is the ULTIMATE form of control.

Linux users might find this book useful also, since high level C/C++/Java calls can still incorporate Assembly language functions. A great purchase for any would-be hackers or anyone wanting to control that mysterious hunk of silicon called a microprocessor.
4 people found this helpful
Report
Reviewed in the United States on November 4, 2013
I have been wanting this book for the longest time. The condition was way better than stated. This is one of two books that should be required for students pursing this topic in school.
Reviewed in the United States on March 1, 2010
it is a great book to learn the basic operation and use of the langauge.

If you start with the book by Jones good luck to you ! Stay away from Jones textbook !

gerardsagliocca,p.e.
gerard_sagliocca@yahoo.com
Reviewed in the United States on December 5, 2016
Great book, perfect condition a must have for all programmers. The book is easy to understand.
Reviewed in the United States on January 23, 2003
This is good intro to assembly language. It's good that there is an emphasis in 32bit protected. You won't be coding 16bit unless you're writing BIOS code or working on embedded systems.
The 32bit protected mode was not in enough depth. There was little talk of GDT/LDT/IDT and call gates and no discussion of ringzero code.
If you've never coded any assembly then its a good book. Something else to look at would be Art of Assembly Language. It is now has its own version for 32bit. Search google.
8 people found this helpful
Report

Top reviews from other countries

philscotted
5.0 out of 5 stars A superb programming resource
Reviewed in the United Kingdom on October 13, 2002
I recommend this as THE text to own on assembly language. It is the only book I can find out there which assumes you will be working in 32-bit protected mode, and only teaches 16-bit real mode as an option in the latter part of the book (which I have no complaints about, Intel's own guide to their chipsets do the same). The explanations are clear and Irvine hasn't riddled the book with crap jokes and "humourous" analogies which seems to be typical of programming authors at the moment. This is a serious and direct text which explains everything from the perspective that an assembly language programmer would like to learn from. Plus, there is a whole section on working with windows, so by the end of the book you will be able to code an entire windows program in pure assembler.