Език за програмиране от първо поколение е език за програмиране на машинно ниво. Той се състои от единици и нули (двоична бройна система).
Исторически, не се е използвал транслатор за да компилира или асемблира езика от първо поколение. Програмните инструкции на такъв език са били въвеждани чрез ключове на предния панел на компютърната система.
Основното предимство на езиците от първо поколение е, че написан на тях код може да се изпълнява много бързо и ефективно, тъй като се изпълнява директно от централния процесор (CPU). От друга страна, машинният език е по-труден за научаване, в сравнение с езиците от следващите поколения, а също така по-трудно се отстраняват грешките, ако такива се появят. Освен това липсва възможност за преносимост на кода на друга машина. За да се направи това, е необходимо цялостно пренаписване на програмата.
Съвременна употреба
Езици от първо поколение се използват главно на „древни“ компютри, програмирането на машинно ниво все още намира употреба в няколко области на съвременното програмиране. На първо място всеки компилатор създава машинен код. Това става без намесата на потребителя, обикновено от език от по-високо ниво.
Друга употреба е за така наричаните виртуални машини. По същество всяка такава машина създава транслаторен мост между специфичен за нея код и машинен код. Специфичният код е еднакъв за всички платформи.
Компютърните вируси често вмъкват код някъде в паметта. За откриването им е необходимо преглеждането на програмата като машинен код, като за целта се използват специализирани програми наречени дизасемблери.
Вижте също