মূলত কম্পিউটার কিছু বৈদ্যুতিক সঙ্কেত নিয়ে কাজ করে। এই সঙ্কেতকে দুটি অঙ্ক দ্বারা প্রকাশ করা হয়। এই অঙ্ক দুটি হলো− ০ ও ১
। আমরা কম্পিউটারে যা কিছু দেখি বা শুনি, তার সবই এই দ্বি-আঙ্কিক পদ্ধতিতে প্রক্রিয়াজাত হয় এবং তা বিভিন্ন অনুবাদক প্রোগ্রামের দ্বারা আমাদের দেখার বা শোনার উপযোগী হয়ে উঠে। সুতরাং আমরা বলতে পারি যে, কম্পিউটারে উপস্থাপিত যে কোন ভাষার প্রতিটি বর্ণ বা অন্য যে কোনো চিহ্নের জন্য একটি নির্দিষ্ট সংখ্যামান থাকে।
এই জাতীয় অসুবিধা দূর করার ক্ষেত্রে অবশ্য উভয় এনকোডিং-এর মধ্যে সমন্বয় করার জন্য অন্য একটি অনুবাদক প্রোগ্রাম ব্যবহার করা যেতে পারে। এক্ষেত্রে একই ভাষার সকল এনকোডিং পদ্ধতিতে কম্পিউটারকে শিক্ষিত করে তোলার জন্য প্রয়োজন হবে পৃথক পৃথক অনুবাদক প্রোগ্রামের। কিন্তু সমস্যার এখানেই শেষ নয়। যখন একটি এনকোডিং পদ্ধতি থেকে অপর এনকোডিং পদ্ধতিতে পরিবর্তন করার প্রয়োজন হবে, তখন দেখতে হবে, ওই পদ্ধতিগুলো কোন ধরনের অপারেটিং সিসটেম সমর্থন করে। অর্থাৎ লিনাক্স পরিমণ্ডলের প্রদেয় পদ্ধতিতে এনকোডিং ও অনুবাদক প্রোগ্রাম উইন্ডোজ সমর্থন না করলে, সমূহ সমস্যায় পড়তে হবে। সুতরাং এক্ষেত্রে বিভিন্ন ব্যাক্তি বা সংস্থার দ্বারা একই ভাষায় লিখিত কোনো পাঠ্যবিষয় পড়তে গেলে যে বিষয়গুলোর দিকে নজর দিতে হয়, তা হলো− লেখাটি ওই কম্পিউটারে ব্যবহৃত এনকোডিংটির অনুরূপ কিনা
। এক্ষেত্রে অপারেটিং সিসটেমের কথাও বিবেচনা করতেই হবে। এতসব ঝামেলা থেকে রক্ষা পাবার জন্যই উদ্ভাবন করা হয়েছে ইউনিকোড পদ্ধতি। এক্ষেত্রে প্রতিটি ভাষার প্রতিটি বর্ণ বা চিহ্নের জন্য থাকবে একটি সুনির্দিষ্ট সংখ্যামান। এই মান যে কোন অপারেটিং সিসটেম্, ল্যাঙ্গুয়েজ বা প্রোগ্রামের ক্ষেত্রে অদ্বিতীয় হিসাবে বিবেচিত হবে।
ইউনিকোডের আরম্ভ
১৯৮৭
খ্রিষ্টাব্দের
দিক
Xerox
(নথি ব্যাবস্থাপন কোম্পানি, ফটোকপি ম্যাশিন,
সাদাকালো
মুদ্রণ যন্ত্রের নির্মাতা এবং বিক্রয়কারী প্রতিষ্ঠান) এর গবেষক জো
বেকার
(Joe
Becker)
এবং
Apple
(এ্যাপল কম্পিউটার কোম্পানি)
এর
লী কলিন্স
(Lee Collins)
এবং মার্ক ডেভিস
(Mark
Davis)
এর প্রাথমিক গবেষণা শুরু করেন। ১৯৮৮
খ্রিষ্টাব্দের ২৯ আগষ্ট তারিখে ১৯৯৮ জো
বেকার আন্তর্জাতিক/বহুভাষিক পাঠ্য সঙ্কেতায়ন পদ্ধতি বিষয়ক একটি গবেষণা
পত্র প্রকাশ করেন। এই পত্রের নাম ছিল
unicode 88।
এক্ষেত্রে তিনি ১৬-বিট সমর্থক বর্ণচিহ্ন আদর্শ উপস্থাপন করেছিলেন।
এরপর
১৯৯১
খ্রিষ্টাব্দের
জানুয়ারিতে ক্যালিফোর্নিয়া শহরে,
বিশ্বের বড় বড়
কোম্পানীগুলোর নেতৃত্বে প্রতিষ্ঠিত হয় ইউনিকোড কনসোর্টিয়াম।
পরবর্তী বছরগুলোতে এর উদ্যোগ গ্রহণকারীরা
অপ্রাতিষ্ঠানিক আঙ্গিকে এর কার্যক্রম শুরু করলেও ধীরে ধীরে এটি একটি
সংঘবদ্ধ কার্যক্রমে পরিণত হয়।
বর্তমানে ইউনিকোড আদর্শকে উন্নয়ন ও প্রসারের জন্য
কাজ করে চলেছে ইউনকোড কনসোর্টিয়াম।
এরাই মূলত পর্যায়ক্রমে ইউনিকোড
আদর্শকে
প্রকাশ ও প্রচার করে চলেছে।
ইউনিকোড কনসোর্টিয়াম (Unicode
Consortium)
এটি একটি অলাভজনক প্রতিষ্ঠান।
এদের উদ্দেশ্যই হলো ইউনিকোডের উন্নয়ন,
প্রসার ও প্রচার করা।
এই কনসোর্টিয়ামের একটি বোর্ড আছে।
এই বোর্ডের সদস্যরা হলো কম্পিউটারের উন্নয়ন ও
প্রসারের সাথে সম্পর্কিত কর্পোরেশান এবং অর্গানাইজেশান বা কম্পিউটার
নিয়ন্ত্রিত তথ্য উন্নয়নকারী প্রতিষ্ঠান।
অন্যদিকে ইউনিকোড আদর্শকে সমর্থন করেন এমন সকল
ব্যক্তি বা প্রতিষ্ঠানের সহযোগিতা করা জন্য বা সহযোগিতা প্রাপ্তির
জন্য এই কমসোর্টিয়াম উন্মুক্ত করে দেওয়া হয়েছে।
এঁরা ইউনিকোডের আদর্শরূপ প্রণয়নের জন্য প্রতিনিয়ত
কাজ করে চলেছেন।
সেই সূত্রে এঁরা নিয়মিতভাবে উন্নয়নকৃত ইউনিকোডের
সর্বশেষ সংস্করণ সম্পর্কে কম্পিউটার ব্যবহারকারীদের অবগত করাচ্ছে।
এই উন্নয়নের জন্য এরা সফটওয়্যার উন্নয়নকারী
প্রতিষ্ঠান এবং গবেষকদের একসূত্রে গাঁথার চেষ্টা করে চলেছে।
একই সাথে এরা -
International Standard ISO/IEC 10646
-সহ ইউনিকোডকে স্থানীয়করণ ও আন্তর্জাতিককরণের জন্য সর্বাত্মক চেষ্টা
চালিয়ে যাচ্ছে। উল্লেখ্য
বর্তমানে ইউনিকোড কনসোর্টিয়ামের সদস্যরা হচ্ছেন
Adobe, Apple, Denic, Google, IBM, Microsoft, NetApp, Oracle, SAP,
Sun, Sybase, Yahoo.
ওয়েব পেজ :
http://www.unicode.org/
সদস্য হওয়ার নিয়মাবলী
সদস্য ফি দিয়ে যে কেউই ইউনিকোডের সদস্য হতে পারবে। সাত ধরণের সদস্যদের জন্য রয়েছে
সাত রকমের সদস্য ফি। প্রতি বছরই এই সদস্যপদ পূর্ণবহাল করতে হয়।
কমপিউটার বিষয়ক কোম্পানি, সরকারি
প্রতিষ্ঠান, গবেষণা কেন্দ্র, শিক্ষা প্রতিষ্ঠান, সফটওয়্যার নির্মাতা প্রতিষ্ঠান,
ভাষা আর্ন্তজাতিককরণে যারা কাজ করে, এমনকি ব্যক্তিগতভাবেও ইউনিকোড কনসোর্টিয়ামের
সদস্যপদ দিয়ে থাকে। সদস্যপদের বিভাগ ও সদস্যপদ গ্রহণের মূল্য তালিকা হচ্ছে− পূর্ণ
সদস্যপদ ১৫০০০ ডলার, প্রাতিষ্ঠানিক ১২০০০ ডলার, সমর্থিত ৭৫০০ ডলার, সহযোগী (লাভজনক
প্রতিষ্ঠান) ২৫০০ ডলার, সহযোগী (অলাভজনক প্রতিষ্ঠান) ১৫০০ ডলার, একক মালিকানা ১৫০
ডলার ও ছাত্রদের জন্য মাত্র ৫০ মার্কিন ডলার।
উল্লেখ্য যে, বাংলাদেশ এখনও
ইউনিকোডের সদস্য হয়
নি। বিভিন্ন রকমের সদস্যপদের রয়েছে বিভিন্ন রকমের সুবিধা। সদস্য
হওয়ার তথ্য পাবেন এখানে:
http://www.unicode.org/consortium/joinform.html
ইউনিকোড আদর্শ (Unicode
Standard)
ইউনিকোডের আদর্শ হলো−
কম্পিউটার পরিমণ্ডলে সকল ভাষার অক্ষরসমূহ ও
অন্যান্য চিহ্নসমূহের জন্য প্রদেয় আদর্শ সংখ্যামান প্রণয়ন।
এক্ষেত্রে এই মান উপাত্তঘাঁটি, নেটওয়ার্ক ও
ইন্টারনেট-সহ বিভিন্ন পরিমণ্ডলে লিখিতভাষ্যকে যথার্থমানে প্রকাশ করবে।
যেহেতু এই ইউনিকোডের উন্নয়ন অব্যাহত রয়েছে, তাই
কিছুদিন পরপর এর সংস্করণ প্রকাশ করা হচ্ছে।
মূলত সাধারণভাবে প্রচলিত চিহ্নগুলোর জন্য প্রথম ৬৪০০০ কোড পয়েন্ট
রাখা হয়েছে।
এর জন্য সংরক্ষিত কোডের স্থানকে বলা হচ্ছে-
Basic Multilingual Plane।
এর সংক্ষিপ্ত রূপ হলো−BMP।
ভবিষ্যতে যাতে
BMP−কে
সম্প্রসারিত করা যায়, তার জন্য অব্যবহৃত কোড পয়েন্ট হিসাবে রাখা
হয়েছে প্রায় ৬৭০০
কোড পয়েন্ট।
এর বাইরে ৮৭০,০০০ কোড পয়েন্ট অব্যবহৃত অবস্থায় রাখা
হয়েছে ভবিষ্যতের কথা বিবেচনা করে।
ইউনিকোড স্ট্যান্ডার্ডে ব্যক্তিগত ব্যবহারের উপযোগী চিহ্ন জন্যও কোড পয়েন্টের ব্যবস্থা করেছে।
ফলে বিভিন্ন ব্যবসায়ী প্রতিষ্ঠান বা ব্যক্তি তাদের
নিজস্ব পরিমণ্ডলে ব্যবহৃত চিহ্নসমূহ ফন্ট হিসাবে এই কোড পয়েন্ট
সংরক্ষণ করতে পারবে।
এজন্য
BMP
-তে কোড পয়েন্ট পাওয়া যাবে ৬৪০০টি এবং অতিরিক্ত কোড পয়েন্ট পাওয়া
যাবে ১,৩১,০৬৮টি।
ইউনিকোড আদর্শের সংস্করণ এবং প্রকাশের তারিখ নিচে তুলে ধরা হলো
সংস্করণ |
তারিখ/মাস/সাল |
৫.১.০ |
৪ এপ্রিল, ২০০৮ |
৫.০.০ |
১৪ জুলাই, ২০০৬ |
৪.১.০ |
৩১ মার্চ, ২০০৫ |
৪.০.১ |
মার্চ, ২০০৪ |
৪.০.০ |
এপ্রিল, ২০০৩ |
৩.২.০ |
মার্চ, ২০০২ |
৩.১.১ |
আগষ্ট, ২০০১ |
৩.১.০ |
মার্চ, ২০০১ |
৩.০.১ |
আগষ্ট, ২০০০ |
৩.০.০ |
সেপ্টেম্বর, ১৯৯৯ |
২.১.৯ |
এপ্রিল, ১৯৯৯ |
২.১.৮ |
ডিসেম্বর, ১৯৯৮ |
২.১.৫ |
আগষ্ট, ১৯৯৮ |
২.১.২ |
মে, ১৯৯৮ |
২.০.০ |
জুলাই, ১৯৯৬ |
১.১.৫ |
জুলাই, ১৯৯৫ |
১.১.০ |
জুন, ১৯৯৩ |
১.০.১ |
জুন, ১৯৯২ |
১.০.০ |
অক্টোবর, ১৯৯১ |
উল্লেখ্য যে ইউনিকোড তাদের সংস্করণ সংখ্যা ২.০ থেকে অনলাইনে ডাটা প্রকাশ করে। তবে এখন তাদের অনলাইন আর্কাইবে সংস্করণ ১.১.৫ এর ডাটাও পাওয়া যায়।
ইউনিকোড ফর্ম (Unicode
Form)
অক্ষর বা চিহ্নের জন্য ব্যবহৃত এনকোডিং ব্যবস্থা, প্রতিটি চিহ্নের
জন্য একটি পরিচয় প্রদান করে থাকে।
এই পরিচয় হতে পারে সংখ্যাবাচক মান বা কোড পয়েন্ট
হিসাবে।
এমন কি চিহ্নের পরিচয় হতে পারে বিট-মান হিসাবেও।
আগেই বলেছি ইউনিকোড স্ট্যান্ডার্ড তিনটি এনকোডিং পদ্ধতিকে সমর্থন
করে থাকে।
এই পদ্ধতি হতে
পারে বাইট, অক্ষর বা দ্বি-অক্ষর
(double
word)
ভিত্তিক।
যেমন- ৮, ১৬ বা ৩২ বিট/কোড ইউনিট।
এই তিনটি ফরমেটকে বলা হয়–
UTF-8, UTF-16
ও
UTF-32
।
এই তিনটি পদ্ধতির যে কোনটি সুচারুরূপে চিহ্নগুলোকে
এক পরিবেশ থেকে অন্যত্র সঞ্চালন করতে পারবে।
এক্ষেত্রে কোন তথ্য হারানোর ভয় থাকবে না।
UTF-8
এটি HTML বা এই জাতীয় প্রটোকলের জন্য অত্যন্ত জনপ্রিয় পদ্ধতি। এই পদ্ধতিতে সকল ইউনিকোড চিহ্ন বাইটের একটি ভেরিয়েবল লেন্থ এনকোডিংয়ে পরিণত হয়। এর বড় সুবিধা হলো– এক্ষেত্রে ইউনিকোড চিহ্নটি আসকি সেটের অনুরূপ বাইট মানের সাথে সরাসরি সমন্বয় করতে পারে। ফলে সহায়ক সফটওয়্যার ছাড়াই ইউনিকোড আসকীকোডে রূপান্তরিত হয়ে যায়।
UTF-16
এই পদ্ধতিতে অক্ষর মানগুলো একক ১৬-বিট পদ্ধতিতে সমন্বিত হয়। এই পদ্ধতির বড় সুবিধা হলো− খুব অল্প জায়গায় (বাইট হিসাবে) অধিক সংখ্যক অক্ষরের সমাবেশ ঘটানো যায়। ফলে ডেটা সঞ্চালন এবং সংরক্ষণে বড় ধরনের সুবিধা পাওয়া যায়।
UTF-32
এই পদ্ধতিতে প্রতিটি ইউনিকোড চিহ্ন ৩২-বিট কোড ইউনিটে সমন্বিত হয়।
কম্পিউটারে বর্ণচিহ্ন প্রক্রিয়াকরণ পদ্ধতি
আমরা যখন কোন ভাষার একটি বর্ণকে কম্পিউটারের সাহায্যে লিখি,
তখন মূলত ব্যবহার করি কিবোর্ড।
অবশ্য যৎসামান্য হলেও মাউসের ক্লিক দ্বারা
লিখার পদ্ধতি প্রচলিত রয়েছে।
তবে মাউসের সাহায্যে লিখার পদ্ধতিটি বহুল
প্রচলিত বা মূলধারার লিখন পদ্ধতির আওতায় পড়ে না।
আমরা যখন কোন পাঠ্যবিষয়কে কিবোর্ডের সাহায্যে লিখি,
তখন কিবোর্ডের চাবিগুলোর উপর মুদ্রিত অক্ষরের ছবিকেই
অনুসরণ করি।
একজন কম্পিউটার ব্যবহারকারী যখন কিবোর্ডের কোন
বিশেষ অক্ষর লিখার জন্য কোনো সুনির্দিষ্ট চাবি-তে চাপ দেন, তখন ওই
চাবি একটি বৈদ্যুতিক
সঙ্কেত সৃষ্টি করে।
তখন কম্পিউটারের সিসটেম সফটওয়্যার উক্ত সঙ্কেতকে
গ্রহণ করে।
এই সঙ্কেতের সাপেক্ষে কম্পিউটারে যদি চিহ্ন বা ছবি
সংরক্ষিত থাকে, তা হলে, সিসটেম ওই সঙ্কেতকে সংরক্ষিত ছবিতে
রূপান্তরিত করবে।
ধরা যাক আপনি কিবোর্ড থেকে ইংরেজি
T
অক্ষরটিতে চাপ দিয়েছেন।
এর ফলে একটি বৈদ্যুতিক সঙ্কেতের সৃষ্টি হয়েছে।
এই সঙ্কেতকে সিসটেম অক্ষর প্রকাশক সঙ্কেতে পরিণত করবে।
ধরা যাক, এই সঙ্কেতটি U+0054
এই ভাবে একটি
সঙ্কেতকে অপর সঙ্কেতে পরিণত করার পদ্ধতির সাধারণ নাম হলো অনুবাদ।
কিন্তু কম্পিউটার ব্যবহারকারীরা একে বলবেন এনকোড।
এক্ষেত্রে কম্পিউটার ব্যবহারকারীরা একে অনুবাদ বলেন না, কারণ তাঁরা
দেখেন একটি সাংকেতিক কোড অন্য সাংকেতিক মানে পরিণত হয়।
যা হোক, এনকোডিং U+0054
১. অন্যান্য মৌলিক বর্ণের মতো পৃথক বর্ণ হিসাবে। অর্থাৎ a b c d e ইত্যাদি বর্ণের মতো।
২. দুটো বর্ণের সমন্বয়ে একটি নতুন বর্ণচিহ্নের তৈরি হতে পারে। এক্ষেত্রে গ্লিফ প্রকাশক সফটওয়্যার a এবং e বর্ণ দুটির মধ্যবর্তী ফাঁকা জায়গাকে বাতিল করে গায়ে গায়ে লাগিয়ে দেবে। (উল্লেখ্য æ বর্তমানে আইপিএ চিহ্ন হিসাবে ইউনিকোডের অন্তর্ভূক্ত হয়েছে)। বাংলা বা হিন্দির মতো যে সকল ভাষায় ব্যাপক যুক্তবর্ণ ব্যবহৃত হয়, সেখানে এই পদ্ধতিই অনুসরণ করা হয়। এই সমন্বয় একাধিক বর্ণ নিয়ে হতে পারে। যেমন- উজ্জ্বল। এখানে জ্জ্ব হলো- জ্ + জ্ +ব্।
বাংলাতে কোন কোন যুক্ত বর্ণ ভিন্ন চেহারায় দেখা যায়। যেমন- ক + ষ =ক্ষ। এক্ষেত্রে সফটওয়্যার ক এবং ষ এর যুক্তরূপকে পৃথক চিহ্ন হিসাবে ক্ষ-কে প্রকাশ করে।
ইউনিকোড মান প্রকাশের বৈশিষ্ট্য
ইউনিকোড আদর্শ অনুসারে প্রতিটি বর্ণ যে বিশেষ পদ্ধতির দ্বারা
প্রকাশ করা হয়- তা হলো–
১. প্রতিটি ভাষার প্রতিটি বর্ণচিহ্নের জন্য রয়েছে পৃথক কোড পয়েন্ট। এই কোড পয়েন্ট ষোড়শাঙ্কিক মান দ্বারা নির্ধারিত হয়ে থাকে। যেমন ইংরেজি A বর্ণটির মান হলো–০০৪১।
২. প্রতিটি ষোড়শাঙ্কিক মানের আগে উপসর্গ হিসাবে U সঙ্কেত বসে এবং এই এর পর + চিহ্ন যুক্ত হয়। ইংরেজি A বর্ণটির ইউনিকোড মান অনুসারে হবে– U+0041 । উল্লেখ্য A বর্ণটির দশমিক মান হলো- 65 ।
৩. প্রতিটি বর্ণকে একটি অদ্বিতীয় নাম প্রদান করা হয়েছে। যেমন– U+0041। এই মানটিকে নাম দেওয়া হয়েছে- LATIN CAPITAL LETTER A। বাংলা ক অক্ষরটির ইউনিকোড হলো– U+995। এর জন্য প্রদেয় অদ্বিতীয় নামটি হলো- BENGALI LETTER KA ।
৪. প্রতিটি ভাষার জন্য ইউনিকোড মানের একটি সীমা নির্ধারণ করে দেওয়া হয়েছে। যেমন– বাংলার জন্য নির্ধারিত সীমা-মান হলো- 0980–09FF।
তথ্যসূত্র :
http://unicode.org/
en.wikipedia.org/wiki/Unicode