"आज पुन्हा मी आलोय. मी काहीतरी स्पष्ट करून सांगायचे विसरलो. मी तुला आता व्हेरीएबल्स आणि मेमरी अॅड्रेसिंगबद्दल सांगतो. आपण फार खोलात शिरणार नाही, पण तू निदान काहीतरी लक्षात ठेवलेस तर बरे होईल."

"मला तुझा धड्यांकडे बघण्याचा दृष्टीकोन आवडतो: जर तुला काही समजले असेल तर- छान. जर तुला काहीच समजले नसेल तर - ठीक आहे."

"प्रेमाची जबरदस्ती करता येत नाही. ते उघडच आहे. तुझ्या ग्रहावर असे नाहीये का?"

"नाही. आमचा दृष्टीकोन वेगळा आहे. जर तुमची इच्छा असेल तर, अभ्यास करा; जर तुमची इच्छा नसेल तर, अभ्यास करा, अनिच्छेने का होईना."

"शिक्षणाकडे पाहण्याचा किती मागास दृष्टीकोन आहे हा! यामध्ये भरपूर शक्ती आणि वेळ वाया जातो आणि काहीच निष्पन्न होत नाही."

"खरंय, आम्ही ते सगळं वाया घालवतो. पण दु:खी करणाऱ्या गोष्टींबद्दल बोलायला नको."

"ठीक आहे. एक्सेलची कल्पना कर. एक्सेल सगळ्यांनाच माहिती आहे. एक्सेल शीटमध्ये सेल्स असतात. प्रत्येक सेलचा स्वत:चा एक विशिष्ट आयडेंटीफायर असतो(A1, A2,…B1, B2). जर तुम्हाला सेलचा आयडेंटीफायर माहीत असेल तर तुम्ही नेहमी त्यात काहीतरी मूल्य लिहू शकता किंवा त्यात जे काही मूल्य साठवलेले असेल ते मिळवू शकता. संगणकाची मेमरीसुद्धा अगदी अशाच पद्धतीने संयोजित केलेली असते."

image-ru-01-25

"आत्तापर्यंत तू सांगितलेस ते मला कळले आहे."

"जेव्हा प्रोग्रॅम रन होत असतो तेव्हा प्रोग्रॅम आणि प्रोग्रॅम डेटा मेमरीमध्ये साठवलेले असतात. संगणकाची सर्व मेमरी छोट्या सेल्समध्ये, किंवा बाईट्समध्ये विभागलेली असते. प्रत्येक सेलचा एक विशिष्ट आयडेंटीफायर, किंवा एक संख्या असते, जी त्या सेलशी जोडलेली असते: 0,1,2,3,… (संख्या 0 पासून सुरू होतात). जर तुला सेलचा क्रमांक माहिती असेल, तर तू त्यात डेटा साठवू शकतोस. किंवा त्यातून डेटा मिळवू शकतोस. काही सेल्स प्रोग्रॅमचा कोड साठवतात, म्हणजे प्रोसेसरसाठी लिहिलेली कमांड्सची मालिका. इतर सेल्स प्रोग्रॅमने वापरलेला डेटा साठवतात. प्रत्येक सेलच्या क्रमांकाला तिचा ऍड्रेस असे म्हणतात."

"प्राध्यापकांनी मला आधीच प्रोसेसर आणि कमांड्सबद्दल सांगितले आहे, पण फार तपशीलवार नाही."

"मेमरीमध्ये लोड केलेल्या कमांड्स कशा एक्झिक्युट करायच्या ते प्रोसेसरला माहिती असते. जवळजवळ सर्वच प्रोसेसर कमांड्स 'काही सेल्समधून डेटा घ्या, त्यावर काहीतरी करा, आणि उत्तर दुसऱ्या सेलला पाठवा.' अशा प्रकारच्या असतात. आपण हजारो साध्या कमांड्स एकत्र करून किचकट आणि उपयुक्त कमांड्स तयार करतो."

"पण मला हे सगळे कशासाठी लागेल?"

'जेव्हा कोडमध्ये व्हेरीएबल डीक्लेअर केला जातो, तेव्हा मेमरीमधील वापरात नसलेला काही भाग त्याला दिला जातो. बहुतेक वेळा हे काही बाईट्स असतात. व्हेरीएबल डीक्लेअर करताना प्रोग्रॅम त्यामध्ये कोणत्या प्रकारची माहिती साठवू शकतो, ते आपल्याला सांगावे लागते: संख्या, मजकूर किंवा इतर डेटा. सोयीसाठी, प्रत्येक व्हेरीएबलला एक वेगळे नाव दिले जाते."

"याचा अर्थ असा आहे का की व्हेरीएबल म्हणजे नाव, प्रकार, मेमरीचा भाग, आणि एक मूल्यसुद्धा असतो."

"तो या सगळ्या गोष्टींचा मिळून बनलेला असतो. काही उदाहरणे बघ:"

कोड स्पष्टीकरण
1
String s;
ही ओळ s नावाचा एक व्हेरीएबल तयार करते. आपण त्याचा प्रकार String म्हणून डीक्लेअर करतो, कारण तो मजकूर साठवण्यासाठी वापरला जाणार आहे.
याच नावाचा दुसरा व्हेरीएबल आपण त्याच फंक्शन किंवा क्लासमध्ये डीक्लेअर करू शकत नाही.
2
String s2 = "I'm Dheeraj";
ही ओळ s2 नावाचा स्ट्रिंग व्हेरीएबल तयार करते आणि लगेचच त्याला "I'm Dheeraj" हे मूल्य देते.
3
int a;
इथे आपण a नावाचा एक व्हेरीएबल तयार केला. त्याचा डेटा प्रकार त्यात काय साठवले जाईल तसा असतो. int डेटा प्रकार हा integer साठीचे संक्षिप्त रूप आहे.
4
int b = 4;
आपण b नावाचा व्हेरीएबल तयार केला. त्याचा डेटा प्रकार (int) इंटीजर (पूर्णांक संख्या) साठवण्यासाठी आहे. 4 हे मूल्य व्हेरीएबलला लगेचच देण्यात आले आहे.

"या धीरजने दिलेल्या काही टास्क्स आहेत. त्यावर एकावेळी थोडे थोडे काम कर."