Programmiersprachen der zweiten Generation (2GL) sind maschinennahe Sprachen, die an bestimmte Prozessoren gebunden sind. Zu ihnen gehören in Assembler geschriebene Programme.
2GL-Programmiersprachen sind dadurch kennzeichnet, dass ihr Programmcode von einem Programmierer geschrieben wurde. Erst nach der Konvertierung in einen maschinenlesbaren Code können 2GL-Sprachen vom Prozessor interpretiert werden. Sie sind an bestimmte Prozessoren oder Prozessorfamilien gebunden und werden bei Anwendungen mit hoher Rechengeschwindigkeit eingesetzt. So in Computerspielen, in der Video-Editierung oder im Rendering.