Ano ang compiler, o Paano ipaunawa sa isang computer kung ano ang gusto mo mula rito?

Talaan ng mga Nilalaman:

Ano ang compiler, o Paano ipaunawa sa isang computer kung ano ang gusto mo mula rito?
Ano ang compiler, o Paano ipaunawa sa isang computer kung ano ang gusto mo mula rito?

Video: Ano ang compiler, o Paano ipaunawa sa isang computer kung ano ang gusto mo mula rito?

Video: Ano ang compiler, o Paano ipaunawa sa isang computer kung ano ang gusto mo mula rito?
Video: AI Injected Smart Contract Driven SUPERWALLET. Monetize Your Data | Passive+Agressive Opportunities 2024, Mayo
Anonim

Ang huling yugto ng paglikha ng isang programa ay ang pagsasalin ng isang algorithm na nakasulat sa isa sa mga programming language (C/C++, Pascal, atbp.) sa isang mababang antas ng machine language. Ito ay dahil sa ang katunayan na upang maisagawa ang anumang gawain, ang mga computer ay kailangang bigyan ng mga utos sa isang wikang naiintindihan nila, malapit sa binary at gumagana sa mga primitive na istruktura ng data (bit, byte o salita). Ang proseso ng pagsasalin ng mga pahayag na partikular sa domain ng mga high-level na wika sa binary code ay tinatawag na pagsasalin. Mayroong dalawang paraan ng pagsasalin - compilation at interpretation.

ang compiler ay
ang compiler ay

Compiler - ano ito?

Ang

Pagsusuri ng maraming interpretasyon ng mga terminong "compiler" at "compiler" ay nagbibigay-daan sa amin na i-highlight ang sumusunod na kahulugan. Ang compiler ay isang program na idinisenyo upang isalin ang teksto ng isang source algorithm mula sa isang mataas na antas ng wika sa isang katumbas na hanay ng mga tagubilin sa isang machine-oriented na wika. Ito ang tinatawag na object code, para sa kasunod na pag-assemble ng resultang object code sa isang ready-to-use program module.

Compiler at interpreter - pagkakatulad at pagkakaiba

Ang interpreter ay isang utility napati na rin ang isang compiler, na idinisenyo upang isalin ang source code sa machine code. Gayunpaman, hindi tulad ng compiler, ang interpreter ay tumatakbo sa bawat oras kasama ang programa at nagsasagawa ng pagsasalin ng linya sa bawat linya.

Maaari mong sabihin na ang compiler at interpreter ay mga tagaproseso ng wika na nagpapahintulot sa computer na makilala at maisagawa ang mga utos na ibinigay ng programmer.

Pag-uuri ng compiler

compiler ay isang programa
compiler ay isang programa

Ang mga compiler ay pangunahing inuuri ayon sa mga feature na nauugnay sa kanilang mga lugar ng praktikal na aplikasyon.

Ang

Vectorizing compiler ay isang utility na nagsasalin ng source code sa object code at iniangkop para sa mga computer na nilagyan ng mga vector processor.

Ang isang flexible compiler ay naka-program sa isang mataas na antas ng wika sa modular na paraan. Ang pamamahala nito ay isinasagawa gamit ang mga talahanayan. Posible rin itong isagawa gamit ang compiler ng mga compiler.

Ang

Incremental compiler ay isang tagaproseso ng wika na muling nagsasalin ng hiwalay na mga fragment ng source code at mga karagdagan dito. Gayunpaman, iniiwasan nitong muling i-compile ang buong application.

Ang interpretive (stepping) compiler ay isang utility na sunud-sunod na nagsasagawa ng independiyenteng compilation ng bawat statement o command ng isang high-level na source code.

Ang compiler ng mga compiler ay isang tagasalin na may kakayahang tumanggap ng isang pormal na paglalarawan para sa isang programming language at independiyenteng bumuo ng isang compiler para sa anumang wika.

compiler at interpreter
compiler at interpreter

Pinapayagan ka ng debug compiler na mahanap at ayusin ang ilang uri ng mga error sa syntax na ginawa kapag nagsusulat ng source code

Ang isang resident compiler ay sumasakop sa isang permanenteng lugar sa RAM at samakatuwid ay magagamit muli ng malawak na hanay ng mga gawain.

Ang self-compile na compiler ay nakasulat sa parehong wika gaya ng pagsasalin.

Ang universal compiler ay batay sa isang pormal na paglalarawan ng semantic at syntactic na mga parameter ng input language. Ang mga pangunahing bahagi ng naturang utility ay ang mga core, syntactic at semantic loader.

Compiler device

Ang isang compiler at isang linker ay nasa puso ng anumang compiler. Kadalasan, kapag nag-compile, ginagamit ang isang panlabas na linker, at ang compiler mismo ay gumaganap lamang ng function ng pagsasalin. Nangyayari rin na ang compiler ay ipinatupad bilang isang uri ng manager program na nauugnay sa translator (o mga translator, kung iba't ibang programming language ang ginamit sa pagsulat ng source code) at ang linker at sinimulan ang kanilang pagpapatupad kung kinakailangan.

Mga wika sa programming at mga paraan ng pagsasalin

tagabuo ng wika
tagabuo ng wika

Sa kabila ng katotohanan na ang isang program na nakasulat sa anumang programming language ay maaaring i-compile at bigyang-kahulugan, maraming mga high-level na wika ang may predisposisyon sa isa o ibang paraan ng pagsasalin. Kaya, ang wikang C ay orihinal na idinisenyo para sa compilation, at Java - para sa interpretasyon ng nakasulat na programa. Ay binuoAng mga C compiler ay medyo madali, salamat sa medyo mababang antas nito at isang maliit na bilang ng mga elemento ng istruktura.

Mga kalamangan at kawalan ng mga compiler at interpreter. Application

Tandaan na ang mga pinagsama-samang application ay mas mabilis kaysa sa mga na-interpret, ngunit sa parehong oras, ang machine code na nakuha bilang resulta ng compilation ay nakadepende sa hardware platform. Kaya, ang isang program na isinulat at pinagsama-sama para sa Windows ay hindi gagana, halimbawa, sa Linux. Samakatuwid, sa kaso ng mga aplikasyon sa Internet, kapag imposibleng sabihin nang maaga kung aling kapaligiran ang kanilang gagana, gumagamit sila ng interpretasyon o bytecode (sa kasong ito, ang source program ay na-convert sa isang intermediate form na maaaring isagawa sa iba't ibang hardware. platform).

Inirerekumendang: