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.