This repository is intended to organize assembly coding exercises during my learning process. All code written here is using 32-bit x86 NASM syntax and should be assembled/linked on Linux using the following:
- nasm >= v2.15.05
- gcc => 11.4.0
- gcc-multilib
- Executables are intended to be at
binfolder - Inside
libfolder:asm_sourcecontains assembly source codec_sourcecontains C source codeobject_filesis intended to have object files generated by NASM. This folder is ignored by gitsupportcontains text files and other files that can be used on assembly source code to perform operations.
Run on your terminal:
make generate file_name=FILE_NAMEWhich FILE_NAME being the name of a file located at lib/asm_source without the .asm extension.
Example:
make generate file_name=multiply_listShould generate an executable for multiply_list.asm on bin/ folder.
Disclaimer: This project is using ELF file format and specifying elf_i386 for GNU ld to generate a 32-bits executable. If you're not running on Linux, you may need to adapt the Makefile to your liking.
Finally, run the executable:
bin/FILE_NAME