Завршни корак у креирању програма јепревод алгоритма написаног на једном од програмских језика (Ц / Ц ++, Пасцал итд.) у машински језик ниског нивоа. То је због чињенице да рачунари морају да извршавају команде на језику за који разумију да је бинарни и да раде са примитивним структурама података (бит, бајт или реч) да би извршили задатак. Процес превођења проблематичних оператора језика високог нивоа у бинарни код назива се превођењем. Постоје две методе превођења - компилација и интерпретација.
Компилатор - шта је то?
Анализа многих интерпретација појмова „преводилац“ и „састављање“ омогућава нам да издвојимо следећу дефиницију. Компајлер Је програм превођењатекст оригиналног алгоритма са језика високог нивоа на еквивалентни скуп упутстава на машински оријентисаном језику. Ово је такозвани објектни код за накнадно састављање резултирајућег објектног кода у програмски модул спреман за употребу.
Компајлер и преводилац - сличности и разлике
Преводилац Да ли је услужни програм, попут компајлера,дизајниран за превођење изворног кода у машински код. Међутим, за разлику од преводиоца, преводилац се покреће сваки пут заједно са програмом и обавља превод по редак.
Можемо рећи да су преводилац и преводилац језички процесори који рачунару омогућавају препознавање и извршавање наредби које је дао програмер.
Класификација компајлера
Компајлере се класификује углавном по карактеристикама које се односе на њихове области практичне примене.
Векторизација компајлера Је услужни програм који преводи изворни код у објектни код и прилагођен је за рачунаре опремљене векторским процесорима.
Флексибилан преводилац програмиран на модуларном језику на високом нивоу. Управљање се врши помоћу табела. Могуће је извршити и помоћу компајлера компресора.
Инцрементал преводилац - Ово је језички процесор који преводи појединачне фрагменте изворног кода и додавања уз њега. Међутим, елиминише се прекомпоновање целе апликације.
Тумачење (корак по корак) преводилац Је услужни програм који узастопно независно саставља сваку изјаву или наредбу из изворног кода високог нивоа.
Компајлер преводилац - преводилац способан да опази формални опис програмског језика и независно генерира преводилац за било који језик.
Дебуг преводилац омогућава вам проналажење и уклањање неких врста синтаксичких грешака насталих приликом писања изворног кода
Стални преводилац заузима стално место у РАМ-у и самим тим је доступан за поновну употребу са широким спектром задатака.
Самостални преводилац Написана је на истом језику на којем се емитује.
Универзални преводилац заснована на формалном опису семантичких и синтактичких параметара унесеног језика. Главне компоненте таквог услужног програма су кернел, синтакса и семантички утоваривачи.
Компајлер уређај
Било који преводилац заснован је на преводиоцу илинкер. Често се при компајлирању користи спољни повезивач, а сам преводилац врши само функцију превођења. Такође се дешава да се компајлер имплементира као врста менаџерског програма повезаног са преводиоцем (или преводиоцима, ако су приликом писања изворног кода кориштени различити програмски језици) и везником те их по потреби покренули.
Програмски језици и методе превођења
Иако је програм написан убило који програмски језик, можете и да компилирате и тумачите, многи језици високог нивоа су предиспонирани за одређену методу превођења. Дакле, Ц језик је првобитно дизајниран за компилацију, а Јава - за интерпретацију писменог програма. Ц преводиоци се развијају прилично лако, због релативно ниског нивоа и малог броја структурних елемената.
Предности и недостаци преводилаца и тумача. Области коришћења
Имајте на уму да састављене апликације имајувећа брзина у односу на интерпретирани, али истовремено, машински код добијен као резултат компилације овиси о хардверској платформи. Дакле, програм написан и састављен за Виндовс неће радити, на пример, на Линуку. Стога, у случају Интернет апликација, када је немогуће унапред рећи у ком окружењу ће радити, користе интерпретацију или бајт код (у овом случају се оригинални програм претвара у средњи облик који се може извршити на различитим хардверским платформама).