How Do You Make An Assembler?

assembly, x86

Solution

This is what you are looking for:

Assemblers And Loaders - By David Salomon. Published February, 1993 - Freely available (download here)

Of course, you are going to need the following:

- Intel® 64 and IA-32 Architectures Software Developer's Manuals

- AMD-64 Architecture Programmers manual

- Linkers and Loaders by John R. Levine (freely available)

- ELF File Format Specifications : System V ABI Update

- Microsoft Portable Executable and Common Object File Format Specification

You can always refer to implementations of Opensource Assemblers:

- Netwide Assembler (NASM)

- Gnu Assembler (GAS)

Problem

I'd like to make a simple x86 assembler. I'm wondering if there's any tutorials for making your own assembler. Or if there's a simple assembler that I could study. Also, I wonder what tools are used in looking at and handling the binary/hex of programs.

Original source

Related problems