8086 Disassembler Download 4 5
8086 Disassembler Download 4 5
A disassembler is a software tool that converts binary code into human-readable assembly language. A disassembler can be useful for reverse engineering, debugging, or learning about the low-level workings of a program. An 8086 disassembler is a disassembler that supports the original Intel 8086/8088 instruction set, which was used in the first IBM PC and compatible computers.
8086 disassembler download 4 5
In this article, we will show you how to download and use two different 8086 disassemblers on PC: . Both of them are open-source projects hosted on GitHub and written in x86 assembly language.
gzili/8086-disassembler
This project was created by Gintaras Zilius as an optional exercise during the Computer Architecture course in Vilnius University. It has the following features:
Supports every instruction from the original Intel 8086/8088 instruction set
Small executable file size (less than 6KB)
Fully-buffered file I/O
Reads from and writes to files whose names are given as command-line arguments
Prints helpful error messages for various different I/O errors
To use this disassembler, you need to have Turbo Assembler (TASM) and Turbo Link installed on your PC. You can download them from . After installing them, you need to do the following steps:
Download the source code of gzili/8086-disassembler from .
Extract the zip file and open a command prompt in the extracted folder.
Type tasm disasm.asm and press Enter to assemble the source code.
Type tlink /t disasm.obj and press Enter to link the object file.
You should see a file named disasm.com in the folder. This is the executable file of the disassembler.
To run the disassembler, type disasm <input_file_name> <output_file_name> and press Enter, where <input_file_name> is the name of the binary file you want to disassemble and <output_file_name> is the name of the file where you want to save the disassembly result.
You can open the output file with any text editor to view the assembly code.
AinoraZ/Intel-8086-Disassembler
This project was created by Ainora Zubaviciute as a final project for Computer Architecture course in Vilnius University. It has the following features:
Supports every instruction from the original Intel 8086/8088 instruction set
Uses DOS Debug format for outputting the results
Reads from and writes to files whose names are given as command-line arguments
Prints helpful error messages for various different I/O errors
Uses colors to highlight different parts of the assembly code
To use this disassembler, you need to have NASM (Netwide Assembler) and DOSBox installed on your PC. You can download them from , respectively. After installing them, you need to do the following steps:
Download the source code of AinoraZ/Intel-8086-Disassembler from .
Extract the zip file and open a command prompt in the extracted folder.
Type nasm -f bin -o disasm.com main.asm and press Enter to assemble the source code.
You should see a file named disasm.com in the folder. This is the executable file of the disassembler.
To run the disassembler, you need to use DOSBox. Open DOSBox and mount the folder where the disassembler is located as a drive. For example, if the folder is C:\Users\John\Downloads\Intel-8086-Disassembler-master, then type mount c C:\Users\John\Downloads\Intel-8086-Disassembler-master and press Enter.
Type c: and press Enter to switch to the mounted drive.
Type disasm <input_file_name> <output_file_name> and press Enter, where <input_file_name> is the name of the binary file you want to disassemble and <output_file_name> is the name of the file where you want to save the disassembly result.
You can open the output file with any text editor to view the assembly code.
Conclusion
In this article, we have shown you how to download and use two different 8086 disassemblers on PC: gzili/8086-disassembler and AinoraZ/Intel-8086-Disassembler. Both of them are open-source projects written in x86 assembly language and support the original Intel 8086/8088 instruction set. They can be useful for learning about the low-level workings of a program or reverse engineering binary code. We hope you find this article helpful and informative.