编译器（）是一种电脑程式，它会将某种程式语言写成的原始码（原始语言）转换成另一种程式语言（目标语言）。它主要的目的是将便于人编写、阅读、维护的高级计算机语言所写作的原始码程式，翻译为计算机能解读、运行的低阶机器语言的程序，也就是执行档。编译器将原始程序（source program）作为输入，翻译产生使用目标语言（target language）的等价程序。源代码一般为高阶语言（High-level language），如Pascal、C、C++、C# 、Java等，而目标语言则是汇编语言或目标机器的目