Skip to content

ViktorPopp/LearnAssembly

Folders and files

NameName
Last commit message
Last commit date

Latest commit

Β 

History

20 Commits
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 

Repository files navigation

Full x64 Assembly Course

In this comprehensive tutorial, you will learn the fundamentals of writing 64-bit assembly language, an essential skill for understanding low-level programming and computer architecture. While the primary focus is on 64-bit assembly, much of the knowledge and techniques discussed here can also be applied to 32-bit systems, making this tutorial versatile for various use cases.

This tutorial is specifically tailored for Linux-based environments, ensuring you gain hands-on experience with tools and practices common to this platform. However, if you are using Windows, you can follow along by setting up a Linux-like environment through WSL (Windows Subsystem for Linux) or Cygwin.

To get the most out of this tutorial, you should already have a basic understanding of a compiled programming language such as C, C++, or Rust. These languages will provide a foundation for grasping the concepts and syntax of assembly language, as they share many underlying principles. By the end of this tutorial, you will have a solid understanding of 64-bit assembly and be able to apply it effectively in your projects.

Chapters

  1. Installation
  2. The exit system call
  3. Hello world
  4. Calling from C
  5. Registers
  6. Machine code ❌
  7. Basic Arithmetic ❌
  8. Labels and Unconditional Jumps ❌
  9. Flags, Comparisons and Conditional Jumps ❌
  10. Logical and Bitwise Operations ❌
  11. Data Types, Memory Addressing and the .data Section ❌
  12. The Stack ❌
  13. The call instruction ❌
  14. Calling External Functions ❌
  15. Using the Heap ❌
  16. Special mov instructions ❌
  17. Arithmetics part 2 ❌
  18. Manipulating Strings ❌
  19. Floating point arithmetic ❌
  20. NASM local labels ❌

About

πŸ’Ύ Full course on learning x64 assembly. Intended for system programmers and OS developers.

Resources

License

Stars

Watchers

Forks

Releases

No releases published