Details

Low-Level Programming


Low-Level Programming

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

von: Igor Zhirkov

CHF 94.50

Verlag: Apress
Format: PDF
Veröffentl.: 27.06.2017
ISBN/EAN: 9781484224038
Sprache: englisch

Dieses eBook enthält ein Wasserzeichen.

Beschreibungen

<div><p>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.</p><p><i>Low-Level Programming</i>&nbsp;explains Intel 64 architecture as the result of von Neumann architecture evolution.&nbsp;&nbsp;The book teaches the latest version of the C language (C11) and assembly language from scratch.&nbsp;&nbsp;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.&nbsp;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.</p><p><b>What You'll Learn</b></p><p><i>Low-Level Programming</i>&nbsp;teaches programmers to:</p><ul><li>Freely write in assembly language<br></li><li>Understand the programming model of Intel 64<br></li><li>Write maintainable and robust code in C11<br></li><li>Follow the compilation process and&nbsp;decipher assembly listings<br></li><li>Debug errors in compiled assembly code<br></li><li>Use appropriate models of computation to greatly reduce program complexity<br></li><li>Write performance-critical code<br></li><li>Comprehend the impact of a weak memory model in multi-threaded applications</li></ul><p><b>Who This Book Is For</b><br></p></div><div>Intermediate to advanced programmers and programming students</div><br>
<p><b>Part I: Assembly Language and Computer Architecture.-</b></p><p>Chapter 1: Basic Computer Architecture.-</p><p>Chapter 2: Assembly Language.-</p><p>Chapter 3: Legacy.-</p><p>Chapter 4: Virtual Memory.-</p><p>Chapter 5: Compilation Pipeline.-</p><p>Chapter 6: Interrupts and System Calls.-</p><p>Chapter 7: Models of Computation.-</p><p><b>Part II: The C Programming Language.-</b></p><p>Chapter 8: Basics.-</p><p>Chapter 9: Type System.-</p><p>Chapter 10: Code Structure.-</p><p>Chapter 11: Memory.-</p><p>Chapter 12: Syntax, Semantics, and Pragmatics.-</p>Chapter 13: Good Code Practices.-<p></p><p><b>Part III: Between C and Assembly.-</b></p><p>Chapter 14: Translation Details.-</p><p>Chapter 15: Shared Objects.-</p><p>Chapter 16: Performance.-</p><p>Chapter 17: Multithreading.-</p><p><b>Part IV: Appendices.-</b></p><p>Chapter 18: Appendix A:&nbsp;Using gdb.-</p><p>Chapter 19: Appendix B: Using Make.-</p><p>Chapter 20: Appendix C: System Calls.-</p><p>Chapter 21: Appendix D: Performance Tests.-</p><p> </p><p>Chapter 22: Bibliography.-</p>
<p><b>Igor Zhirkov</b>&nbsp;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.</p><p></p>
<p>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. </p>

<p><i>Low-Level Programming</i>&nbsp;explains Intel 64 architecture as the result of von Neumann architecture evolution. &nbsp;The book teaches the latest version of the C language (C11) and assembly language from scratch.&nbsp; 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.</p>

<p><i>Low-Level Programming</i>&nbsp;teaches programmers to:</p><ul><li>Freely write in assembly language<br></li><li>Understand the programming model of Intel 64<br></li><li>Write maintainable and robust code in C11<br></li><li>Follow the compilation process and&nbsp;decipher assembly listings<br></li><li>Debug errors in compiled assembly code<br></li><li>Use appropriate models of computation to greatly reduce program complexity<br></li><li>Write performance-critical code<br></li><li>Comprehend the impact of a weak memory model in multi-threaded applications<br></li></ul><p></p>
<p>Teaches how to use x64 assembly language to write low-level code for performance-critical programs</p><p>Shows how to compile and execute low-level code in C inside the Intel 64 hardware and OS framework</p><p>Provides practice of a variety of optimization, debugging, and performance-gain techniques</p>

Diese Produkte könnten Sie auch interessieren:

Software Process Modeling
Software Process Modeling
von: Silvia T. Acuna, Natalia Juristo
PDF ebook
CHF 118.00
A Software Process Model Handbook for Incorporating People's Capabilities
A Software Process Model Handbook for Incorporating People's Capabilities
von: Silvia T. Acuna, Natalia Juristo, Ana Maria Moreno, Alicia Mon
PDF ebook
CHF 177.00
XML for Bioinformatics
XML for Bioinformatics
von: Ethan Cerami
PDF ebook
CHF 59.00