• Complain

Jonathan Bartlett - Learn to Program with Assembly: Foundational Learning for New Programmers

Here you can read online Jonathan Bartlett - Learn to Program with Assembly: Foundational Learning for New Programmers full text of the book (entire story) in english for free. Download pdf and epub, get meaning, cover and reviews about this ebook. year: 2021, publisher: Apress, genre: Home and family. Description of the work, (preface) as well as reviews are available. Best literature library LitArk.com created for fans of good reading and offers a wide selection of genres:

Romance novel Science fiction Adventure Detective Science History Home and family Prose Art Politics Computer Non-fiction Religion Business Children Humor

Choose a favorite category and find really read worthwhile books. Enjoy immersion in the world of imagination, feel the emotions of the characters or learn something new for yourself, make an fascinating discovery.

Jonathan Bartlett Learn to Program with Assembly: Foundational Learning for New Programmers
  • Book:
    Learn to Program with Assembly: Foundational Learning for New Programmers
  • Author:
  • Publisher:
    Apress
  • Genre:
  • Year:
    2021
  • Rating:
    3 / 5
  • Favourites:
    Add to favourites
  • Your mark:
    • 60
    • 1
    • 2
    • 3
    • 4
    • 5

Learn to Program with Assembly: Foundational Learning for New Programmers: summary, description and annotation

We offer to read an annotation, description, summary or preface (depends on what the author of the book "Learn to Program with Assembly: Foundational Learning for New Programmers" wrote himself). If you haven't found the necessary information about the book — write in the comments, we will try to find it.

Many programmers have limited effectiveness because they dont 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 Bartletts 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 ForAnyone who wants to know how their computer really works under the hood, including first time programmers, students, and professionals.

Jonathan Bartlett: author's other books


Who wrote Learn to Program with Assembly: Foundational Learning for New Programmers? Find out the surname, the name of the author of the book and a list of all author's works by series.

Learn to Program with Assembly: Foundational Learning for New Programmers — read online for free the complete book (whole text) full work

Below is the text of the book, divided by pages. System saving the place of the last page read, allows you to conveniently read the book "Learn to Program with Assembly: Foundational Learning for New Programmers" online for free, without having to search again every time where you left off. Put a bookmark, and you can go to the page where you finished reading at any time.

Light

Font size:

Reset

Interval:

Bookmark:

Make
Contents
Landmarks
Book cover of Learn to Program with Assembly Jonathan Bartlett Learn to - photo 1
Book cover of Learn to Program with Assembly
Jonathan Bartlett
Learn to Program with Assembly
Foundational Learning for New Programmers
1st ed.
Logo of the publisher Jonathan Bartlett Tulsa OK USA ISBN - photo 2
Logo of the publisher
Jonathan Bartlett
Tulsa, OK, USA
ISBN 978-1-4842-7436-1 e-ISBN 978-1-4842-7437-8
https://doi.org/10.1007/978-1-4842-7437-8
Jonathan Bartlett 2021
This work is subject to copyright. All rights are solely and exclusively licensed by the Publisher, whether the whole or part of the material is concerned, specifically the rights of translation, reprinting, reuse of illustrations, recitation, broadcasting, reproduction on microfilms or in any other physical way, and transmission or information storage and retrieval, electronic adaptation, computer software, or by similar or dissimilar methodology now known or hereafter developed.
The use of general descriptive names, registered names, trademarks, service marks, etc. in this publication does not imply, even in the absence of a specific statement, that such names are exempt from the relevant protective laws and regulations and therefore free for general use.
The publisher, the authors and the editors are safe to assume that the advice and information in this book are believed to be true and accurate at the date of publication. Neither the publisher nor the authors or the editors give a warranty, expressed or implied, with respect to the material contained herein or for any errors or omissions that may have been made. The publisher remains neutral with regard to jurisdictional claims in published maps and institutional affiliations.

This Apress imprint is published by the registered company APress Media, LLC part of Springer Nature.

The registered company address is: 1 New York Plaza, New York, NY 10004, U.S.A.

Dedicated to Dale and Cindy Hanchey. Learning from their wisdom set me up for a career full of success.

Any source code or other supplementary material referenced by the author in this book is available to readers on GitHub. For more detailed information, please visit http://www.apress.com/source-code.

Table of Contents
Part I: Assembly Language Basics
Part II: Operating System Basics
Part III: Programming Language Topics
Part IV: Appendixes
About the Author
Jonathan Bartlett
is a software developer researcher and writer His first book Programming - photo 3
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 Senior Software Research and Development Engineer for Specialized Bicycle Components with a focus on cross-team and cross-platform integration work.
About the Technical Reviewer
Paul Cohen

joined Intel Corporation during the very early days of the x86 architecture, starting with the 8086, and retired from Intel after 26 years in sales/marketing/management. He is currently partnered with Douglas Technology Group, focusing on the creation of technology books on behalf of Intel and other corporations. Paul also teaches a class that transforms middle- and high-school students into real, confident entrepreneurs, in conjunction with the Young Entrepreneurs Academy (YEA), and is a traffic commissioner for the city of Beaverton, Oregon, and on the board of directors of multiple nonprofit organizations.

The Author(s), under exclusive license to APress Media, LLC, part of Springer Nature 2021
J. Bartlett Learn to Program with Assembly https://doi.org/10.1007/978-1-4842-7437-8_1
1. Introduction
Jonathan Bartlett
(1)
Tulsa, OK, USA
1.1 The Purpose of the Book

Have you ever wondered how your computer works? I mean, how it really works, underneath the hood? Ive found that many people, including professional computer programmers, actually have no idea how computers operate at their most fundamental level.

You need to read this book whether or not you ever plan on writing assembly language code. If you plan on programming computers, you need to read this book in order to demystify the operation of your most basic toolthe processor itself. Ive worked with a lot of programmers over the years. While you can do good work only knowing high-level languages, I have found that there is a glass ceiling of effectiveness that awaits programmers who havent learned the machines own language.

Learning assembly language is about learning how the processor itself thinks about your code. It is about gaining the mind of the machine. Even if you never use assembly language in practice, the depth of understanding you will receive by learning assembly language will make your time and effort worthwhile. You will understand at a more visceral level the various trade-offs that are made with different programming languages and why certain high-level operations may be faster than others and get an overall sense of what your computer is really doing.

Additionally, while the practical uses of assembly language are getting fewer and further between, there are still many places where assembly language knowledge is needed. Compiler writers, kernel developers, and high-performance library implementers all utilize assembly language to some degree and probably always will. Additionally, embedded developers, because of resource constraints, often program in assembly language as well.

1.2 Who Is This Book For?

This book is for programmers at any level. This book should work as your first or your fortieth programming book. Some later chapters will assume some familiarity with various programming languages , but the core content is written so that anyone can pick it up and read it.

I generally assume some working knowledge of Linux and the command line. However, if you havent used the command line, Appendix B will give a brief introduction.

If you dont use Linux as your primary operating system, thats okay, too. Ive built a Docker image that is customized to work with this book, and Appendix A will help you get started using it.

You only need to know the basicshow to run programs on the command line, how to edit text files, etc. If you have done any work at all on the command line (or have read and worked through Appendix B), you probably know everything that you need to get started. If you havent, there are numerous tutorials on the Internet about getting started on the command line. You dont need to be an advanced systems administrator. If you know how to change location, edit files, and create directories, thats all the skills you actually need.

1.3 Why Learn Assembly Language?

In the modern age of modern programming languages where a single line of code can replace hundreds of lines of assembly language, why bother to study assembly language at all? The fact is assembly language is how your computer runs. Any good craftsman knows how their tools work, and computer programming is no different. Knowing your tools helps you get the most out of them .

Next page
Light

Font size:

Reset

Interval:

Bookmark:

Make

Similar books «Learn to Program with Assembly: Foundational Learning for New Programmers»

Look at similar books to Learn to Program with Assembly: Foundational Learning for New Programmers. We have selected literature similar in name and meaning in the hope of providing readers with more options to find new, interesting, not yet read works.


Reviews about «Learn to Program with Assembly: Foundational Learning for New Programmers»

Discussion, reviews of the book Learn to Program with Assembly: Foundational Learning for New Programmers and just readers' own opinions. Leave your comments, write what you think about the work, its meaning or the main characters. Specify what exactly you liked and what you didn't like, and why you think so.