You are on page 1of 13

ЕЗИЦИ ЗА ПРОГРАМИРАНЕ

1. МАШИНЕН ЕЗИК.
Централният процесор на компютъра може да
изпълнява само програми, написани на негов собствен
език, наречен машинен. Всеки централен процесор има
свой собствен машинен език. Машинните езици на
различните процесори могат да се различават.
Програмите на машинен език са редици от инструкции.
Всяка инструкция има специфичен числов код.
ЗАПОМНЕТЕ:
ЦП извлича инструкцията с аргументите от ОП,
извършва операцията, записва резултата и определя
следващата команда. Ако командата е за пресмятане,
тогава ЦП продължава с командата, която е след
изпълнената.
Инструкциите за преход могат да променят реда на
изпълнение, като задават явно адрес на следващата
инструкция която трябва да се изпълни безусловно или
след като проверят някакво условие.
2. АСЕМБЛЕРЕН ЕЗИК.
Машинните езици са били изместени от асемблерните.
Разликата между тях е в това, че при асемблерните
езици се използват думи от английския език. Например
ADD(+), SUB(-), MULT(*), DIV(/). Тези думи се
използват за означаване на аритметични операции.
Обема може да се означи с volume, а възрастта с age.
Преводът от асемблерен на машинен език става със
специална програма, наречена асемблер.
МАЛКА ПРОГРАМА НА АСЕМБЛЕРЕН
ЕЗИК:
1000 СЪБЕРИ X Y
1001 СЪБЕРИ# X 5
1002 УВЕЛИЧИ Y
1003 ПРЕМЕСТИ X Y
1004 КРАЙ
Където 1000 е адрес в паметта, СЪБЕРИ е числов код, а X и Y
са адреси на данни в паметта.
Първата инструкция събира числата, намиращи се на адреси X
и Y, като резултата се съхранява в адрес X.
Втората инструкция прибавя 5 към съдържанието на X.
Третата инструкция увеличава Y с 1.
Четвъртата инструкция заменя съдържанието на X с това на Y.
Петата инструкция е край.
3. ПРОЦЕДУРНО ПРОГРАМИРАНЕ.
Езици, при които се използват алгоритми се наричат
алгоритмични езици. Алгоритмичните езици са на по-
високо ниво от асемблерните. При тях се използват
оператори.
Например оператор за присвояване:
Y = 5*x*x – 3*x + 1
Условен оператор (близък до човешкия език):
If…then…(ако...тогава...)
Оператор за цикъл(близък до човешкия език):
While…do…(докато...прави...) и т.н.
Алгоритмичните езици изместват асемблерните и се
наричат процедурни езици.
Процедурни езици:
1945г. – Plancalcul
1954-57г. – FORTRAN. По същото време е и езика
COBOL (за бизнес приложения)
В края на 50г. – Algol, BASIC и Paskal
В началото на 70г.- C,
Днес - C++, Java, C#
4. СИНТАКСИС И СЕМАНТИКА.
 Синтаксис – това са правилата, по които се изписват
конструкциите на езика.
 Семантика – това е смисълът, който се влага в
конструкцията.
Синтаксис на оператора за присвояване:
<променлива> = <израз>;
А семантиката е: да пресметне стойноста на израза и да
я присвои на променливата.
Синтаксис на условния оператор:
if (<условие>) {<блок от оператори>};
Семантика: пресмята се стойността на условието и ако
резултатът е истина се изпълнява блока от оператори.
5. ФУНКЦИОНАЛНО И ЛОГИЧЕСКО
ПРОГРАМИРАНЕ.
Успоредно с процедурните езици се развиват и езиците
за функционално и логическо програмиране.
При езиците за функционално програмиране се
използват функции. Функции се използват и при
процедурните езици, но при функционалното
програмиране всяко действие трябва да бъде
извършено чрез пресмятане на функция. Например:
add(x, y); mult(x, y) и sub(x, y) са функции за
извършване на събиране, умножение и изваждане.
Езиците за функционално програмиране се използват
когато се извършват много математически
пресмятания. Езици за функционално програмиране:
LISP, SCHEME, APL, Haskel и др.
Езиците за логическо програмиране са базирани на
пресмятане на вярностната стойност при зададено
множество от факти.
Езици за логическо програмиране:
Prolog, ASP и Datalog.
6. НИВА НА АБСТРАКЦИЯ НА ЕЗИЦИТЕ.
В развитието на езиците за програмиране се наблюдава
тенденция за отдалечаване на езика от компютърната
архитектура. Това отдалечаване се нарича абстрахиране
от архитектурата. Машинните езици имат ниско ниво
на абстракция, защото те са тясно свързани с
архитектурата на компютъра. Асемблерните езици имат
малко по-високо ниво на абстракция. При
процедурните езици имат по-високо ниво на
абстракция. Езиците за функционално и логическо
програмиране имат много високо ниво на абстракция и
се наричат езици от декларативен тип.
Високо ниво на абстракция имат и скриптовите езици.
Такива са PHP, Perl, JavaScript и т.н. Много високо ниво
на абстракция имат и таговите езици – HTML.
С развитието на цветните монитори се развива и
събитийното програмиране. При тях имаме изпълнение
на събития, например събитието Click – щракване на
мишката.
7. ОБЕКТНО-ОРИЕНТИРАНО
ПРОГРАМИРАНЕ.
При обектно-ориентирането програмиране имаме
класове – шаблон, който съдържа общите
характеристики на обекти от реалния свят.
Езици за обектно-ориентирано програмиране са C++,
C#, Phyton.

You might also like