Warehouse Stock Clearance Sale

Grab a bargain today!


Sign Up for Fishpond's Best Deals Delivered to You Every Day
Go
Learn to Program with ­Assembly
Foundational Learning for New Programmers

Rating
Format
Paperback, 328 pages
Published
United States, 1 November 2021


Many programmers have limited effectiveness because they don't have a deep understanding of how their computer actually works under the hood. In Learn to Program with Assembly, you will learn to program in assembly language - the language of the computer itself.


Assembly language is often thought of as a difficult and arcane subject. However, author Jonathan Bartlett presents the material in a way that works just as well for first-time programmers as for long-time professionals. Whether this is your first programming book ever or you are a professional wanting to deepen your understanding of the computer you are working with, this book is for you. The book teaches 64-bit x86 assembly language running on the Linux operating system. However, even if you are not running Linux, a provided Docker image will allow you to use a Mac or Windows computer as well.


The book starts with extremely simple programs to help you get your grounding, going steadily deeper with each chapter. At the end of the first section, you will be familiar with most of the basic instructions available on the processor that you will need for any task. The second part deals with interactions with the operating system. It shows how to make calls to the standard library, how to make direct system calls to the kernel, how to write your own library code, and how to work with memory. The third part shows how modern programming language features such as exception handling, object-oriented programming, and garbage collection work at the assembly language level.


Additionally, the book comes with several appendices covering various topics such as running the debugger, vector processing, optimization principles, a list of common instructions, and other important subjects.


This book is the 64-bit successor to Jonathan Bartlett's previous book, Programming from the Ground Up, which has been a programming classic for more than 15 years. This book covers similar ground but with modern 64-bit processors, and also includes a lot more information about how high level programming language features are implemented in assembly language.


What You Will Learn

How the processor operates How computers represent data internally How programs interact with the operating system How to write and use dynamic code libraries How high-level programming languages implement their features


Who This Book Is For

Anyone who wants to know how their computer really works under the hood, including first time programmers, students, and professionals.


Chapter 1: Introduction

Chapter 2: The Truth About Computers

Part I: Assembly Language Basics

Chapter 3: Your First Program

Chapter 4: Registers and Simple Arithmetic

Chapter 5: Comparison, Branching and Looping

Chapter 6: Working with Data in Memory

Chapter 7: Data Records

Chapter 8: Signed Numbers and Bitwise Operations

Chapter 9: More Instructions You Should Know

Part II: Operating System Basics

Chapter 10: Making System Calls

Chapter 11: The Stack and Function Calls

Chapter 12: Calling Functions from Libraries

Chapter 13: Common and Useful Assembler Directives

Chapter 14: Dynamic Memory Allocation

Chapter 15: Dynamic Linking

Part III: Programming Language Topics

Chapter 16: Basic Language Features Represented in Assembly Language

Chapter 17: Tracking Memory Allocations

Chapter 18: Object-Oriented Programming

Chapter 19: Conclusion and Acknowlegments

Part IV: Appendices

Appendix A: Getting Set Up with Docker

Appendix B: The Command Line

Appendix C: Debugging with GDB

Appendix D: Nasm (Intel) Assembly Language Syntax

Appendix E: Common x86-64 Instructions

Appendix F: Floating Point Numbers

Appendix G: The Starting State of the Stack

Appendix H: ASCII, Unicode, and UTF-8

Appendix I: Optimization

Appendix J: A Simplified Garbage Collector

Appendix K: Going to an Even Lower Level

Show more

Our Price
HK$462
Elsewhere
HK$552.32
Save HK$90.32 (16%)
Ships from USA Estimated delivery date: 24th Apr - 2nd May from USA
Free Shipping Worldwide

Buy Together
+
Buy together with Programming for Absolute Beginners at a great price!
Buy Together
HK$781
Elsewhere Price
HK$863.66
You Save HK$82.66 (10%)

Product Description


Many programmers have limited effectiveness because they don't have a deep understanding of how their computer actually works under the hood. In Learn to Program with Assembly, you will learn to program in assembly language - the language of the computer itself.


Assembly language is often thought of as a difficult and arcane subject. However, author Jonathan Bartlett presents the material in a way that works just as well for first-time programmers as for long-time professionals. Whether this is your first programming book ever or you are a professional wanting to deepen your understanding of the computer you are working with, this book is for you. The book teaches 64-bit x86 assembly language running on the Linux operating system. However, even if you are not running Linux, a provided Docker image will allow you to use a Mac or Windows computer as well.


The book starts with extremely simple programs to help you get your grounding, going steadily deeper with each chapter. At the end of the first section, you will be familiar with most of the basic instructions available on the processor that you will need for any task. The second part deals with interactions with the operating system. It shows how to make calls to the standard library, how to make direct system calls to the kernel, how to write your own library code, and how to work with memory. The third part shows how modern programming language features such as exception handling, object-oriented programming, and garbage collection work at the assembly language level.


Additionally, the book comes with several appendices covering various topics such as running the debugger, vector processing, optimization principles, a list of common instructions, and other important subjects.


This book is the 64-bit successor to Jonathan Bartlett's previous book, Programming from the Ground Up, which has been a programming classic for more than 15 years. This book covers similar ground but with modern 64-bit processors, and also includes a lot more information about how high level programming language features are implemented in assembly language.


What You Will Learn

How the processor operates How computers represent data internally How programs interact with the operating system How to write and use dynamic code libraries How high-level programming languages implement their features


Who This Book Is For

Anyone who wants to know how their computer really works under the hood, including first time programmers, students, and professionals.


Chapter 1: Introduction

Chapter 2: The Truth About Computers

Part I: Assembly Language Basics

Chapter 3: Your First Program

Chapter 4: Registers and Simple Arithmetic

Chapter 5: Comparison, Branching and Looping

Chapter 6: Working with Data in Memory

Chapter 7: Data Records

Chapter 8: Signed Numbers and Bitwise Operations

Chapter 9: More Instructions You Should Know

Part II: Operating System Basics

Chapter 10: Making System Calls

Chapter 11: The Stack and Function Calls

Chapter 12: Calling Functions from Libraries

Chapter 13: Common and Useful Assembler Directives

Chapter 14: Dynamic Memory Allocation

Chapter 15: Dynamic Linking

Part III: Programming Language Topics

Chapter 16: Basic Language Features Represented in Assembly Language

Chapter 17: Tracking Memory Allocations

Chapter 18: Object-Oriented Programming

Chapter 19: Conclusion and Acknowlegments

Part IV: Appendices

Appendix A: Getting Set Up with Docker

Appendix B: The Command Line

Appendix C: Debugging with GDB

Appendix D: Nasm (Intel) Assembly Language Syntax

Appendix E: Common x86-64 Instructions

Appendix F: Floating Point Numbers

Appendix G: The Starting State of the Stack

Appendix H: ASCII, Unicode, and UTF-8

Appendix I: Optimization

Appendix J: A Simplified Garbage Collector

Appendix K: Going to an Even Lower Level

Show more
Product Details
EAN
9781484274361
ISBN
1484274369
Publisher
Other Information
Illustrated
Dimensions
25.4 x 17.8 x 1.8 centimeters (0.60 kg)

Table of Contents

Chapter 1: Introduction.- Chapter 2: The Truth About Computers.- Part I: Assembly Language Basics.- Chapter 3: Your First Program.- Chapter 4: Registers and Simple Arithmetic.- Chapter 5: Comparison, Branching and Looping.- Chapter 6: Working with Data in Memory.- Chapter 7: Data Records.- Chapter 8: Signed Numbers and Bitwise Operations.- Chapter 9: More Instructions You Should Know.- Part II: Operating System Basics.- Chapter 10: Making System Calls.- Chapter 11: The Stack and Function Calls.- Chapter 12: Calling Functions from Libraries.- Chapter 13: Common and Useful Assembler Directives.- Chapter 14: Dynamic Memory Allocation.- Chapter 15: Dynamic Linking.- Part III: Programming Language Topics.- Chapter 16: Basic Language Features Represented in Assembly Language.- Chapter 17: Tracking Memory Allocations.- Chapter 18: Object-Oriented Programming.- Chapter 19: Conclusion and Acknowledgments.- Part IV: Appendices.- Appendix A: Getting Set Up with Docker.- Appendix B: The Command Line.- Appendix C: Debugging with GDB.- Appendix D: Nasm (Intel) Assembly Language Syntax.- Appendix E: Common x86-64 Instructions.- Appendix F: Floating Point Numbers.- Appendix G: The Starting State of the Stack.- Appendix H: ASCII, Unicode, and UTF-8.- Appendix I: Optimization.- Appendix J: A Simplified Garbage Collector.- Appendix K: Going to an Even Lower Level.

About the Author

Jonathan Bartlett is a software developer, researcher, and writer. His first book, Programming from the Ground Up, has been required reading in computer science programs from DeVry to Princeton. He has been the sole or lead author for eight books on topics ranging from computer programming to calculus. He is a technical lead for ITX, where his specialty is getting stuck projects unstuck.

Show more
Review this Product
Ask a Question About this Product More...
 
Look for similar items by category
Item ships from and is sold by Fishpond.com, Inc.

Back to top