The ASM Rosetta Stone
This respository contains the ASM Rosetta Stone, a small snippet of C that you can use to learn a new assembly variant in a short amount of time.
Getting Started
To get started with studying assembly languages using Rosetta Stone, follow these steps:
- Clone the repository: Open a terminal and run the following command to clone the repository to your local machine:
git clone https://github.com/lowlevellearning/rosetta-stone.git
- Install necessary packages: Install the necessary packages on your system by running the following command:
./setup.sh
- Makefile usage: You can use the Makefile to compile the rosetta.c file into executables for different architectures. Run the following command to compile the code for all supported architectures (powerpc, arm, aarch64):
make all
Alternatively, you can compile the code for individual architectures using the respective target names:
- PowerPC:
make powerpc
- ARM
make arm
- AArch64
make aarch64
The compiled executables will be named ppc (for powerpc), arm (for arm), and aarch64 (for aarch64).
Checklist
- registers
- names []
- width []
- stack memory
- how is it used []
- prolouge, epilouge []
- calling conventions
- arguments []
- return value []
- return address []
- control flow
- branching []
- conditional branches[]
- calls []
- syscall interface []