కంపైలర్ (Compiler) అనగా హై లెవల్ ప్రోగ్రామింగ్ భాషలో రాసిన ప్రోగ్రాములను కంప్యూటర్కు అర్థమయ్యే మెషీన్ భాషకు తర్జుమా చేసే ఒక సాఫ్టువేరు.[1] ప్రతి హై లెవల్ భాషకు ఒక కంపైలర్ ఉంటుంది. ఒక భాషకు కంపైలర్ తయారు చేయాలంటే ముందు ఆ భాషకు వ్యాకరణాన్ని (గ్రామర్) ను రూపొందించాలి. ఈ వ్యాకరణాన్ని అనుసరించి మనం రాసిన ప్రోగ్రాములను కంపైలర్ సరియైనదా? కాదా? అనేది నిర్ణయిస్తుంది. మెషీన్ భాష నుంచి హైలెవెల్ కంప్యూటర్ భాషకు మార్చే సాఫ్టువేర్లను డీకంపైలర్ అని వ్యవహరిస్తుంటారు.

A diagram of the operation of a typical multi-language, multi-target compiler.

చరిత్రసవరించు

కంప్యూటర్ కనుగొన్న తొలినాళ్ళలో కొన్ని సంవత్సరాలపాటు సాఫ్టువేర్ ను అసెంబ్లీ భాషలో రాసేవారు.

ఒక కంపైలర్ హై లెవల్ ప్రోగ్రామును మెషీన్ భాషకు మార్చడంలో వివిధ దశలున్నాయి.

  1. లెక్సికల్ అనాలిసిస్
  2. సింటాక్స్ అనాలిసిస్
  3. సిమాంటిక్ అనాలిసిస్
  4. కోడ్ జనరేషన్
  5. కోడ్ ఆప్టిమైజేషన్

లెక్సికల్ అనాలిసిస్ లో కంప్యూటర్ ప్రోగ్రామును టోకెన్లు (విడి భాగాలు) గా విభజిస్తారు. వీటికోసం రెగ్యులర్ ఎక్స్‌ప్రెషన్లను వాడతారు. సింటాక్స్ అనాలిసిస్ లో పైన విభజించిన విడిభాగాలు వ్యాకరణ పరంగా సరియైన ప్రోగ్రామును ఏర్పరుస్తాయో లేదో నిర్ణయిస్తుంది. అంతే కాకుండా టోకెన్ల నుంచి సింటాక్స్ ట్రీను నిర్మిస్తారు. సిమాంటిక్ విశ్లేషణలో ప్రోగ్రాము అర్థవంతమైనదా లేదా అని పరీక్షిస్తారు. కోడ్ జనరేషన్ దశలో సింటాక్స్ ట్రీ లని ఆధారంగా చేసుకుని ఒక మధ్యస్థ స్థాయి భాషలో ఇన్‌స్ట్రక్షన్స్ గా మారుస్తారు. కోడ్ ఆప్టిమైజేషన్ దశలో ప్రోగ్రామ్ సామర్థ్యాన్ని పెంచడానికి ఇన్‌స్ట్రక్షన్స్ నిర్మాణంలో మార్పులు చేస్తారు.

మూలాలుసవరించు

  1. PC Mag Staff (28 February 2017). "Encyclopedia: Definition of Compiler". PCMag.com. Retrieved 28 February 2017.
"https://te.wikipedia.org/w/index.php?title=కంపైలర్&oldid=2607275" నుండి వెలికితీశారు