Skip to content

    Read more about x86-64 Assembly Language Programming with Ubuntu

    x86-64 Assembly Language Programming with Ubuntu

    (2 reviews)

    Ed Jorgensen, University of Nevada

    Copyright Year:

    Publisher: Ed Jorgensen

    Language: English

    Formats Available

    Conditions of Use

    Attribution-NonCommercial-ShareAlike Attribution-NonCommercial-ShareAlike
    CC BY-NC-SA

    Reviews

    Learn more about reviews.

    Reviewed by Hassan Salmani, Associate Professor, Howard University on 12/14/20

    The book presents a good coverage of x86-64 Assembly Language Programming. The book also provides some practical details regarding the execution of x86-64 instructions under the Ubuntu operating system. Further, each chapter of the book includes... read more

    Reviewed by Mehrdad Nourai, Assistant Professor, Framingham State University on 6/13/20

    The book seems to cover many details of x86-64 Assembly, however, it does not teach how to program. read more

    Table of Contents

    • 1.0 Introduction
    • 2.0 Architecture Overview
    • 3.0 Data Representation
    • 4.0 Program Format
    • 5.0 Tool Chain
    • 6.0 DDD Debugger
    • 7.0 Instruction Set Overview
    • 8.0 Addressing Modes
    • 9.0 Process Stack
    • 10.0 Program Development
    • 11.0 Macros
    • 12.0 Functions
    • 13.0 System Services
    • 14.0 Multiple Source Files
    • 15.0 Stack Buffer Overflow
    • 16.0 Command Line Arguments
    • 17.0 Input/Output Buffering
    • 18.0 Floating-Point instructions
    • 19.0 Parallel Processing
    • 20.0 Interrupts
    • 21.0 Appendix A - ASCII Table
    • 22.0 Appendix B - Instruction Set Summary
    • 23.0 Appendix C - System Services
    • 24.0 Appendix D - Quiz Question Answers

    Ancillary Material

    Submit ancillary resource

    About the Book

    The purpose of this text is to provide a reference for University level assembly language and systems programming courses. Specifically, this text addresses the x86-64 instruction set for the popular x86-64 class of processors using the Ubuntu 64-bit Operating System (OS). While the provided code and various examples should work under any Linux-based 64-bit OS, they have only been tested under Ubuntu 14.04 LTS (64-bit). The x86-64 is a Complex Instruction Set Computing (CISC) CPU design. This refers to the internal processor design philosophy. CISC processors typically include a wide variety of instructions (sometimes overlapping), varying instructions sizes, and a wide range of addressing modes. The term was retroactively coined in contrast to Reduced Instruction Set Computer (RISC3).

    About the Contributors

    Author

    Ed Jorgensen

    Contribute to this Page

    Suggest an edit to this book record