MultiASM - The Purple Book - Programming in Assembler Coursebook
Current version of PDF Book
Generate new PDF book!
Writing rules
Versions
Authors
Preface
Project Information
Introduction
Computer Architectures
Overall View on Computer Architecture: Processor, Memory, IO, Buses
Von Neumann vs Harvard Architectures, Mixed Architectures
Components of Processor: Registers, ALU, Bus Control, Instruction Decoder
CISC, RISC
Processor Taxonomies, SISD, SIMD, MIMD
Memory, Types and Their Functions
Peripherals
Instruction Execution Process
Modern Processors: Pipeline, Superscalar, Branch Prediction, Hyperthreading
Fundamentals of Addressing Modes
Fundamentals of Data Encoding, Big Endian, Little Endian
Interrupt Controller, Interrupts
DMA
Programming in Assembler for IoT and Embedded Systems
Evolution of the Hardware
Specific Elements of AVR Architecture
Registers
Data Types and Encoding
Addressing Modes
Instruction Encoding
Instruction Set
Best Practices on Structural Programming
3 Levels of Programming: C++, Libraries, Assembler
Software Tools for AVR
Hardware Debugging
Energy Efficiency
Programming in Assembler for Mobiles and ARM
Overview of ARM and Mobile Device Architecture
ARM Assembly Language Specifics
Registers
Data Types and Encoding
Addressing Modes
Basic Instructions and Operations
Procedures and Functions Call Standards
Compatibility for Compilers and OSes
Peripheral Management in RPi
Advanced Assembly Programming
Vectorisation
Assembly Code Optimisation
Energy Efficient Coding: Sleep Modes, Hibernate
Cross-Platform Development
Energy Efficient Coding: Sleep Modes, Hibernate
Programming in Assembler for PC
Evolution of x86 Processors
Specific Elements of the x86 and x64 Architectures
Register Set
Data Types and Encoding
x64 Addressing: Addressing Modes in Instructions
Principles of Instructions Encoding
Instruction Set of x86 - Essentials
Procedures, Functions and Calls in Windows and Linux
Compatibility with HLL Compilers (C++, C#) and Operating Systems
FPU
MMX
Macros
Code Examples
Energy Efficient Programming
Interrupts
Optimisation