বিষয়: The Secret of the C Program
টপিক্স: আইডেন্টিফায়ার এবং ভেরিয়েবল
আইডেন্টিফায়ার
কী-বোর্ডের প্রতিটি বোতামে চাপ দিলে ৮ বিটের একটি করে অ্যাসিক কোড (যেমন: কী-বোর্ড থেকে A ক্যারেক্টারে বা বোতামে বা ডেটায় চাপ দিলে অ্যাসকি কোড 01000001 সৃষ্টি হয়) সৃষ্টি হয়। প্রোগ্রামে আমরা যেসকল ডেটা ইনপুট করায় তারা প্রাথমিকভাবে কম্পিউটারের মেমোরি (RAM) তথা মেমোরির সেলে গিয়ে জমা হয়। অন্যদিকে, RAM এর ভিতর থাকে কোটি কোটি সেল (যেমন: 2GB র একটি SRAM মেমোরিতে ১৬, ০০০, ০০০, ০০০ টি সেল) থাকে যারা আবার ফ্লিপ-ফ্লপ বা ন্যান্ড গেইট বা নর গেইট দ্বারা তৈরি হয় এবং প্রতিটি সেলেরই একটি করে আলাদা আলাদা অ্যাড্রেস থাকে যাকে সেল অ্যাড্রেস বলে।
আমরাজানি, RAM এর একটি সেল একটি করে বিটকে ধরে রাখেতে পারে এবং কী-বোর্ড থেকে A ক্যারেক্টারে বা বোতামে বা ডেটায় চাপ দিলে ৮ বিটের যে অ্যাসকি কোড সৃষ্টি হয়(01000001) তার জন্য মেমোরিতে ৮টি সেল (এই সেলগুলো মেমোরির অভ্যন্তরে বিভিন্ন জায়গায় হতে পারে) বরাদ্দ হয়। আর A এর 01000001 এই ৮ টি বিট RAM এর যে ৮টি সেলে গিয়ে জমা হয় ঐসকল সেলদের আবার অ্যাড্রেস থাকায় প্রোগ্রাম রচনার সময় আমরা যখন মেমোরির সেলে জমাকৃত ডেটা তথা ডেটার বিট প্রোগ্রামে ব্যবহার করতে যাই তখন সেলের অ্যাড্রেস ব্যবহার করা কষ্টকর হয়ে দাঁড়ায়। কারণ, মেমোরিতে লক্ষ্ লক্ষ বিটের জন্য লক্ষ লক্ষ সেল অ্যাড্রেস মনে রাখা সম্ভব না যেমন: আপনি কি বলতে পারবেন বাংলাদেশে বসবাসরত প্রতিটি মানুষের ঠিকানা বা অ্যাড্রেস? উত্তর হবে অবশ্যই না। তাই এ অসুবিধা দূর করার জন্য কোন ডেটার বিটগুলো মেমোরির যেসকল সেলে গিয়ে জমা হয় প্রোগ্রাম রচনার সময় ঐসকল সেলদের বোঝাতে প্রোগ্রামে একটি প্রতীকি নাম দেওয়া হয়। যেমন ধরুন, কী-বোর্ডের কোন ক্যারেক্টারে বা বোতামে বা ডেটাতে চাপদিলেন, ফলে ৮ টি বিট তৈরি হল এবং তা RAM এর কোন ৮ টি সেলে গিয়ে জমা হল। এখন, কোন কোন সেলে গিয়ে উক্ত ডেটার বিটগুলো জমা হল তাদের অ্যাড্রেস কি বলতে পারবেন? উত্তর হবে, না। সহজ কারণটা হল আপনিতো মেমোরি সেলদেরই দেখতে পারবেন না, তাদের অ্যাড্রেস কিভাবে সম্ভব!
তাই প্রোগ্রামে ঐসকল সেলদের বোঝাতে প্রতিকী নাম হিসেবে a, b, c, d, e, ….x, y, z অথবা, কতগুলো বর্ণ দ্বারা গঠিত একটি শব্দ যেমন: amount, number, account23, myroll13 ইত্যাদি ব্যবহার করে থাকি। আর এইসকল প্রতীকি নাম বা বর্ণকে ডেটার ধারক বা ডেটা আইডেন্টিফায়ার বলে (অর্থাৎ, যে নাম বা বর্ণ দ্বারা মেমোরির কোন কোন সেলে ডেটা তথা ডেটার বিট জমা আছে তা শনাক্ত বা আইডেন্টিফাই করা হয় তাদেরকে ডেটা আইডেন্টিফায়ার বলে। )
ভেরিয়েবল
মেমোরির সেলগুলো যদি এক এক সময় এক এক ডেটা বা ডেটার বিট জমা করতে থাকে তথা মেমোরির সেলগুলো যদি সবসময় ডেটা বা ডেটার বিট পরিবর্তন করতে থাকে তাহলে প্রোগ্রামে ঐসকল পরিবর্তনশীল মেমোরির সেল নির্দেশক আইডেন্টিফায়ারকে ভেরিয়েবল বলে।
[পরবর্তী অংশ পরের টিউনসে্ এ লেখা হবে। ]
এই টিউনস্ টি যদি ভাল লেগে থাকে তাহলে পরের টিউনস্ টির জন্য অপেক্ষা করুন।
আমি নাজিম উদ্দিন। বিশ্বের সর্ববৃহৎ বিজ্ঞান ও প্রযুক্তির সৌশল নেটওয়ার্ক - টেকটিউনস এ আমি 3 বছর 1 মাস যাবৎ যুক্ত আছি। টেকটিউনস আমি এ পর্যন্ত 2 টি টিউন ও 6 টি টিউমেন্ট করেছি। টেকটিউনসে আমার 0 ফলোয়ার আছে এবং আমি টেকটিউনসে 0 টিউনারকে ফলো করি।
আমি মো. নাজিম উদ্দিন। আম এই বছর গণিতে বি.এস.সি অনার্স সম্পন্ন করেছি। পাশাপাশি, আমি ২০১৮ থেকে ২০২১ আগস্ট পর্যন্ত কম্পিউটারের সি প্রোগ্রামিং ভাষার উপর দীর্ঘ গবেষণা, অনুসন্ধান, অনুশিলন এবং প্রোগ্রাম রচনার মাধ্যমে অর্জিত জ্ঞান দ্বারা বাংলাদেশের সবচেয়ে বৃহৎ প্রোগ্রামিং বই (৫০০ পেইজ, গোপন তথ্য, রহস্য, অজস্র প্রোগ্রাম, ব্যাখ্যা, বিশ্লেষণ, উদাহরণ)...