Jeff Duntemann's Contrapositive Diary Rotating Header Image

Assembly Language Step By Step, Third Edition

ASMSBS3ECoverSmall.jpgA few minutes ago, UPS left my author’s carton of Assembly Language Step By Step, Third Edition on the front porch. So after ten months of work (and another month of anxious waiting around), it’s really and truly real.

100% Linux. Certified DOS-free. It turned out pretty well, all things considered. And having (finally) held it in my own hands, I think I won’t ask anything more from today.


  1. Rich Shealer says:

    Hi Jeff,

    Congratulations – Looking forward to buying it.

    Is the ASCCI chart there? 🙂


    1. Well, I was nervous for awhile, but the charts are there and everything looks pretty good. The book has a slightly plainer design than the 2000 edition, but that’s not necessarily a bad thing!

  2. Bruce C. Baker says:

    Congratulations on the new arrival! 😀

  3. Congratulations. Good to know that the ‘new book in hand’ feeling isn’t limited to one’s first or second books. They’re /all/ special. 🙂


    1. Considering the sheer head-banging work that this one involved, I’d say it’s extra special.

  4. Congratulations on the new book. Having written a couple myself, I know exactly what you mean: hold it in your hands and take the rest of the day off. But never open it, because if you’re anything like me, you’ll flip it open to a random page and your eye will immediately zoom in to a glaring error that somehow made it past all your proofreading passes and all your editors. 😉

    I was about to say I hope your new book sells a ton of copies when I thought about my second-favorite ever accidental insult. We were at a party and my wife mentioned to someone that my new book had just hit the warehouses. The woman we were talking with said, “Oh! How wonderful! I hope it sells *hundreds* of copies!”

  5. Kevin says:

    Congratulations! I don’t think I’d have a use for the book myself, but I can appreciate a job well done. So while the best compliment might be a purchase, please accept the next best think from me.

  6. Darrin Chandler says:

    Congratulations, Jeff! I think this in particular is a wonderful thing you’ve done. Updating a venerable book for today’s audience was no mean feat, and I’m sure you’ve done the same great job that you’ve done with previous editions.

    I have an old copy, and I’ll be sure to order this one. I’m confident I’ll learn some good things.

  7. Rohan says:

    I just my copy today from Amazon. Flipping through it, after waiting so long for a good linux assembly book, I am elated.

    You’ve invigorated a new generation of programmers. Thank you for being strong enough to make it pass the army of naysayers and bring this project to fruition.


  8. Jasmine says:

    Congratulations on your new book! But, it’s really bad news for me! 🙁 I just bought your 2nd Edition book for SGD 95 not too long ago from Borders bookstore without realising that you have a new edition! It was my savings.. 🙁 Would I still be able to benefit by learning the DOS way? Or, do you think that I need to drop the 2nd edition and just start learning with your latest edition?
    I look forward for your advice. Thanks.

    1. Well, there’s nothing in terms of fundamentals in the second edition (2E) that isn’t also in the third edition (3E). However, once you get past the first couple of chapters, the two books begin to diverge pretty sharply. There are certain things that DOS can do that Linux can’t (like writing directly to text-mode screen memory) but techniques like that aren’t of much use these days. (They were still useful in 2000, when I wrote 2E, and mainstream for earlier, all-DOS editions.) Linux is a good model for low-level programming in all modern, protected-mode operating systems, and if you want to know how things work inside modern CPUs, you’re better off with 3E. That said, you can still learn a lot from 2E, and I’m not one to push my books simply to make money. I want you to get your money’s worth from what you’ve already bought. So if you have a DOS machine or DOS in a VM, give it a shot and see what you think. You can always pick up 3E later on if you want to go further than DOS can take you.

  9. Jasmine says:

    Hi Jeff! Thanks for your advice! It’s really cool to hear from you so soon! 🙂 I just realize that I do not have a DOS machine. I am running Windows XP and might download DOS in a VM software.. I guess I will stick to 2E, complete it and then purchase your 3E book.

    1. VMs are good…and interestingly, you get a VM manager free with many Linux distros, including the latest Ubuntu. I haven’t looked around for a prebuilt DOS VM, but I’m guessing one is out there somewhere. Failing that, if you still have a readable DOS floppy (or more significantly, a drive that will read it!) installing DOS in the VM should be trivial. Good luck with it. Just remember that DOS allows you to take liberties with the underlying hardware that newer operating systems will not.

  10. Jasmine says:

    I accidentally found an archive of your web page here.

    Ït mentioned that I am able to run everything on Windows XP without worrying about DOS. Mmmm..I guess having DOS in VM is an option? There are a couple of DOS emulators out there.

    1. The code examples will…mostly…run in an XP DOS box. Certainly the pure command-line stdout-type examples will. However, I’ve had mixed success with some of the examples that write directly to the video buffer. It can’t hurt to try it, but if things look weird or crash on you, see if you can get one of those DOS emulators going. Real DOS in a VM (doesn’t matter which; I’ve used both VMWare Workstation and Virtual Box) is the high road, and to eliminate DOS box weirdnesses from your debugging sessions, try your best to get the real thing.

  11. Jasmine says:

    Hi Jeff, I just bought your 3E book on Amazon. It is cheaper than buying from my local bookstore and I want to support you. 🙂 Cheers.

Leave a Reply to Rich Shealer Cancel reply

Your email address will not be published. Required fields are marked *