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

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

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

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

Съставител - какво е това?

Анализът на множеството тълкувания на термините „компилатор“ и „компилация“ ни позволява да обособим следното определение. съставител Е програма за преводтекстът на оригиналния алгоритъм от език на високо ниво до еквивалентен набор от инструкции на машинно ориентиран език. Това е така нареченият обектов код за последващо сглобяване на получения обект код в готов за употреба програмен модул.

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

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

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

Класификация на компилаторите

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

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

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

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

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

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

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

съставителят и интерпретаторът е

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

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

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

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

Устройство за компилация

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

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

съставител на език

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

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

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

хареса:
0
Популярни публикации
Духовното развитие
храна
ш