The document discusses the functions and design of assemblers. It describes how assemblers work in multiple passes to translate assembly language code into executable object code. The key functions of assemblers include translating mnemonics to machine code, resolving symbolic addresses, building proper instruction formats, and generating listing files and object code files. Assemblers use tables like the operation code table and symbol table to perform these translation and resolution functions.