Vous voulez voir cette page en français ? Cliquez ici.

 

or
Sign in to turn on 1-Click ordering.
 
 
More Buying Choices
27 used & new from CDN$ 29.33

Have one to sell? Sell yours here
 
   
Professional Assembly Language
 
 

Professional Assembly Language (Paperback)

by Richard Blum (Author) "One of the first hurdles to learning assembly language programming is understanding just what assembly language is ..." (more)
5.0 out of 5 stars  See all reviews (1 customer review)
List Price: CDN$ 59.99
Price: CDN$ 37.79 & eligible for FREE Super Saver Shipping on orders over CDN$ 39. Details
You Save: CDN$ 22.20 (37%)
o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o
In Stock.
Ships from and sold by Amazon.ca. Gift-wrap available.

Only 3 left in stock--order soon (more on the way).

21 new from CDN$ 29.33 6 used from CDN$ 47.54

Customers Who Bought This Item Also Bought

Managing Projects with GNU Make

Managing Projects with GNU Make

by Robert Mecklenburg
CDN$ 27.69
Version Control with Subversion

Version Control with Subversion

by Ben Collins-Sussman
5.0 out of 5 stars (2)  CDN$ 25.19
Windows® via C/C++, Fifth Edition

Windows® via C/C++, Fifth Edition

by Christophe Nasarre
CDN$ 55.43
Beginning Linux Programming

Beginning Linux Programming

by Neil Matthew
4.5 out of 5 stars (67)  CDN$ 30.23
Explore similar items

Product Details


Product Description

Product Description

  • Unlike high-level languages such as Java and C++, assembly language is much closer to the machine code that actually runs computers; it's used to create programs or modules that are very fast and efficient, as well as in hacking exploits and reverse engineering
  • Covering assembly language in the Pentium microprocessor environment, this code-intensive guide shows programmers how to create stand-alone assembly language programs as well as how to incorporate assembly language libraries or routines into existing high-level applications
  • Demonstrates how to manipulate data, incorporate advanced functions and libraries, and maximize application performance
  • Examples use C as a high-level language, Linux as the development environment, and GNU tools for assembling, compiling, linking, and debugging


From the Back Cover

Professional Assembly Language

Every high level language program (such as C and C++) is converted by a compiler into assembly language before it is linked into an executable program. This book shows you how to view the assembly language code generated by the compiler and understand how it is created. With that knowledge you can tweak the assembly language code generated by the compiler or create your own assembly language routines.

This code-intensive guide is divided into three sections — basics of the assembly language program development environment, assembly language programming, and advanced assembly language techniques. It shows how to decipher the compiler-generated assembly language code, and how to make functions in your programs faster and more efficient to increase the performance of an application.

What you will learn from this book:

  • The benefits of examining the assembly language code generated from your high-level language program
  • How to create stand-alone assembly language programs for the Linux Pentium environment
  • Ways to incorporate advanced functions and libraries in assembly language programs
  • How to incorporate assembly language routines in your C and C++ applications
  • Ways to use Linux system calls in your assembly language programs
  • How to utilize Pentium MMX and SSE functions in your applications

Inside This Book (Learn More)
First Sentence
One of the first hurdles to learning assembly language programming is understanding just what assembly language is. Read the first page
Explore More
Concordance
Browse Sample Pages
Front Cover | Copyright | Table of Contents | Excerpt | Index | Back Cover
Search inside this book:

Tag this product

 (What's this?)
Think of a tag as a keyword or label you consider is strongly related to this product.
Tags will help all customers organize and find favorite items.
Your tags: Add your first tag
 

What do customers ultimately buy after viewing this item?

Professional Assembly Language
77% buy the item featured on this page:
Professional Assembly Language 5.0 out of 5 stars (1)
CDN$ 37.79
Assembly Language Step-by-Step: Programming with DOS and Linux
23% buy
Assembly Language Step-by-Step: Programming with DOS and Linux 3.9 out of 5 stars (35)
CDN$ 38.42

 

Customer Reviews

1 Review
5 star:
 (1)
4 star:    (0)
3 star:    (0)
2 star:    (0)
1 star:    (0)
 
 
 
 
 
Average Customer Review
5.0 out of 5 stars (1 customer review)
 
 
 
 
Share your thoughts with other customers:
Most helpful customer reviews

 
0 of 2 people found the following review helpful:
5.0 out of 5 stars Must have for the Assembly newbie targeting recent x86 platforms, Aug 31 2006
By Benton Lam (BC, Canada) - See all my reviews
(REAL NAME)   
Blum does an excellent job in covering the assembly instructions found in a typical x86 processor, and presenting it quickly and concisely to a typical C programmer. Most of the x86 asm quirks are due to backwards compatibility to older processors, and Blum even mentions why this is the case. He also mentions how an assembly program can access Linux and Standard C library calls, command line arguments, and environment variables. Also, he devoted a chapter in inline assembly in C using gcc, and how to write assembly functions that are compatible with C function calls, so that you could create libraries that can be linked against C programs.

The book is valuable to those who need to learn assembly (but otherwise haven't really seen it before), and would be helpful for C programmers to understand how the language gets translated to assembly language.

It's a shame that for a book published in 2005, it didn't cover much of the newer AMD64 assembly, and there are a few fairly glaring erratas. It remains a bit of a blemish for an otherwise excellent book on a difficult topic.

Also, the chapter on MMX and SSE instructions feels a bit rushed, as some of the operations may seem a bit non-obvious. e.g. psadbw - Packed Sum of Absolute Difference will take the absolute difference of packed 8-bit integers in the source and destination operands, and sum the lower 8 abs-difference, sum them up, and put it as a low order 64-bit integer, and do the same thing to the higher 8 abs-difference. So, suppose the source operand contains:
0x10101010101010101010101010101010
(16 8-bit integer with the value 16 in hex), and the dest operand contains:
0x04040404040404040404040404040404
(16x8-bit int with the value 4 in hex),
then the result would be:
0x00000000000000600000000000000060
(2x64-bit ints with the value 96 in hex).

The book is based on open-source assembler found on Linux systems, so programmers who have so far never touched Linux may be a bit overwhelmed. He has also devoted Chapter 2 on the CPU's architecture (based on the P4, I believe), and this would be a bit redundant for those who have studied Processor Architecture courses, except when he mentioned how the branch prediction unit fit in with the rest of the CPU.
Was this review helpful to you? Yes No (Report this)


Share your thoughts with other customers: Create your own review
 
 
Only search this product's reviews



Listmania!


Look for similar items by category


Look for similar items by subject


Feedback


Your Recent History

 (What's this?)

After viewing product detail pages or search results, look here to find an easy way to navigate back to pages you are interested in.