A disassembler is a computer program that translates machine language into assembly language?the inverse operation to that of an assembler. A disassembler differs from a decompiler, which targets a high-level language rather than an assembly language.