Skip to content
Random code snippets used to learn x86_64 assembly language
Assembly Shell
Branch: master
Clone or download
Permalink
Type Name Latest commit message Commit time
Failed to load latest commit information.
.gitignore Fibonacci counter added Sep 30, 2019
README.md Found a nice tutorial site Oct 2, 2019
counter.s added macros and constants Sep 30, 2019
fibonacci.s Fibonacci counter added Sep 30, 2019
hello.s using proper sections Sep 29, 2019
mk auto compile and run script Sep 30, 2019

README.md

Assembly Playground

Random code snippets I use to learn x86_64 assembly language

How to compile and run

These are instructions for compiling and running on a Linux x86_64 machine

  1. Install nasm using your packet manager (e.g. pacman, apt, etc.)
  2. Compile object: nasm -f elf64 -o filename.o filename.s - filename.s is the input file, filename.o will be the generated object file
  3. Link object to executable: ld filename.o -o execname
  4. Run: ./execname

Files

  • hello.s - Simple "Hello, world!" script
  • counter.s - Counts from 0 to 9 and prints to stdout. First use of multiple calls and loops
  • fibonacci.s - Prints Fibonacci numbers from 0 to 10000. Using functions, macros and constants

Learning resources

Compared to high level languages, Assembly languages seem to have bits and pieces of knowledge very scattered around the web. I haven't found (so far) a very comprehensive learning support, but here are some helpful links I've come across:

You can’t perform that action at this time.