XWe have detected your location as outside the U.S/Canada, if you think this is wrong, you can choose your location.

Macmillan Higher Education Celebrating 20 years of Macmillan Study Skills

Cart

Continue Shopping
All prices are shown including VAT
The submitted promocode is invalid
* Applied promocode: ×

Important information on your ebook order

Low-Level Programming

C, Assembly, and Program Execution on Intel® 64 Architecture

Author(s):
Publisher:

Apress

Pages: 435
Downloads:

Flyer

Further Actions:

Recommend to library

AVAILABLE FORMATS

Paperback - 9781484224021

29 June 2017

€58.84

Free Shipping

In stock

Ebook - 9781484224038

27 June 2017

€44.02

In stock

All prices are shown including VAT

Learn Intel 64 assembly language and architecture, become proficient in C, and understand how the programs are compiled and executed down to machine instructions, enabling you to write robust, high-performance code.

Low-Level...

Show More

Learn Intel 64 assembly language and architecture, become proficient in C, and understand how the programs are compiled and executed down to machine instructions, enabling you to write robust, high-performance code.

Low-Level Programming explains Intel 64 architecture as the result of von Neumann architecture evolution.  The book teaches the latest version of the C language (C11) and assembly language from scratch.  It covers the entire path from source code to program execution, including generation of ELF object files, and static and dynamic linking. Code examples and exercises are included along with the best code practices. Optimization capabilities and limits of modern compilers are examined, enabling you to balance between program readability and performance. The use of various performance-gain techniques is demonstrated, such as SSE instructions and pre-fetching. Relevant Computer Science topics such as models of computation and formal grammars are addressed, and their practical value explained.

What You'll Learn

Low-Level Programming teaches programmers to:

  • Freely write in assembly language
  • Understand the programming model of Intel 64
  • Write maintainable and robust code in C11
  • Follow the compilation process and decipher assembly listings
  • Debug errors in compiled assembly code
  • Use appropriate models of computation to greatly reduce program complexity
  • Write performance-critical code
  • Comprehend the impact of a weak memory model in multi-threaded applications

Who This Book Is For

Intermediate to advanced programmers and programming students

Show Less

Teaches how to use x64 assembly language to write low-level code for performance-critical programs
 
Shows how to compile and execute low-level code in C inside the Intel 64 hardware and OS framework

Provides practice of a variety of optimization, debugging, and performance-gain techniques

Part I: Assembly Language and Computer Architecture
Chapter 1: Basic Computer Architecture
Chapter 2: Assembly Language
Chapter 3: Legacy
Chapter 4: Virtual Memory
Chapter 5: Compilation Pipeline
Chapter 6: Interrupts and System Calls
Chapter 7: Models of Computation
Part II: The C Programming Language
Chapter 8: Basics
Chapter 9: Type System
Chapter 10: Code Structure
Chapter 11: Memory
Chapter 12: Syntax, Semantics, and Pragmatics
Chapter 13: Good Code Practices
Part III: Between C and Assembly
Chapter 14: Translation Details
Chapter 15: Shared Objects
Chapter 16: Performance
Chapter 17: Multithreading
Part IV: Appendices
Chapter 18: Appendix A: Using gdb
Chapter 19: Appendix B: Using Make
Chapter 20: Appendix C: System Calls
Chapter 21: Appendix D: Performance Tests
Chapter 22: Bibliography.- 

Add a review

Igor Zhirkov teaches his highly successful “System Programming Languages” course at ITMO University in Saint Petersburg. He studied at Saint Petersburg Academic University and received his master degree from ITMO University. Currently, he is doing research in verified C refactorings as part of his PhD thesis and formalization of Bulk Synchronous Parallelism library in C at IMT Atlantique in Nantes, France. His main interests are low-level programming, programming language theory, and type theory.

Show More

Igor Zhirkov teaches his highly successful “System Programming Languages” course at ITMO University in Saint Petersburg. He studied at Saint Petersburg Academic University and received his master degree from ITMO University. Currently, he is doing research in verified C refactorings as part of his PhD thesis and formalization of Bulk Synchronous Parallelism library in C at IMT Atlantique in Nantes, France. His main interests are low-level programming, programming language theory, and type theory.

Show Less

New Publications 

Best Sellers