Mathematical instructions add, sub, mul, div
No lecture description Lesson locked purchase
Description
Unlock the power of low-level programming and learn how computers truly execute your code.
In this comprehensive course, you’ll master x86-64 Assembly Language step by step using the NASM assembler, while also learning how to interface Assembly with the C programming language for real-world applications.
We’ll begin with the absolute basics — installing NASM, setting up your environment, and writing your first “Hello World” program. From there, you’ll explore the fundamentals that drive every CPU:
-
How registers, memory, and the stack actually work
-
The MOV, JMP, CALL, and RET instructions explained in detail
-
Conditional logic and comparison with CMP, JE/JNE/JG/JL
-
Mathematical operations — ADD, SUB, MUL, DIV
-
Floating point operations
As your understanding grows, you’ll learn to mix Assembly with C building functions, exchanging data, and accessing pointers, arrays, and structures directly at the hardware level.
You’ll even learn how to create full 64-bit programs that call and return values across language boundaries, just like modern compilers do.
By the end of this course, you’ll be able to:
-
Write and debug 64-bit Assembly programs from scratch
-
Understand how compilers translate high-level code into Assembly
-
Build mixed C and Assembly projects that run on Linux or Windows
-
Perform arithmetic and floating-point operations at the register level
-
Optimize low-level code for performance and precision
Whether you’re an operating-system developer, compiler engineer, embedded programmer, or simply curious about how software really works beneath the surface — this course will give you a deep, practical understanding of Assembly language and how it drives everything else in computing.
Requirements
-
Basic C programming experience is recommended
Who This Course is For
People who want to learn how machines work
Software Engineers who want to become experts at low level programming
System engineers
What You Will be Learn
How to write and debug 64-bit Assembly programs from scratch
Understand how compilers translate high-level code into Assembly
Build mixed C and Assembly projects that run on Linux or Windows
Perform arithmetic and floating-point operations at the register level
Optimize low-level code for performance and precision
Dragon Zap Instructor
Daniel McCarthy is a seasoned software engineer, boasting an impressive career spanning over 14 years in the industry. Holding a Master's Degree in Advanced Computer Science from Cardiff Metropolitan University, his broad spectrum of experience encompasses everything from web development to complex compiler and interpreter development. Daniel has honed his skills in bootloader and kernel development. In testament to his proficiency in the field, he has designed two proprietary programming languages: Craft, a general-purpose language, and Marble, a web-focused language akin to PHP. Moreover, he has successfully developed compilers for the C programming language. A testament to his versatility, Daniel demonstrates proficiency in an extensive list of programming languages that includes C, C++, Java, x86 Assembly language, PIC assembly, SQL, PHP, HTML5, JavaScript, CSS, and of course, his own creations, Craft and Marble. His professional portfolio also includes the development of Linux kernel modules, a task he has executed with proficiency in a professional context. Currently, Daniel is channeling his wealth of experience and expertise into the education sector, with the aim of nurturing the next generation of professional software engineers.
Ask a question
Questions (0)