Un assembleur est un programme qui convertit en langage assembleur en code machine. Elle prend les commandes et les opérations de base de code d'assemblage et les convertit en un code binaire qui peut être reconnu par un type spécifique de processeur.
Assembleurs sont semblables à compilateurs en ce qu'ils produisent du code exécutable. Cependant, les assembleurs plus simpliste car ils ne convertissent le code de bas niveau (langage d'assemblage) en code machine. Etant donné que chaque langage d'assemblage est conçu pour un processeur spécifique, l'assemblage d'un programme est exécutée en utilisant un simple mappage un-à-un code assembleur à partir du code machine. Compilateurs, d'autre part, doivent convertir générique code source de haut niveau en code machine pour un processeur spécifique.
La plupart des programmes sont écrits dans des langages de programmation de haut niveau et sont compilées directement en code machine en utilisant un compilateur. Cependant, dans certains cas, le code d'assemblage peut être utilisé pour personnaliser les fonctions et s'assurer qu'ils exercent d'une façon spécifique. Par conséquent, les IDE incluent souvent des assembleurs afin qu'ils puissent créer des programmes des deux langages de haut et de bas niveau.