Asamblėjos Ir Vertėjo Skirtumas

Asamblėjos Ir Vertėjo Skirtumas
Asamblėjos Ir Vertėjo Skirtumas

Video: Asamblėjos Ir Vertėjo Skirtumas

Video: Asamblėjos Ir Vertėjo Skirtumas
Video: Gestų kalbos vertėjo kasdienybė... Kokia ji..? 2024, Lapkritis
Anonim

Surinkėjas vs vertėjas

Apskritai kompiliatorius yra kompiuterinė programa, nuskaitanti viena kalba parašytą programą, kuri vadinama šaltinio kalba, ir išverčia ją į kitą kalbą, vadinamą tiksline kalba. Tradiciškai šaltinio kalba yra aukšto lygio kalba, pvz., C ++, o tikslinė kalba yra žemo lygio, pvz., Asamblėjos kalba. Tačiau yra kompiliatorių, kurie gali konvertuoti šaltinio programą, parašytą asamblėjos kalba, ir paversti ją mašininiu ar objekto kodu. Surinkėjai yra tokie įrankiai. Kita vertus, vertėjai žodžiu yra įrankiai, vykdantys instrukcijas, parašytas tam tikra programavimo kalba. Vertėjas gali tiesiogiai vykdyti aukšto lygio šaltinio kodą arba išversti juos į tarpinį kodą, tada jį interpretuoti arba vykdyti iš anksto sukompiliuotą kodą.

Kas yra surinkėjas?

„Assembler“yra programinė įranga arba įrankis, kuris išverčia surinkimo kalbą į mašinos kodą. Taigi asamblėja yra kompiliatoriaus tipas, o šaltinio kodas parašytas asamblėjos kalba. Asamblėja yra žmonėms skaitoma kalba, tačiau ji paprastai turi ryšį vienas su vienu su atitinkamu mašinos kodu. Todėl sakoma, kad surinkėjas atlieka izomorfinį (vienas į vieną atvaizdavimas) vertimą. Pažangūs surinkėjai teikia papildomas funkcijas, palaikančias programų kūrimą ir derinimo procesus. Pvz., Surinkėjų tipas, vadinamas makrokomunikatoriais, suteikia makrokomandą.

Kas yra vertėjas žodžiu?

Vertėjas yra kompiuterio programa arba įrankis, vykdantis programavimo instrukcijas. Vertėjas gali arba tiesiogiai vykdyti šaltinio kodą, arba konvertuoti šaltinį į tarpinį kodą ir jį vykdyti tiesiogiai, arba vykdyti iš anksto sukompiliuotą kodą, kurį sukūrė kompiliatorius (kai kuriose vertėjų sistemose šiai užduočiai yra sudarytas kompiliatorius). Tokios kalbos kaip Perl, Python, MATLAB ir Ruby yra programavimo kalbų, naudojančių tarpinį kodą, pavyzdžiai. UCSD „Pascal“interpretuoja iš anksto sukompiliuotą kodą. Tokios kalbos kaip „Java“, „BASIC“ir „Samlltalk“pirmiausia sukompiliuoja šaltinį į tarpinį kodą, vadinamą baitų kodu, ir tada jį interpretuoja.

Kuo skiriasi asamblėjas ir vertėjas žodžiu?

Asamblėja gali būti laikoma specialiu kompiliatoriaus tipu, kuris tik išverčia Asamblėjos kalbą į mašinos kodą. Vertėjai žodžiu yra įrankiai, atliekantys instrukcijas, parašytas tam tikra kalba. Vertėjų sistemose gali būti sudarytas kompiliatorius, kuris iš anksto sudarys kodą prieš interpretavimą, tačiau vertėjo negalima vadinti specialiu kompiliatoriaus tipu. Surinkėjai sukuria objekto kodą, kurį gali tekti susieti naudojant susiejimo programas, kad būtų galima paleisti mašinoje, tačiau dauguma vertėjų gali atlikti programą patys. Montuotojas paprastai atliks vertimą vienas su vienu, tačiau tai nėra tiesa daugeliui vertėjų žodžiu. Kadangi asamblėjos kalba yra susieta su mašininiu kodu, montuotojas gali būti naudojamas kuriant kodą, kuris veikia labai efektyviai tais atvejais, kai našumas yra labai svarbus (pavyzdžiui, grafikosįterptosios sistemos, turinčios ribotus aparatūros išteklius, palyginti su asmeniniu kompiuteriu, pvz., mikrobangų krosnelės, skalbimo mašinos ir kt.). Kita vertus, vertėjai naudojami tada, kai jums reikia didelio perkeliamumo. Pavyzdžiui, tą patį „Java“baitinį kodą galima paleisti skirtingose platformose, naudojant atitinkamą vertėją (JVM).

Rekomenduojama: