Skip to content

FauZaPespi/ASM-Course

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

3 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

ASM (NASM) Learning Course

Overview

This repository contains a comprehensive ASM (NASM) learning course in both English and French. The course is designed to help beginners understand and practice assembly language programming.

Course Structure

English Version

  • File: asm_course_en.md
  • Content: Detailed theory, exercises, questions, and documentation in English.

French Version

  • File: asm_course_fr.md
  • Content: Detailed theory, exercises, questions, and documentation in French.

Exercises

  • File: asm_exercises.md
  • Content: A collection of exercises and their solutions to reinforce learning.

How to Use This Course

Prerequisites

  • Basic understanding of programming concepts.
  • Familiarity with command line interfaces.
  • NASM (Netwide Assembler) installed on your system.

Getting Started

  1. Install NASM: Follow the instructions in the course to install NASM on your system.
  2. Choose Your Language: Select either the English or French version of the course.
  3. Read the Theory: Start with the introduction to assembly language and work your way through the sections.
  4. Practice Exercises: Complete the exercises provided in the asm_exercises.md file.
  5. Review Questions: Test your understanding with the review questions at the end of each section.

Course Sections

  1. Introduction to Assembly Language: Learn what assembly language is and why it's important.
  2. Setting Up the Environment: Install NASM and set up your development environment.
  3. Basic Syntax and Structure: Understand the basic syntax and structure of assembly language.
  4. Data Types and Registers: Learn about data types and registers in assembly language.
  5. Basic Instructions: Explore basic instructions like moving data, arithmetic operations, and logical operations.
  6. Memory Addressing: Understand different memory addressing modes.
  7. Functions and Procedures: Learn how to define and call functions in assembly language.
  8. Working with the Stack: Understand how to use the stack for data storage and function calls.
  9. Input and Output: Learn how to read input and write output using system calls.
  10. Debugging and Tools: Discover debugging techniques and tools like GDB.
  11. Practical Exercises: Complete hands-on exercises to reinforce your learning.
  12. Review Questions: Test your understanding with review questions.
  13. Detailed Documentation: Access detailed documentation on instructions, registers, memory management, and system calls.

Contributing

Contributions are welcome! If you have any suggestions, improvements, or additional exercises, please feel free to contribute.

License

This course is licensed under the MIT License.

Contact

If you have any questions or need further assistance, please feel free to contact us.

Happy learning!

Made by @FauZaPespi with <3

PS: I use Mistral to correct & help me sometimes while I was creating these documents. don't shame me

About

This repository contains a comprehensive ASM (NASM) learning course in both English and French. The course is designed to help beginners understand and practice assembly language programming.

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors