Engineering & Transportation

Sorry, this item is not available in
Image not available for
Image not available

To view this video download Flash Player


Sign in to turn on 1-Click ordering
Kindle Edition
Read instantly on your iPad, PC, Mac, Android tablet or Kindle Fire
Buy Price: $46.44
Rent From: $16.53
More Buying Choices
Have one to sell? Sell yours here

Windows Assembly Language and Systems Programming: 16- and 32-Bit Low-Level Programming for the PC and Windows [Paperback]

Barry Kauler
2.7 out of 5 stars  See all reviews (19 customer reviews)

List Price: $69.95
Price: $48.88 & FREE Shipping. Details
You Save: $21.07 (30%)
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
Temporarily out of stock.
Order now and we'll deliver when available. We'll e-mail you with an estimated delivery date as soon as we have more information. Your account will only be charged when we ship the item.
Ships from and sold by Gift-wrap available.
Free Two-Day Shipping for College Students with Amazon Student


Amazon Price New from Used from
Kindle Edition
Rent from
Paperback $48.88  
Shop the new
New! Introducing the, a hub for Software Developers and Architects, Networking Administrators, TPMs, and other technology professionals to find highly-rated and highly-relevant career resources. Shop books on programming and big data, or read this week's blog posts by authors and thought-leaders in the tech industry. > Shop now

Book Description

January 9, 1997 087930474X 978-0879304744 2
-Access Real mode from Protected mode; Protected mode from Real mode Apply OOP concepts to assembly language programs Interface assembly language programs with high-level languages Achieve direct hardware manipulation and memory access Explore the archite

Frequently Bought Together

Windows Assembly Language and Systems Programming: 16- and 32-Bit Low-Level Programming for the PC and Windows + Windows Internals: The Implementation of the Windows Operating Environment
Price for both: $75.13

One of these items ships sooner than the other.

Buy the selected items together

Editorial Reviews

About the Author

Barry Kauler is the author of five books, including Windows Assembly Language and Systems Programming, and a contributor to Dr. Dobb's Journal. He is a teacher and consultant on real-time systems design.

Product Details

  • Paperback: 419 pages
  • Publisher: CRC Press; 2 edition (January 9, 1997)
  • Language: English
  • ISBN-10: 087930474X
  • ISBN-13: 978-0879304744
  • Product Dimensions: 9.1 x 7.5 x 0.8 inches
  • Shipping Weight: 1.7 pounds (View shipping rates and policies)
  • Average Customer Review: 2.7 out of 5 stars  See all reviews (19 customer reviews)
  • Amazon Best Sellers Rank: #1,400,099 in Books (See Top 100 in Books)

More About the Author

Discover books, learn about writers, read author blogs, and more.

Customer Reviews

Most Helpful Customer Reviews
26 of 27 people found the following review helpful
4.0 out of 5 stars Use of Assembly in Low Level Windows December 7, 1999
This book is NOT for everybody. But if you need to extract maximum performance from Windows 95/98, it is indispensible eg, Games, SCSI i/face, real-time I/O, etc. In conjunction with Walter Oney's "System's Programming for Windows 95" it is unbeatable. The appendix describing the Microsoft DPMI extensions is worth the price. It is the only work that addresses: TSRs with Windows, Call gate thunking and shared VM memory areas. (If you don't understand what these mean, this book is not for you; if you do then you will appreciate their importance and indispensibility for high performance apps, particularly I/O oriented ones.) I found Kauler's description of Assembly implementation of OOP innards most illuminating. The 1st 2 book chapters could be culled substantially, to a summary of x86 architecture & Assembly, and the space better used for subsequent chapters where the descriptions are somewhat thin. Since the number of books on low level Assembly hacking into Windows is just 1, and Ring 0 Assembly is the only way to handle multiple CDRs, RAID array, multi-DAT or other high throughput I/O apps -- this book stands alone, regardless of its warts. Oney's book lays out VxDs, Kauler's fills in the key gaps for direct DPMI calls, fast thunking, VM sharing and working through DOS REAL Real Mode (not V86). Kauler's irreverent style is somewhat flippant for this serious a topic.
Comment | 
Was this review helpful to you?
20 of 21 people found the following review helpful
3.0 out of 5 stars Skims the Surface December 21, 1999
I have to admit I learned alot from this book. I think it could have been written a little "smoother". I agree with one reader when he says the first two chapters could have been put to better use. If you use Microsofts Masm assembler, then you may be somewhat lost. I know of at least two instances where he refers you to another section to configure your programs in Masm, but, there is no reference to Masm in these sections. The appendices are excellent. I must admit this is the only book of its kind I have been able to find but in most areas he just skims the surface. He doesn't even tell you the proper way to retrieve a key stroke using Windows routines. In all honesty, "Its better than Nothing"..! I know more now than I did...
Comment | 
Was this review helpful to you?
22 of 24 people found the following review helpful
1.0 out of 5 stars STEER CLEAR OF THIS BOOK April 29, 2000
By A Customer
Kauler has produced a book, published in 1997, that was last relevant in about 1994. Although he promises 32-bit Windows assembly programming (meaning Win9x), virtually everything is geared towards DOS or Win3.x. The included samples are missing pieces and won't assembly or link. I wish I could sent it back.
Comment | 
Was this review helpful to you?
19 of 21 people found the following review helpful
1.0 out of 5 stars Throwback to Windows 3.1 January 22, 2002
Assembly language is important - you really need it when
a) your compiler is producing instructions different to those you intended with your higher-level language
b) debugging system-level code
c) disassembling some binary file that has no source code
d) presented with a crash address alone.
e) You might even need to write a little assembly when what you are doing simply cannot be written in a higher level language.
There are some excellent books to help learn assembly, and chapters in books and articles by the likes of Pietrek and Robbins.
Kauler is different. He believes you should write your Windows GUI programs straight in assembler - dialogs, menus, windows and all. He thinks this is a good way to write Windows programs. Anybody who wants to follow his advice does not need this book, he needs to learn about modern tools. Modern compilers are really good, and it is ludicrous to suggest replacing their work with yours.
Having undermined the central premise of this book, it is worth commenting on the content. Firstly, it is very heavy going, and somehow clunky. I don't know if it is the font, page layout, or simply trying to cover too much too quickly, but I had to read each paragraph a few times to understand what was being said here. The book has clearly been rehashed from previous Kauler literature, even leaving in the same screen shots from 1992! Several chapters have rambling overviews of Windows architecture or the boot up process, and quite frankly, other books cover this far better. What this stuff has to do with assembly is not explained.
He also seems to be stuck in a time warp, by writing most of his code in 16-bit assembly. There was a time, when I was still young, when you had no choice - 32-bit Windows was still a pipedream.
Read more ›
Comment | 
Was this review helpful to you?
8 of 8 people found the following review helpful
3.0 out of 5 stars interesting miscellaneous old information June 10, 2001
By A Customer
This is interesting stuff. However it's old and a lot of it has a kind of rambling, meandering quality like the author's just mentioning some stuff off the top of his head. A lot of it is geared toward Win3.1 and 16bit vs 32bit, but old info is maybe better than no info, since this is one of the only books out there on this subject.
Comment | 
Was this review helpful to you?
10 of 11 people found the following review helpful
2.0 out of 5 stars Highly disappointing July 28, 1998
His first edition on 16-bit was very well written and covered nearly every subject on writing Windows programming in assembler. His second edition is just a rehash of the first edition with a few 32-bit tidbits tossed in among code that will not compile in either TASM or MASM.
Granted, it's the only book available on this subject, so you might was well buy it, but clearly the author didn't spend much time on this edition.
Comment | 
Was this review helpful to you?
7 of 7 people found the following review helpful
4.0 out of 5 stars Essential reading, but not perfect October 13, 1998
By A Customer
Being one of the very few books on this topic, this book is essential for anyone who's interested. Although there is a chapter about the basics of assembly language, I think the reader must have some basic assembly skills before starting with this book. I personally knew DOS assembly and wanted to learn Windows assembly. This book formed a GREAT introduction.
The only drawbacks I find are:
- the comparison Win16 <-> Win32 is made, I'd rather see the comparison Win9x <-> Winnt;
- the author doesn't always explain what he promised to explain. E.g. A chapter about Ring0 Code is about an example of *getting* ring0 from ring3;
- the source code is messy, and doesn't always compile.
But still, it's a great book.
Comment | 
Was this review helpful to you?
Most Recent Customer Reviews
1.0 out of 5 stars not a begginer book
The book is hard to follow but I really wish I could have followed it the subject matter is interesting
Published 11 months ago by Marvin
2.0 out of 5 stars I hope no one's buying this -- and not because it's old, although
it is. The main problem here is that its author, Barry Kauler, while a very competent engineer (and a college professor, I seem to remember?), is an inept writer. Read more
Published on March 8, 2011 by Ghost(Ghost(M))
2.0 out of 5 stars Don't Bother
This book really didn't live up to expectations. I really should've sent it back and ate the shipping.
Published on May 8, 2002 by D. Harp
3.0 out of 5 stars Windows assembly review by barry kauler
This book is really awkward old, uses old conventiones and does not deal with the properties of any new operating system. Read more
Published on July 23, 2001 by al-massoudy
2.0 out of 5 stars poor
Fragmented and outdated. Like an old compiler, claim to do all but in fact falling far behind promise.
Published on June 12, 2001 by luke
1.0 out of 5 stars It's exactly what I need
I think it's the best book to guide you in system programming in windows step by step. I have studied another book, but it was so complicated to write a program in system... Read more
Published on December 21, 1999 by muhammad heidari
3.0 out of 5 stars Decent Referance, Bad Learning Tool
For a CS student, the book starts fairly nice and at an understandable level and then switches to being so over-your-head that you have to read the paragraphs three or more times... Read more
Published on August 2, 1999 by "turkey5555"
5.0 out of 5 stars Uncle Barry to the rescue!
Are you that special kind of Computer Programmer? You know the kind who does not have a mentality like, "As long as my program runs, who cares how I got there. Read more
Published on December 21, 1998
Search Customer Reviews
Search these reviews only

Citations (learn more)
This book cites 2 books:

Books on Related Topics (learn more)
Reversing by Eldad Eilam
MicroC OS II by Jean J. Labrosse


There are no discussions about this product yet.
Be the first to discuss this product with the community.
Start a new discussion
First post:
Prompts for sign-in

Look for Similar Items by Category