I’ve hand-picked you the top 5 books that will help you learn assembly even if you have never coded in assembly language before. This article will look at some of the best assembly language books available today.

So what even is Assembly language? It is a low-level programming language that allows you to control a computer’s hardware directly. Learning assembly language can also benefit you if you’re interested in developing embedded systems, allowing you greater control over their code.

Assembly language is used in many applications, including operating systems, device drivers, embedded systems, and game development. With all these advantages, it is clear that learning assembly language can open up many opportunities for aspiring programmers and developers.

#1

Assembly x64 Programming In Easy Steps

by Mike McGrath

4.8
4.8/5

#2

Assembly Language Step By Step

by Jeff Duntemann

3.0
3/5

#3

Learn to Program with Assembly

by Jonathan Bartlett

5.0
5/5

#4

Programming with 64-Bit ARM Assembly Language

by Stephen Smith

4.5
4.5/5

#5

Raspberry Pi Operating System Assembly Language

by Bruce Smith

4.5
4.5/5

Assembly x64 Programming In Easy Steps

The Best Illustrated Book

Rating:
4.5/5

Author: Mike McGrath

Number of Pages: 186

Time to Read: 12 hours

Published: September 8, 2021

Style of Writing: Practical

Ideal for: Beginners

Why do we like this book?

The book has colorful illustrations, readable, and easy to follow, making it perfect for those starting with assembly language. You will also be completing exercises even if you haven’t done any programming before.

Easy To Read

Is it Easy to Read?

Plain English/Jargon Free
100%
Illustrations
100%
Comprehensive

Is the Book Comprehensive?

Covers the Basic
100%
Tutorials & Exercises
100%
Relevance

Is the Book Relevant?

Up-to-date
75%
Covers Deep Concepts
50%

What will you learn from this book?

You will learn the fundamentals of assembly language and how it works. In addition, the book will cover the basics of memory addressing, arithmetic operations, flow control, and more. You will discover ways to perform basic operations such as addition, subtraction, multiplication, and division. The book also take you through the step-by-step process of setting up your machine for developing in assembly. 

Why this book may not be right fit for you?

Even though it’s a great beginner book, it’s for Windows users only. You’ll be using Microsoft’s Macro Assembler software to follow the exercises. The book also doesn’t cover the inner workings of assembly language in-depth. If you are not a big fan of using Windows and need more comprehensive guide, then I recommend reading Learn to Program with Assembly

The book is applicable for Windows user only.

Assembly Language Step-by-Step

Learn Assembly Language In Linux

Rating:
3/5

Author: Jeff Duntemann

Number of Pages: 656

Time to Read: 44 hours

Published: October 5, 2009

Style of Writing: Hybrid

Ideal for: Beginners

Why do we like this book?

The author wrote this book with the notion that assembly language is the first programming language you’ve ever used. The book also covers the basic concepts in computing, such as hexadecimal and binary number bases. The book also covers the assembly language concepts comprehensively.

Easy To Read

Is it Easy to Read?

Plain English/Jargon Free
75%
Illustrations
75%
Comprehensive

Is the Book Comprehensive?

Covers the Basic
75%
Tutorials & Exercises
50%
Relevance

Is the Book Relevant?

Up-to-date
25%
Covers Deep Concepts
100%

What will you learn from this book?

You will learn the assembly language basics, such as binary and hexadecimal number systems, Intel x86 computer architecture, and building computer programs under the Linux operating system.

You will also get exposed to x86 instruction set, memory addressing, macros, and using C-language libraries. You will learn assembly language using free and open-source software.

Why this book may not be right fit for you?

The book is also published nine years old so the tools are not up-to-date to follow through the exercises. If you are a complete beginner, I recommend either Learn to Program with Assembly or Assembly x64 Programming in Easy Steps.

What are other people saying?

This book has great reviews in Amazon and Reddit.

I liked Assembly Language Step-By-Step. It’s 10+ years old now, and some of the toolset the author used isn’t available on newer versions of Ubuntu. Since I wanted to follow along exactly I installed the old version of Ubuntu he used.
Started with step by step by Duntemann, it's a very good book for a complete beginner.
I picked up Duntemann's book and started reading it, I really enjoy his style, I find the explanations clear and he's very funny.

Learn to Program With Assembly

Best Book for First-Time Programmers​

Rating:
5/5

Author: Jonathan Bartlett

Number of Pages: 348

Time to Read: 24 hours

Published: November 6, 2021

Style of Writing: Hybrid

Ideal for: All levels

Why do we like this book?

The book is a successor of the author’s previous book, Programming from the Ground Up, which was a reputable book on assembly language for 15 years. The book teaches 64-bit x86 assembly language in the Linux operating system. The book covers and explains the basic comprehensively for a complete beginner. The readers of Windows and Mac operating system can follow through the exercises using provided Docker image.

Easy To Read

Is it Easy to Read?

Plain English/Jargon Free
100%
Illustrations
50%
Comprehensive

Is the Book Comprehensive?

Covers the Basic
100%
Tutorials & Exercises
50%
Relevance

Is the Book Relevant?

Up-to-date
100%
Covers Deep Concepts
100%

What will you learn from this book?

The book’s first part teaches basic instructions for the processor to write programs. You will also learn the operating system interactions, such as making calls to the kernel and working with the memory. Finally, the book discusses features of high-level programming languages, such as exception handling, object-oriented programming, and garbage collections.

Why this book may not be right fit for you?

If you are a first-time programmer, you will learn assembly language at a slower paced because the author focuses on building your fundamental knowledge first. The book has less illustrations than Assembly x64 Programming In Easy Steps. The book still covers the basic in details and is the most up-to-date book on learn assembly language for any skill-level.

Programming with 64-Bit ARM Assembly Language​

The Best Book to Learn Assembly In Mobile

Rating:
4.5/5

Author: Stephen Smith

Number of Pages: 403

Time to Read: 26 hours

Published: May 1, 2020

Style of Writing: Theory

Ideal for: Advanced Learners

Why do we like this book?

The book will teach you how to write assembly programming in an ARM processor in 64-bit mode. In addition, you’ll learn how to write programs for mobile devices such as Android and iPhone. You will also find it beneficial to get up-to-date instructions and detail explanations of assembly language.

Easy To Read

Is it Easy to Read?

Plain English/Jargon Free
50%
Illustrations
50%
Comprehensive

Is the Book Comprehensive?

Covers the Basic
25%
Tutorials & Exercises
100%
Relevance

Is the Book Relevant?

Up-to-date
75%
Covers Deep Concepts
75%

What will you learn from this book?

You will learn how to write computer programs for single-board computers. In addition, you will learn the fundamentals of ARM architecture and hack machine code. The book provides plenty of exercises to practice your skills.

Why this book may not be right fit for you?

If you are a beginner to programming, many concepts will take more effort to grasp because of technical jargons and inadequate beginner friendly instructions. I recommend an easier/illustrated one like Learn to Program with Assembly if you do not have any programming experience.

What are other people saying?

This book has great reviews in Amazon and Reddit.

For me this was a pretty good read. It covered an unexpectedly wide area of not just aarch64 but also the FPU, NEON, optimizing code, hacking, and a few other areas. Each chapter gives enough detail and flavour of the topic.
Paul
Good Reads
This is the best introduction to AARCH64v8 (ARM 64-bit) assembly that I have read. In addition to the basics the book covers FPU operations and parallel processing on the Neon co-processor.
Dexter
Good Reads

Raspberry Pi Operating System Assembly Language

Learning Assembly On Raspberry Pi

Rating:
4.5/5

Author: Bruce Smith

Number of Pages: 328

Time to Read: 22 hours

Published: March 18, 2021

Style of Writing: Hybrid

Ideal for: Advanced learners

Why do we like this book?

The book only requires a few tools to get started. All you need is Raspberry Pi Operating System installed on your Raspberry Pi. The book is up-to-date with lots of practice exercises. The book also explains the concepts in-depth.

Easy To Read

Is it Easy to Read?

Plain English/Jargon Free
25%
Illustrations
50%
Comprehensive

Is the Book Comprehensive?

Covers the Basic
75%
Tutorials & Exercises
75%
Relevance

Is the Book Relevant?

Up-to-date
75%
Covers Deep Concepts
75%

What will you learn from this book?

The book teaches you to be proficient in the assembly language program. The book includes 28 programs to practice machine code. You will learn to program ARM machine code on your Raspberry Pi.

Why this book may not be right fit for you?

If you have never coded before, this book might be overwhelming for you to start due to technical jargons. I recommend starting with Assembly x64 Programming In Easy Steps and Learn to Program with Assembly before reading this book.

Newsletter
Our newsletter

Become A Better Programmer In Just 15 Minutes🎯

Subscribe to my newsletter for valuable insights on thriving as a software engineer, helping you excel in your career.

Morshed
Software Engineer

Morshed Alam

I'm the creator of Savvy Programmer, a blog for programmers to level up their skills and advance their career. Through this blog, I'll be your guide in your programming journey no matter how far into it you are!

Table of Contents

Newsletter

Newsletter
Our Newsletter

Become A Better Programmer In Just 15 Minutes🎯

Subscribe to my newsletter for valuable insights on thriving as a software engineer, helping you excel in your career.

Copyright © | 2022 Savvy Programmer