Introduction to Assembly Language
๐Ÿ’ป

Introduction to Assembly Language

โ˜… Premium ยท ๐Ÿ“– 38 lessons

Introduction to Assembly Language teaches x86-64 assembly programming from the ground up using the GNU Assembler (GAS) and GCC on Linux. Students learn how the CPU executes instructions, how memory and registers work, and how to write real programs using system calls and C library functions. The course covers data declarations, arithmetic, loops, the call stack, arrays, strings, and debugging with GDB โ€” finishing with mixed-language C and Assembly programming and a look at how the Linux process model works under the hood.

๐Ÿ“š Get Access by Buying the Book
Every copy includes a free access code for this course.
Buy on Amazon โ†’
โ† Back to Courses

Course Content

38 lessons
Module 1: Foundations of Assembly Language 6 items
1.1
What Is Assembly Language?
Video
1.2
Binary and Hexadecimal Numbers
Video
1.3
The x86-64 Architecture
Video
1.4
Your Linux Development Environment
Video
1.5
Set Up and Run Your First Assembly Program
Lab
1.6
Foundations of Assembly Language Quiz
Quiz
Module 2: Structure of a GAS Program 5 items
2.1
Program Sections and Entry Points
Video
2.2
Declaring Data
Video
2.3
Registers and Moving Data
Video
2.4
Sections, Data, and Registers
Lab
2.5
Structure of a GAS Program Quiz
Quiz
Module 3: Memory Addressing and Arithmetic 5 items
3.1
Memory Addressing
Video
3.2
Integer Arithmetic
Video
3.3
Comparisons and Branching
Video
3.4
Arithmetic and Conditional Jumps
Lab
3.5
Memory Addressing and Arithmetic Quiz
Quiz
Module 4: Loops, the Stack, and Procedures 5 items
4.1
Loops and Decision Logic
Video
4.2
The Stack
Video
4.3
Writing Procedures
Video
4.4
Loops and Procedures
Lab
4.5
Loops, the Stack, and Procedures Quiz
Quiz
Module 5: Arrays, Strings, and Debugging 6 items
5.1
Arrays and Indexed Addressing
Video
5.2
String Processing
Video
5.3
Mastering GDB
Video
5.4
Arrays, Strings, and GDB
Lab
5.5
Bubble Sort in Assembly
Lab
5.6
Arrays, Strings, and Debugging Quiz
Quiz
Module 6: System Calls and C Integration 5 items
6.1
Linux System Calls
Video
6.2
Calling C Library Functions
Video
6.3
Mixed-Language Programming
Video
6.4
System Calls and C Functions
Lab
6.5
System Calls and C Integration Quiz
Quiz
Module 7: Advanced Programs and the Modern System 6 items
7.1
Algorithms in Assembly
Video
7.2
Understanding the Linux Process
Video
7.3
Performance, Reverse Engineering, and Next Steps
Video
7.4
Fibonacci Sequence
Lab
7.5
Final Assembly Language Project
Lab
7.6
Advanced Programs and the Modern System Quiz
Quiz