Assembler
Assembler on kompilaator, mis võimaldab tõlkida assemblerkeeles kirjutatud programmi masinkoodiks. Assembler võimaldab suhelda otse arvuti riistvaraga, tõlkides inimesele arusaadavad juhised masinkoodiks, mida arvuti protsessor saab otse täita. Assemblerid on tihedalt seotud arvuti riistvara arhitektuuriga, millele need peavad tõlkima koodi. Erinevad arhitektuurid (nagu x86, ARM jne) kasutavad erinevaid käskude komplekte. Seega peavad assemblerid olema kohandatud vastavalt konkreetsele arhitektuurile, millele need on mõeldud. Näiteks assembler, mis on mõeldud x86 arhitektuuri jaoks, ei pruugi olla ühilduv ARM arhitektuuriga ja vastupidi. Assembleri kasutatakse laialdaselt tarkvaraarenduses, kus tuleb luua tarkvara, mis suhtleb otse arvuti riistvaraga. Sellised rakendused hõlmavad operatsioonisüsteeme, draivereid ja muid tarkvarakomponente, mis peavad täitma madalal tasemel ülesandeid, nagu mälu haldamine, riistvara juhtimine ja protsessori käskude täitmine. Lisaks kasutatakse assembleri mikrokontrollerite programmeerimisel, kus tarkvara peab suhtlema väikeste, spetsialiseeritud arvutisüsteemidega. Sellistes rakendustes on assemblerikeel sageli eelistatud valik, kuna see on kiire ja võimaldab täpset kontrolli riistvara üle. Vahel kasutatakse sõna "assembler" kõnekeeles ka assemblerkeele kohta.