Un macro assemblador és un assemblador modular, descendent dels assembladors bàsics. Van ser molt populars en els anys 1950 i anys 1960, abans de la generalització dels llenguatges d'alt nivell. Fan tot el que pot fer un assemblador, ia més proporcionen una sèrie de directives per definir i executar macro instruccions (o simplement, Macros). Quan executem a una "macro", aquesta s'expandeix al cos que hàgim definit.