En assembler er et program, som oversætter assemblersprog til maskinkode. Programmer i assemblersprog er typisk lavet automatisk af en oversætter, men det er muligt at skrive programmer direkte i assemblersprog.
En assembler laver maskinkode til en bestemt computertype. Maskinkoden er ikke et færdigt program. Output fra assembleren skal behandles af en linker før, at der kommer et program ud af det.