তৃতীয় অধ্যায় পাঠ-৭ কোড (BCD কোড, ইবিসিডিক (EBCDIC) কোড, অ্যাসকি (ASCII), ইউনিকোড )।
এই পাঠ শেষে যা যা শিখতে পারবে-
- ১। কোডের ধারণা ব্যাখ্যা করতে পারবে।
- ২। BCD কোড ব্যাখ্যা করতে পারবে।
- ৩। বিভিন্ন আলফানিউমেরিক কোড (EBCDIC, ASCII, Unicode) ব্যাখ্যা করতে পারবে।
কোড: কম্পিউটার সিস্টেমে ব্যবহৃত প্রতিটি বর্ণ, অঙ্ক, সংখ্যা, প্রতীক বা বিশেষ চিহ্নকে আলাদাভাবে CPU(Central Processing Unit) কে বুঝানোর জন্য বাইনারি বিটের (০ বা ১) অদ্বিতীয় সংকেত তৈরি করা হয়। এ অদ্বিতীয় সংকেতকে বলা হয় কোড।
প্রয়োগের ক্ষেত্রের উপর ভিত্তি করে বিভিন্ন ধরনের কোডের উদ্ভব হয়েছে। যেমন−
- বিসিডি (BCD) কোড
- আলফানিউমেরিক কোড (Alphanumeric code)
- ইবিসিডিক (EBCDIC) কোড
- অ্যাসকি (ASCII) কোড
- ইউনিকোড (Unicode) ইত্যাদি।
BCD কোড: BCD এর পূর্ণ রূপ হলো Binary Coded Decimal। ডেসিমেল সংখ্যার প্রতিটি অঙ্ককে (০ থেকে ৯ পর্যন্ত) সমতুল্য চার-বিট বাইনারি দ্বারা প্রতিস্থাপন করার পর প্রাপ্ত কোডকে BCD কোড বলে। অন্যকথায় BCD কোড একটি ৪-বিট বাইনারি ভিত্তিক কোড। BCD কোড কোন সংখ্যা পদ্ধতি নয়। এটি সাধারণত ডেসিমেল সংখ্যার প্রতিটি অংককে বাইনারিতে এনকোড করার পদ্ধতি। তাই বলা যায় BCD কোড এবং বাইনারি সংখ্যা এক নয়। BCD কোড ক্যালকুলেটর, ডিজিটাল ঘড়ি ও ভোল্টমিটার প্রভৃতিতে ব্যবহৃত হয়।
নিম্নে কয়েক ধরণের BCD কোডের নাম দেওয়া হলো-
- BCD 8421 কোড (NBCD– Natural Binary Coded Decimal)
- BCD 7421 কোড
- BCD 5421 কোড
- BCD 2421 কোড
- Excess-3 কোড
0-৯ পর্যন্ত ডেসিমেল সংখ্যার বিভিন্ন BCD কোড নিচের টেবিলে দেখানো হল-
উদাহরণ-১: (592)10 কে BCD কোডে রূপান্তর কর।
সুতরাং (592)10 = (010110010010)BCD
উদাহরণ-2:(807)10 কে BCD কোডে রূপান্তর কর।
আলফানিউমেরিক কোড: কম্পিউটারে সংখ্যাসূচক(০-৯) চিহ্নের পাশাপাশি অন্যান্য বর্ণ (a-z,A-Z) বা চিহ্নও (+,$,*,#,% ইত্যাদি) ব্যবহৃত হয়। এসব সংখ্যা, চিহ্ন বা বর্ণের জন্য যে কোড ব্যবহৃত হয় তাকে আলফানিউমেরিক কোড বলে।
ইবিসিডিআইসি কোড (EBCDIC): EBCDIC এর পূর্ণরূপ Extended Binary Coded Decimal Information Code । এটি BCD কোডের নতুন সংস্করণ। BCD কোড ৪-বিটের কোড যার মাধ্যমে ২৪ =১৬ টি বিভিন্ন সংখ্যা কোডভুক্ত করা যেত। পরবর্তিতে BCD কোডের সাথে বামে ০-৯ সংখ্যার জন্য ১১১১, A-Z বর্ণের জন্য ১১০০,১১০১ ও ১১১০ এবং বিশেষ চিহ্নের জন্য ০১০০,০১০১,০১১০ ও ০১১১ ৪-বিটের জোন বিট যোগ করে ৮-বিটের EBCDIC কোড প্রকাশ করা হয়। ফলে এ কোড দ্বারা ২৮ অর্থাৎ ২৫৬টি অঙ্ক, বর্ণ এবং বিশেষ চিহ্ন প্রকাশ করা যায়।
মনে করি ৫, কে EBCDIC কোডে প্রকাশ করতে হবে। তাহলে ৫ এর বিসিডি ৮৪২১ কোডে মান হবে ০১০১। সুতরাং, ৫ এর EBCDIC কোডে মান হবে ১১১১০১০১।
IBM মেইনফ্রেম বা এর সমকক্ষ ও মিনি কম্পিউটারে EBCDIC কোড ব্যবহার করা হয়।
ASCII: ASCII এর পূর্ণ নাম American Standard Code For Information Interchange । ASCII আধুনিক কম্পিউটারে বহুল ব্যবহৃত কোড। এর প্রকাশক ANSI(American National Standard Institute )। ASCII দুই ধরনের হয়ে থাকে। যথা:
- ASCII-7
- ASCII-8
ASCII-7 এ ৭টি বিট থাকে, যার বাম দিকের তিনটি বিটকে জোন বিট এবং ডানদিকের চারটি বিটকে বলা হয় সংখ্যাসূচক বিট। ASCII-7 এ ৭ বিট দ্বারা মোট ২৭= ১২৮ টি অদ্বিতীয় চিহ্ন কম্পিউটারকে অদ্বিতীয়ভাবে বুঝানো যায়।
ASCII-7 এর সাথে বামে একটি প্যারিটি বিট যোগ করে ASCII-8 তৈরি করা হয়। ASCII-8 এর ৮ বিট দ্বারা মোট ২৮ = ২৫৬ টি অদ্বিতীয় চিহ্ন কম্পিউটারকে অদ্বিতীয়ভাবে বুঝানো যায়। বর্তমানে ASCII বলতে ASCII-8 কেই বুঝানো হয়।
বিভিন্ন ধরণের কীবোর্ড, মাউস, মনিটর, প্রিন্টার ইত্যাদি যন্ত্রের মধ্যে আলফানিউমেরিক ডেটা আদানপ্রদান করার জন্য ASCII ব্যপকভাবে ব্যবহৃত হয়।
Unicode: Unicode এর পূর্ণনাম হলো Universal Code বা সার্বজনীন কোড। ASCII এর সাহায্যে ২৫৬ টি চিহ্নকে কম্পিউটারে অদ্বিতীয়ভাবে বুঝানো যায়। ফলে ইংরেজি ভাষা ব্যতীত অন্য কোন ভাষা কম্পিউটারে ব্যবহার করা যেত না। বিশ্বের সকল ভাষাকে কম্পিউটারে কোডভুক্ত করার জন্য বড় বড় কোম্পানিগুলো একটি মান তৈরি করেছেন যাকে ইউনিকোড বলা হয়। Apple Computer Corporation এবং Xerox Corporation এর একদল প্রকৌশলী ইউনিকোড উদ্ভাবন করেন। ইউনিকোড মূলত ২ বাইট বা ১৬ বিটের কোড। এ কোডের মাধ্যমে ২১৬ বা ৬৫,৫৩৬ টি অদ্বিতীয় চিহ্ন কম্পিউটারকে অদ্বিতীয়ভাবে বুঝানো যায়।
ইউনিকোডের সুবিধাঃ
- ইউনিকোড ২ বাইট বা ১৬ বিটের কোড ফলে ২১৬ = ৬৫৫৩৬ টি চিহ্নকে কম্পিউটার সিস্টেমে অদ্বিতীয়ভাবে বুঝানো যায়।
- এই কোডের সাহায্যে বিশ্বের ছোট বড় সকল ভাষাকে কম্পিউটারে বুঝানো যায়।
- ইউনিকোডের প্রথম ২৫৬ টি কোড অ্যাসকি কোডের অনুরুপ। তাই বলা যায় ইউনিকোড অ্যাসকি কোডের সাথে কম্প্যাটিবল।
পাঠ মূল্যায়ন-
- ক। কোড কী?
- ক। BCD কোড কী?
- ক। আলফানিউমেরিক কোড কী?
- ক। ASCII কী?
- ক। ইউনিকোড কী?
- খ। (১৫)১০ এর সমকক্ষ BCD কোড এবং বাইনারি সংখ্যার মধ্যে কোনটিতে বেশি বিট লাগে? ব্যাখ্যা কর।
- খ। “বিসিডি কোড কোনো সংখ্যা পদ্ধতি নয়” – ব্যাখ্যা কর।
- খ। ইউনিকোডের পূর্বে সবচেয়ে বেশি ব্যবহৃত আলফানিউমেরিক্যাল কোডটি ব্যাখ্যা কর।
- খ। “ইউনিকোড সকল ভাষার জন্য উপযোগী” – ব্যাখ্যা কর।
- খ। পৃথিবীর সকল ভাষাকে কম্পিউটার কোডভূক্ত করার জন্য ব্যবহৃত কোডটির বর্ণানা দাও।
উদ্দীপক অনুসারে প্রশ্নের উত্তর দাওঃ
আইসিটি শিক্ষক ক্লাসে ছাত্রদের বললেন, কম্পিউটার A কে সরাসরি বুঝতে পারে না বরং একে একটি লজিক সার্কিটের সাহায্যে ৮ বিটের বিশেষ সংকেতে করে বুঝে থাকে। তিনি আরো বললেন, উক্ত সংকেতায়ন পদ্ধতিতে বাংলা কম্পিউটারকে বোঝানো যায় না। এজন্য ভিন্ন একটি সংকেতায়ন পদ্ধতির প্রয়োজন হয়।
ঘ। উদ্দীপকের সংকেতায়ন পদ্ধতিদ্বয়ের মধ্যে কোনটি সুবিধাজনক তোমার মতামত যুক্তিসহ উপস্থাপন কর।
উদ্দীপক অনুসারে প্রশ্নের উত্তর দাওঃ
আইসিটি ক্লাসে বিভিন্ন সংখ্যা পদ্ধতি এবং এদের পারস্পারিক রূপান্তর সম্পর্কে পড়াচ্ছিলেন। উদাহরণস্বরূপ (76)8 এবং (48)10 সংখ্যা দুটিকে বাইনারীতে রূপান্তর করে দেখালেন। অতঃপর তিনি এমন একটি পদ্ধতি ব্যাখ্যা করলেন যেটি ব্যবহার করে একই সার্কিট এর মাধ্যমে যোগ ও বিয়োগের কাজ করা যায়। পরবর্তীতে তিনি বিভিন্ন কোড সম্পর্কে আলোচনা করতে গিয়ে একটি কোডের কথা উল্লেখ করলেন যেটি ব্যবহার করে বর্তমানে যেকোন ভাষাকে কম্পিউটারে ইনপুট দেয়া যায়।
গ। উদ্দীপকে উল্লিখিত কোডটি ব্যাখ্যা কর।