L'extension de fichier .asm est principalement associée aux fichiers source écrits en Langage d'Assemblage (Assembly Language). Le langage d'assemblage est un langage de programmation de bas niveau qui possède une correspondance directe et très forte avec les instructions de code machine d'une architecture informatique spécifique (telle que x86, ARM, MIPS, etc.). Contrairement aux langages de haut niveau (comme C++ ou Python), le code assembleur utilise des mnémoniques (codes courts) pour représenter des opérations fondamentales telles que le déplacement de données entre registres, l'exécution d'opérations arithmétiques et le contrôle du flux de programme (sauts et appels). Parce qu'il interagit directement avec le matériel, le langage d'assemblage est souvent utilisé pour des tâches nécessitant une optimisation extrême, une manipulation matérielle directe, l'écriture de noyaux de systèmes d'exploitation, de pilotes de périphériques ou la programmation de systèmes embarqués où les ressources sont très contraintes. Les fichiers .asm sont des fichiers texte lisibles par l'homme qui doivent être traités par un programme assembleur (comme NASM, MASM ou FASM) pour être convertis en code machine exécutable. La syntaxe spécifique et les directives contenues dans un fichier .asm dépendent fortement de l'architecture du processeur cible et de l'assembleur utilisé.