Ecosyste.ms: Awesome

An open API service indexing awesome lists of open source software.

Awesome Lists | Featured Topics | Projects

https://github.com/evancarroll/nasm_linux_asm

Learn assembly, with NASM and Linux.
https://github.com/evancarroll/nasm_linux_asm

assembly gcc linker linux nasm x86 x86-64

Last synced: 23 days ago
JSON representation

Learn assembly, with NASM and Linux.

Awesome Lists containing this project

README

        

NASM x86 and Linux
====

Learning Assembly is a monstrous task. These are some scripts that I created to
illuminate some concepts.

* System Calls
* Libc Integration (calling libc, from assembly)
* Passing NASM-generated .o to gcc
* Linking NASM-generated .o with LD directly
* NASM-directives specific to ELF

Simplicity First
====

For simplicity these tests are only concerned with

* Linux
* ELF Executables and Objects
* x86_64 (except for the use of `sysenter`)
* NASM
* Intel-syntax
* Where C is concerned, the GNU C Compiler `gcc`
* Where a linker is concerned, the GNU Linker `ld`
* Where a build system can simplify things, GNU Make `make`

Contributing
====

Got something you'd like to contribute? Follow these steps,

* Make a short, sweet, and poignant example.
* Inlcude a Makefile to build it that will run with GNU Make.
* Follow the above guidelines in "Simplicity First"
* Send a Pull Request on github