第二代程式語言(2GL)是在编程语言世代的分类中对汇编语言的称呼。 [1][2][3] 这个称呼是为了将汇编语言与其他跨平台的第三代编程语言(如 COBOL 等高级语言)或更早期出现的第一代编程语言(机器语言)区分开来或进行对比。 [2][4]
第二代编程语言的定义如下:
第二代编程语言有时会被用来编写内核或驱动程序,有时候也用来编写游戏等计算密集的软件。[1]
在现代编程中,第二代编程语言很少有应用。 [5] 这些语言可能有一些优势,例如它们的执行速度更快;但是,它们也有缺点。在编写第二代编程语言的程序时,程序员需要:
当今,大多数程序都是用第三代编程语言或第四代编程语言编写的。汇编语言在运行速度方面的优势也不再明显;与汇编相比,编写完善的C语言程序通常能运行得一样快甚至更快。 [2][6]
第二代编程语言占据了计算机发展史中的重要地位。有很长一段时间,给许多机器(如红白机或康懋达64)编程的唯一选择就是第二代编程语言。[7][8] 第二代编程语言在从“程序员向机器妥协”到“机器向程序员妥协”的道路上迈出了第一步,编程语言世代的发展遵循了这条道路。[2][3]