muzruno.com

Какво е това - компилаторът или как да направите компютъра да разбере какво искате от него?

Крайният етап от създаването на програма е да се преведе алгоритъм, написан на един от програмните езици (C / C ++, Pascal и т.н.), в нисък машинен език. Това се дължи на факта, че компютрите трябва да изпълняват команди на език, който разбират, който е близък до бинарните и работещи примитивни структури от данни (бит, байт или дума), за да изпълни задачата. Процесът на преобразуване на проблемните оператори на езици на високо ниво в двоичен код се нарича превод. Има два начина за превод - компилация и тълкуване.

компилаторът е

Компилаторът - какво е това?

Анализът на множеството тълкувания на термините "компилатор" и "компилация" ни позволява да различим следната дефиниция. Компилаторът Програма, предназначена да преведе текста на алгоритъма на източника от език на високо ниво в еквивалентен набор от инструкции на машинно ориентиран език. Това е така нареченият обемен код за последващото сглобяване на получения обектен код в готовия за използване програмен модул.

Съставителят и преводачът са прилики и различия

преводач Има помощна програма, както и компилатор, предназначен да преведе изходния код в кода на машината. Въпреки това, за разлика от компилатора, интерпретаторът се изпълнява всеки път с програмата и изпълнява преводната линия по ред.

Можем да кажем, че компилаторът и интерпретаторът са езикови процесори, които позволяват на компютъра да разпознае и изпълни командите, определени от програмиста.

Класификация на съставителите

компилаторът е програмата

Да се ​​класифицират компилаторите основно върху характеристиките, свързани с областите на тяхното практическо приложение.

Векторно компилиране Има помощна програма, която извършва превод на изходния код в обектния код и е адаптирана за компютри, оборудвани с векторни процесори.

Гъвкав компилатор програмиран на езика на високо ниво чрез модулен принцип. Неговото управление се осъществява с помощта на таблици. Също така е възможно да се изпълни с компилатора на компилатора.

Инкрементален компилатор Езиков процесор, който препредава отделни фрагменти от изходния код и неговите добавки. Тя обаче елиминира прекомпилирането на цялото приложение.

Интерпретативен (стъпка по стъпка) компилатор Има помощна програма, която последователно извършва независима компилация на всеки оператор или команда на източника на код на високо ниво.



Състав на компилатора - преводач, способен да възприема формално описание за език за програмиране и независимо да генерира компилатор за всеки език.

компилатор и преводач е

Компилатор за отстраняване на грешки позволява да се открият и премахнат някои видове синтактични грешки, направени при писането на изходния код

Пребиваващият съставител заема постоянно място в паметта и следователно е на разположение за повторна употреба на широк спектър от задачи.

Компилатор със самосъздаване е написана на същия език, от който се извършва преводът.

Универсален съставител се основава на формално описание на семантичните и синтактичните параметри на езика за въвеждане. Основните компоненти на такава полезност са ядрото, синтактичните и семантичните товарачи.

Компилаторното устройство

В сърцето на всеки компилатор се намират компилаторът и линкерът. Често компилаторът използва външен линкер и самият компилатор изпълнява само функцията за превод. Това се случва също, че компилаторът се реализира като един вид ръководител на програмата, свързана с преводача (или преводачите, ако писането на изходния код, използван в различни езици за програмиране) и свързващата ги стартирате изпълнение, ако е необходимо.

Програмни езици и методи за писмен превод

езиков компилатор

Въпреки факта, че програма, написана на който и да е език за програмиране, може да се компилира и интерпретира, много езици на по-високо ниво имат предразположение към този или този метод за превод. Така че, езикът С първоначално е предназначен за компилация и Java за интерпретиране на писмената програма. C компилатори се развиват доста лесно, благодарение на относително ниското си ниво и малък брой структурни елементи.

Предимства и недостатъци на компилаторите и преводачите. приложения

Имайте предвид, че компилираните приложения имат висока скорост в сравнение с тези, които се интерпретират, но в същото време кода на машината, получен в резултат на компилацията, зависи от хардуерната платформа. Така че, програма, написана и компилирана за Windows, няма да работи, например, в Linux. Ето защо, в случай на интернет-базирани приложения, когато е невъзможно да се каже предварително каква среда ще се работи, използването или интерпретация на байт код (в този случай, програмата източник се превръща в междинна форма, която може да се прилага върху различни хардуерни платформи).

Споделяне в социалните мрежи:

сроден