Ассемблер (от англ. assemble — собирать) — компилятор с языка ассемблера в команды машинного языка. Русифицированное название — мнемокод. Предназначен для представления в удобном (мнемоническом) виде машинные коды команд. Обеспечивает наиболее эффективное использование ресурсов системы (процессор, память, периферия). Используется в «узких» местах — требуется большое быстродействие, ограничение по размеру оперативной памяти и другие. Ассемблером также называют иногда саму систему команд центрального процессора.

Под каждую архитектуру процессора и под каждую ОС или семейство ОС существует свой Ассемблер. Существуют также так называемые «кросс-ассемблеры», позволяющие на машинах с одной архитектурой (или в среде одной ОС) ассемблировать программы для другой целевой архитектуры или другой ОС, и получать исполняемый код в формате, пригодном к исполнению на целевой архитектуре или в среде целевой ОС.

Наиболее известными ассемблерами для операционной системы DOS являлись Borland Turbo Assembler (TASM) и Macro Assembler (MASM). Также в своё время был популярен простой ассемблер A86.

Изначально они поддерживали лишь 16-битные команды (до появления процессора Intel 80386). Более поздние версии TASM и MASM поддерживают и 32-битные команды, а также все команды, введённые в более современных процессорах, и системы команд, специфических для конкретной архитектуры (такие как, например, MMX, SSE, 3DNow! и т. д.).

При появлении операционной системы Windows появилось расширение TASM, именуемое TASM32, позволившее создавать программы для выполнения в среде Windows. Последняя известная версия Tasm — пятая, включая различные к ней дополнения.

Для более удобного создания программ на ассемблере для Windows появился пакет, названный MASM32, автором которого является hutch (Стив Хатчессон).

Также существует открытый проект ассемблера, версии которого доступны под различные операционные системы, и который позволяет получать объектные файлы для этих систем. Называется этот ассемблер NASM (Netwide Assembler).

FASM — молодой, но быстро развивающийся и завоёвывающий популярность ассемблер, распространяется с исходным кодом, есть версии для KolibriOS, Linux и Windows, использует Intel-синтаксис. Также fasm поддерживает инструкции AMD64. Достоинством является очень сильный макроязык, разнообразие форматов выходных файлов и несколько изменённый (в лучшую сторону, но несколько непривычный для «старой школы») синтаксис.