విషయ సూచిక:
నిర్వచనం - రిజిస్టర్ కేటాయింపు అంటే ఏమిటి?
రిజిస్టర్ కేటాయింపు అనేది రిజిస్టర్లకు వేరియబుల్స్ కేటాయించడం మరియు రిజిస్టర్లలోకి మరియు వెలుపల డేటాను బదిలీ చేయడాన్ని సూచిస్తుంది. రిజిస్టర్ కేటాయింపు సంభవించవచ్చు:- స్థానిక రిజిస్టర్ కేటాయింపు అని పిలువబడే ప్రాథమిక బ్లాక్లో
- గ్లోబల్ రిజిస్టర్ కేటాయింపు అని పిలువబడే మొత్తం ఫంక్షన్ లేదా విధానంలో
- కాల్-గ్రాఫ్ ద్వారా ప్రయాణించే ఫంక్షన్ సరిహద్దులను ఇంటర్-ప్రొసీజరల్ రిజిస్టర్ కేటాయింపు అంటారు
టెకోపీడియా రిజిస్టర్ కేటాయింపును వివరిస్తుంది
సంకలనం సమయంలో, కంపైలర్ ఒక చిన్న, నిర్దిష్ట శ్రేణి రిజిస్టర్లకు వేరియబుల్స్ కేటాయించబడే విధానాన్ని నిర్ణయించాలి. కొన్ని వేరియబుల్స్ ఉపయోగంలో ఉండకపోవచ్చు లేదా ఏకకాలంలో "లైవ్" గా చెప్పబడతాయి. ఇది కొన్ని రిజిస్టర్లను బహుళ వేరియబుల్స్కు కేటాయించడానికి దారితీస్తుంది. ఏదేమైనా, విలువను పాడుచేయకుండా రెండు ఒకేసారి లైవ్ వేరియబుల్స్ ఖచ్చితమైన రిజిస్టర్కు కేటాయించబడవు.
కొన్ని రిజిస్టర్లకు కేటాయించలేని వేరియబుల్స్ RAM లో నిల్వ చేయబడాలి మరియు ప్రతి చదవడానికి మరియు వ్రాయడానికి వరుసగా లోపలికి మరియు బయటికి లోడ్ చేయాలి, ఈ విధానం చిందు అని పిలుస్తారు. RAM ని యాక్సెస్ చేయడం కంటే రిజిస్టర్లను యాక్సెస్ చేయడం చాలా వేగంగా ఉంటుంది. అదనంగా, ఇది సంకలనం చేసిన ప్రోగ్రామ్ యొక్క అమలు సమయాన్ని వేగవంతం చేస్తుంది; అందువల్ల, సమర్థవంతమైన కంపైలర్లు రిజిస్టర్లకు వీలైనన్ని వేరియబుల్స్ కేటాయించడం లక్ష్యంగా పెట్టుకున్నారు.
సాధారణంగా, చాలా రిజిస్టర్ కేటాయింపుదారులు ప్రతి వేరియబుల్ను మెయిన్ మెమరీ లేదా సెంట్రల్ ప్రాసెసింగ్ యూనిట్ (సిపియు) రిజిస్టర్కు కేటాయిస్తారు. రిజిస్టర్ ఉపయోగిస్తున్నప్పుడు వేగం ముఖ్య ప్రయోజనం. కంప్యూటర్లు పరిమిత శ్రేణి రిజిస్టర్లను కలిగి ఉంటాయి, అంటే అందుబాటులో ఉన్న అన్ని వేరియబుల్స్ రిజిస్టర్లకు కేటాయించబడవు. ఒక రిజిస్టర్ నుండి మెమరీకి వేరియబుల్ను బదిలీ చేసే విధానాన్ని స్పిల్లింగ్ అంటారు, అయితే వేరియబుల్ను మెమరీ నుండి రిజిస్టర్కు తరలించే రివర్స్ విధానాన్ని ఫిల్లింగ్ అంటారు. ఇంటెలిజెంట్ రిజిస్టర్ కేటాయింపు ఏదైనా కంపైలర్లకు కీలకమైన దశ.
రిజిస్టర్ కేటాయింపులో రెండు రకాలు ఉన్నాయి:
- స్థానిక రిజిస్టర్ కేటాయింపు: ఇది ఒక సమయంలో ఒక ప్రాథమిక బ్లాక్ (లేదా హైపర్ బ్లాక్ లేదా సూపర్ బ్లాక్) ను కేటాయించే ప్రక్రియ. స్థానిక రిజిస్టర్ కేటాయింపు వేగాన్ని పెంచుతుంది.
- గ్లోబల్ రిజిస్టర్ కేటాయింపు: స్థానిక కేటాయింపులను ఉపయోగించి రిజిస్టర్ వినియోగం తక్కువగా ఉంటే, గ్లోబల్ రిజిస్టర్ కేటాయింపును ఉపయోగించడం చాలా ముఖ్యం. సాధారణ గ్లోబల్ రిజిస్టర్ కేటాయింపులో, ప్రతి అంతర్గత లూప్లో అత్యంత చురుకైన విలువలు కేటాయించబడతాయి. పూర్తి గ్లోబల్ రిజిస్టర్ కేటాయింపు నియంత్రణ ప్రవాహ గ్రాఫ్లో ప్రత్యక్ష శ్రేణులను గుర్తించడానికి, ప్రత్యక్ష శ్రేణులను కేటాయించడానికి మరియు అవసరమైన విధంగా శ్రేణులను విభజించడానికి ఒక విధానాన్ని ఉపయోగిస్తుంది.
