/Learn_ASM_With_C

Learn ASM With C

Primary LanguageC

Learn ASM with C

It is a small repo for teach my friends/students how x86 Assembly works.

This project is totally for teaching people how assembly commands are working.

So, this project isn't adds functions that compiles like inline assembly.

Instructions

Registers

  • RAX - 64bit variable 1

  • RBX - 64bit variable 2

  • RCX - 64bit variable 3

  • RDX - 64bit variable 4

  • EAX - 32bit variable 1

  • EBX - 32bit variable 2

  • ECX - 32bit variable 3

  • EDX - 32bit variable 4

  • AX - 16bit variable 1

  • BX - 16bit variable 2

  • CX - 16bit variable 3

  • DX - 16bit variable 4

  • AH - 8bit variable 1

  • BH - 8bit variable 2

  • CH - 8bit variable 3

  • DH - 8bit variable 4

  • AL - 8bit variable 5

  • BL - 8bit variable 6

  • CL - 8bit variable 7

  • DL - 8bit variable 8

Commands

  • MOV - Set a register

  • JMP - Jump to a process layer

  • CALL - Call a paragraph layer

  • PUSH - Send a value to CPU stack

  • POP - Get a value from CPU stack