- About and History of Assembly Language
- ARM vs x86-64 Instruction set
- Von Neumann Architecture
- Major Elements of Multi-core Computers
- Computer Components Top-level View
- Instruction Fetch and Execute Cycle
- Program flow of control without and with interrupts
- Bus Interconnection scheme
- The Decimal System
- Positional Number System
- The Binary System
- Convert between binary and decimal
- The Arithmetic and Logic Unit
- Boolean Algebra
- Logic Gates
- Data Organization: Bits, Nibbles, Words, Double Words, Quad Words and Long Words
- Logical Operation on Bits
- Sign Extension, Zero Extension, Contraction and Saturation
- Shift and Rotates
- The ASCII character encoding
- The Unicode Character Set
- hexadecimal compare table to decimal and binary
- 80x86 Addressing Modes
- Transistors and Memory in Computing
- How Transistors works
- IA-32 Architecture
- stack
- Heap
- 80x86 Register Addressing Mode
- Machine Instruction Characteristics
- Types of Operands
- The code section
- The static section
- The Read only data section
- The Storage Section
- The Var section
- The Basic Push Instruction
- The Basic pop Instruction
- Dynamic Memory Allocation and the Heap Segment
- Registors
- instruction code handling
- Constant Types
- String and Character Literal Constants
- Modifying val Objects at Arbitrary Points in Your Programs
- Using Pointers in Assembly Language
- Declaring Arrays in Your HLA Programs
- Accessing Elements of a Single-Dimensional Array
- Sorting an Array of Values
- Record Constants
- Unions
- Saving the State of the Machine
- Local and Global Symbol Types
- Pass by Value
- Pass by Reference
- Passing Parameters in Registers
- Passing Parameters on the Stack
- The mul and imul Instructions
- The div and idiv Instructions
- The cmp Instruction
- ASM program - moving immediate data
- Multiplying by a power of two
- Multiplication of Two Variables
- Multiplication of a Variable by a Constant
- Division by a Power of Two
- Arbitrary Base to Decimal
- Decimal to Arbitrary Base
- Interpreting Fixed-Point Numbers
- Fixed-Point Addition and Subtraction
- Fixed Point Multiplication
- Formats for the Powers of x
- Load-Store Single Register
- Load-Store Multiple Registers
- Moving Between Two VFP Registers
- Moving Between VFP Register and One Integer Register
- Sine Function Using Scalar Mode
- Sine Function Using Vector Mode
- Load or Store Single Structure Using One Lane
- Change Size of Elements in a Vector
- Bitwise Logical Operations
- Bitwise Logical Operations with Immediate Data
- Shift Left by Immediate
- Shift Left or Right by Variable
- Pulse Density Modulation
- Building the Interrupt-Driven Program