Zbirni jezik je nizkonivojski način za poučevanje računalnika za izvedbo naloge. Računalniki sami po sebi ne razumejo navodil ljudi. Na najosnovnejši ravni računalniki razumejo navodila v binarnem jeziku, torej zaporedja nič in enic. Binarni jezik ali strojni jezik pa je izredno okoren za programiranje. Zbirni jezik je bil izumljen kot simbolna predstavitev osnovnih zaporedij ničel in enic.
Recimo, da bi morali programirati igro, ki igralcu ob določenem dejanju dodeli pet točk. Računalnik hrani rezultat na določenem mestu; lokacije so bodisi prostor za shranjevanje v CPE-ju, imenovan »register«, ali v nekem prostoru v pomnilniku. Računalnik razume lokacije in dejanja na nizki ravni, ki se imenujejo operacije. Torej, če se rezultat hrani v registru RA, potem razume ukaz 0101 1100 0000 0101, kjer prve štiri številke označujejo operacijo ADD, naslednje štiri označujejo register RA, zadnjih osem pa številko 5.
Prvotno so morali biti računalniki kodirani na ta način; strojni jezik je počasen, nagnjen k napakam in ena oseba lahko zelo težko razume, kaj poskuša druga oseba kodirati. Tako so računalniški programerji ustvarili jezik, v katerem je mogoče bolje razumeti operacije, lokacije, številke itd. Tako bi bil enakovredni ukaz za zgornji primer ADD RA 5. V tem hipotetičnem primeru se mnemonika uporablja za operacijo ADD in register RA, število 5 pa je zapisano s številkami.
Program, imenovan zbirnik, pretvori kodo montažnega jezika v osnovni strojni jezik. V prejšnjih dneh je tudi ta pretvorba porabila drage računalniške vire, zato so bile kode operacij, skratka opcode, kot je Subtract, skrajšano kot SUB, Copy-Move je bilo skrajšano kot MOV in v nekaterih primerih je bilo celo ADD skrajšano na A.
Zbirni jezik je večinoma tanek sloj nad strojno strukturo. Zato so opkode, registri in celoten jezik zelo odvisni od družine CPE. Torej ima družina Intel x86 opkode, kot so MOV, MOVSX in MOVZX, medtem ko ima IBM 360 opcode, kot so MVI, MVC, MVZ. Pri oblikovanju računalnika ali CPE oblikovalci določijo strojni jezik, vključno z opcode.
Programerji so se kmalu preselili na jezike “visoke ravni”, kot so COBOL, Pascal, C++ in SQL. Prevajalniki pretvorijo kodo, napisano v teh jezikih, v strojni jezik. Sestavna koda se še vedno uporablja za specializirane procesorje ali za zagotavljanje hitrosti od igralnih konzol do avtomobilskih sistemov.