How a Calculator Works
ক্যালকুলেটর হিসাব করে কীভাবে?
ক্যালকুলেটর হিসাব করে কীভাবে?
ক্যালকুলেটর ৭ + ৫ সঙ্গে সঙ্গে ১২ দেয়। ভেতরে সে দশমিকে নয়, বাইনারিতে হিসাব করে — আর তা করে কয়েকটা ছোট বৈদ্যুতিক সুইচ (Logic Gate) দিয়ে, কোনো "গণিত বোঝা" মস্তিষ্ক ছাড়াই।
কেন ক্যালকুলেটর সরাসরি দশমিকে হিসাব করে না?
ইলেকট্রনিক বর্তনী শুধু দুটি নির্ভরযোগ্য অবস্থা চেনে — বিদ্যুৎ আছে (1) বা নেই (0)। দশমিকে ১০টি ভিন্ন অবস্থা (0-9) ভৌতভাবে বানানো জটিল ও অনির্ভরযোগ্য হতো। তাই সব ইনপুট প্রথমে বাইনারিতে রূপান্তরিত হয়, হিসাব বাইনারিতে হয়, শেষে ফলাফল আবার দশমিকে রূপান্তরিত হয়ে দেখানো হয়।
ধাপ ১ — সংখ্যা → বাইনারি
৭ = 0111
৫ = 0101
ধাপ ২ — বাইনারি যোগের নিয়ম
| A | B | যোগফল | হাতে রইল (Carry) |
|---|---|---|---|
| 0 | 0 | 0 | 0 |
| 0 | 1 | 1 | 0 |
| 1 | 0 | 1 | 0 |
| 1 | 1 | 0 | 1 |
0111 (৭)
+ 0101 (৫)
------
1100 (১২)
ধাপ ৩ — লজিক গেট দিয়ে যোগ
এই নিয়মটাই লজিক গেট দিয়ে বানানো হয়:
- XOR গেট → যোগফলের বিট দেয় (দুই ইনপুট ভিন্ন হলে 1)।
- AND গেট → Carry দেয় (দুই ইনপুট 1 হলে তবেই 1)।
দুটো মিলিয়ে তৈরি হয় একটা Half Adder; কয়েকটা Half Adder জুড়ে Full Adder — যা আগের ঘরের Carry-ও যোগ করতে পারে। একের পর এক Full Adder পাশাপাশি বসিয়ে সম্পূর্ণ বহু-বিট সংখ্যা যোগ করা যায়।
ধাপ ৪ — বিয়োগ, গুণ, ভাগও একই সার্কিট দিয়ে
মজার বিষয় হলো, ক্যালকুলেটরে আলাদা "বিয়োগ সার্কিট" নেই। বিয়োগ করা হয় 2's Complement কৌশলে — ঋণাত্মক সংখ্যা এমনভাবে বাইনারিতে প্রকাশ করা হয় যে বিয়োগকে যোগেই রূপান্তর করা যায়। গুণ করা হয় বারবার যোগ করে, ভাগ করা হয় বারবার বিয়োগ করে — একই Adder সার্কিট বারবার ব্যবহার করেই সব ধরনের হিসাব সারা হয়।
ধাপ ৫ — ফল আবার দশমিকে
বাইনারি ফল 1100 আবার দশমিকে রূপান্তর হয়ে স্ক্রিনে ১২ দেখায় — এই রূপান্তরও একটি নির্দিষ্ট সার্কিট (Decoder) করে থাকে।
দশমিক ইনপুট → বাইনারি → Logic Gate (Adder) দিয়ে হিসাব → বাইনারি ফলাফল → দশমিকে রূপান্তর → স্ক্রিনে প্রদর্শন
বাস্তব জীবনের সাথে মিল
🏠 অ্যানালজি: এটা অনেকটা দোভাষীর মাধ্যমে কথা বলার মতো — তুমি বাংলায় (দশমিক) প্রশ্ন করো, দোভাষী (Encoder) তা ইংরেজিতে (বাইনারি) অনুবাদ করে বিদেশি অতিথিকে (Logic Gate) জিজ্ঞাসা করে, উত্তর পেয়ে আবার বাংলায় (Decoder) ফিরিয়ে তোমাকে বলে।
🔗 HSC সিলেবাস সংযোগ
- অধ্যায় ৩: বাইনারি গাণিতিক, লজিক গেট (AND, OR, XOR), Adder সার্কিট।
- এটি অধ্যায় ৩-এর সরাসরি প্রয়োগ — পরীক্ষায় খুব গুরুত্বপূর্ণ।
📝 HSC পরীক্ষার প্রস্তুতি
- Half Adder কী? দুটি বিট যোগ করে যোগফল ও Carry দেয় (XOR + AND)।
- Full Adder কী? তিনটি বিট (দুটি ইনপুট + আগের Carry) যোগ করে।
- বিয়োগ কীভাবে হয়? 2's Complement দিয়ে বিয়োগকে যোগে রূপান্তর করে, আলাদা সার্কিট লাগে না।
- অনুশীলন:
1011 + 0110= ? →10001।
📚 সারাংশ
ক্যালকুলেটর সংখ্যা বাইনারিতে নেয় → XOR ও AND গেট দিয়ে Adder যোগ করে → Carry সামলায় → বিয়োগ/গুণ/ভাগও একই Adder দিয়ে (2's Complement ও পুনরাবৃত্তির কৌশলে) করে → ফল দশমিকে ফিরিয়ে স্ক্রিনে দেখায়।