Raspberry Pi Assembly Language Programming: ARM Processor Coding

  • 4h
  • Stephen Smith
  • Apress
  • 2019

Gain all the skills required to dive into the fundamentals of the Raspberry Pi hardware architecture and how data is stored in the Pi’s memory. This book provides you with working starting points for your own projects while you develop a working knowledge of Assembly language programming on the Raspberry Pi.

You'll learn how to interface to the Pi’s hardware including accessing the GPIO ports. The book will cover the basics of code optimization as well as how to inter-operate with C and Python code, so you'll develop enough background to use the official ARM reference documentation for further projects.

With Raspberry Pi Assembly Language Programming as your guide you'll study how to read and reverse engineer machine code and then then apply those new skills to study code examples and take control of your Pi’s hardware and software both.

What You'll Learn

  • Program basic ARM 32-Bit Assembly Language
  • Interface with the various hardware devices on the Raspberry Pi
  • Comprehend code containing Assembly language
  • Use the official ARM reference documentation

Who This Book Is For

Coders who have already learned to program in a higher-level language like Python, Java, C#, or C and now wish to learn Assembly programming.

About the Author

Stephen Smith is a retired Software Architect, located in Gibsons, BC, Canada. He's been developing software since high-school, or way too many years to record. Since retiring he has pursued Artificial Intelligence programming, earned his Advanced HAM Radio License and enjoys mountain biking, hiking, and nature photography. He continues to write his popular technology blog at smist08.wordpress.com.

In this Book

  • Getting Started
  • Loading and Adding
  • Tooling Up
  • Controlling Program Flow
  • Thanks for the Memories
  • Functions and the Stack
  • Linux Operating System Services
  • Programming GPIO Pins
  • Interacting with C and Python
  • Multiply, Divide, and Accumulate
  • Floating-Point Operations
  • NEON Coprocessor
  • Conditional Instructions and Optimizing Code
  • Reading and Understanding Code
  • Thumb Code
  • 64 Bits
SHOW MORE
FREE ACCESS