ওয়েবে বাইনারি ডেটা প্রেরণে বেস 128 এর পরিবর্তে কেবল বেস 64 কেন ব্যবহার করা হয়? ASCII অক্ষর সেটটিতে 128 টি অক্ষর রয়েছে যা তাত্ত্বিকভাবে 128 বেসকে উপস্থাপন করতে পারে তবে কেবল বেস 64 কিন্তু বেস 128 নয় বেশিরভাগ ক্ষেত্রে ব্যবহৃত হয়।
ওয়েবে বাইনারি ডেটা প্রেরণে বেস 128 এর পরিবর্তে কেবল বেস 64 কেন ব্যবহার করা হয়? ASCII অক্ষর সেটটিতে 128 টি অক্ষর রয়েছে যা তাত্ত্বিকভাবে 128 বেসকে উপস্থাপন করতে পারে তবে কেবল বেস 64 কিন্তু বেস 128 নয় বেশিরভাগ ক্ষেত্রে ব্যবহৃত হয়।
উত্তর:
সমস্যাটি হ'ল ASCII অক্ষর সেটটির কমপক্ষে 32 টি অক্ষর হ'ল 'নিয়ন্ত্রণের অক্ষর' যা প্রাপ্তি টার্মিনাল দ্বারা ব্যাখ্যা করা যেতে পারে। উদাহরণস্বরূপ, বিইএল (বেল) চরিত্র রয়েছে যা গ্রহণের টার্মিনাল চিমকে তৈরি করে। সেখানে এসট (ট্রান্সমিশনের শুরু) এবং ইওটি (সংক্রমণের শেষ) অক্ষর রয়েছে যা তাদের নামগুলি বোঝায় ঠিক সেইভাবে সম্পাদন করে। এবং সিআর এবং এলএফ অক্ষরগুলি ভুলে যাবেন না, যার কীভাবে ডেটা স্ট্রাকচারগুলি ধারাবাহিকভাবে / প্রবাহে সমতল করা যায় তার বিশেষ অর্থ হতে পারে।
অ্যাডোব ASCII অক্ষর সেটটিতে আরও অক্ষর ব্যবহার করতে বেস 85 এনকোডিং তৈরি করেছে , কিন্তু আফাইক এটি পেটেন্ট দ্বারা সুরক্ষিত।
কারণ সেই 128 টি চরিত্রগুলির মধ্যে কিছু অক্ষরহীন (মূলত কোডডপয়েন্ট 0x20 এর নীচে)। সুতরাং, তারা নির্ভরযোগ্যভাবে তারের উপর একটি স্ট্রিং হিসাবে প্রেরণ করা যাবে না। এবং, আপনি কোডপয়েন্ট 128 এর উপরে গেলে আপনার সিস্টেমে বিভিন্ন এনকোডিংয়ের কারণে এনকোডিং সমস্যা থাকতে পারে।
ইতিমধ্যে অন্যান্য উত্তরে যেমন বলা হয়েছে, মূল বিষয়টি মুদ্রণযোগ্যগুলিতে সেট করা অক্ষর হ্রাস করা। আরও কার্যকর এনকোডিং প্রকল্প বেসই 91 হয় কারণ এটি একটি বৃহত্তর অক্ষর সেট ব্যবহার করে এবং তবুও কম ASCII রেঞ্জের নিয়ন্ত্রণ / সাদা স্পেস অক্ষরগুলি এড়িয়ে চলে। ওয়েবপৃষ্ঠায় বাইনারি বনাম বেস 64 বনাম বেস E91 এনকোডিং দক্ষতার একটি দুর্দান্ত তুলনা রয়েছে ।
আমি একবার জাভা বাস্তবায়ন পরিষ্কার। লোকেরা আগ্রহী হলে আমি এটিকে গিটহাবের উপরে চাপ দিতে পারি।
আপডেট : এটি এখন গিটহাবে রয়েছে ।
প্রথম 32 টি অক্ষরের নিয়ন্ত্রণের অক্ষরটির একেবারেই কোনও প্রাসঙ্গিকতা নেই কারণ 128 টি অক্ষর পেতে আপনাকে এগুলি ব্যবহার করতে হবে না। আমাদের চয়ন করতে 256 টি অক্ষর রয়েছে, এবং কেবলমাত্র প্রথম 32 টি নিয়ন্ত্রণ অক্ষর। এটি 192 টি অক্ষর ফেলেছে এবং তাই নিয়ন্ত্রণ অক্ষর ব্যবহার না করেই 128 সম্পূর্ণ সম্ভব।
এখানে কারণ: এটি এমন কিছু হতে হবে যা দেখতে একই রকম হবে এবং আপনি অনুলিপি এবং পেস্ট করতে পারেন, যেখানেই তা নয়। এর জন্য এটি এমন অক্ষর হতে হবে যা কোনও ফোরাম, চ্যাট, ইমেল ইত্যাদিতে একই প্রদর্শিত হবে। এর অর্থ হ'ল আমরা অক্ষরগুলি ব্যবহার করতে পারি না, যা কোনও ফোরাম / চ্যাট / ইমেল ক্লায়েন্টরা সাধারণত ফর্ম্যাট করতে বা উপেক্ষা করার জন্য ব্যবহার করতে পারে। এটি হরফ, ভাষা এবং আঞ্চলিক সেটিংস নির্বিশেষে বর্ণগুলি একই হতে হবে।
এটাই কারন!
বেস 64 সাধারণ কারণ এটি বিভিন্ন ধরণের সমস্যা সমাধান করে (আপনি যে জায়গাতেই ভাবতে পারেন প্রায় কাজ করে)
পরিবহনটি 8-বিট পরিষ্কার কিনা আপনার উদ্বেগের দরকার নেই।
এনকোডিংয়ের সমস্ত অক্ষর মুদ্রণযোগ্য। আপনি তাদের দেখতে পারেন । আপনি এগুলি অনুলিপি এবং পেস্ট করতে পারেন । আপনি এগুলি ইউআরএলগুলিতে (নির্দিষ্ট রূপগুলি) ব্যবহার করতে পারেন। ইত্যাদি
স্থির এনকোডিং আকার। আপনি জানেন যে mবাইটস সর্বদা nবাইটগুলিতে এনকোড করতে পারে ।
সকলেই এটি শুনেছেন - এটি ব্যাপকভাবে সমর্থিত, প্রচুর লাইব্রেরি, এর মধ্যে আন্তঃক্রিয়াবদ্ধ করা সহজ easy
বেস 128 এর সমস্ত সুবিধা নেই।
দেখে মনে হচ্ছে এটি 8-বিট পরিষ্কার - তবে মনে রাখবেন যে বেস 64 65 টি চিহ্ন ব্যবহার করে। আউট-অফ-ব্যান্ড চরিত্র ছাড়া আপনার কোনও নির্দিষ্ট এনকোডিং আকারের সুবিধা থাকতে পারে না। আপনি যদি ব্যান্ড-অফ-ব্যান্ড চরিত্রটি ব্যবহার করেন তবে আপনি আর 8-বিট পরিষ্কার হতে পারবেন না।
যদিও এটি সব নেতিবাচক নয়।
বেস 128 বেস 64 এর চেয়ে এনকোড / ডিকোড করা সহজ - আপনি কেবল শিফট এবং মাস্ক ব্যবহার করেন। এম্বেড থাকা বাস্তবায়নের জন্য গুরুত্বপূর্ণ হতে পারে
বেস 128 উপলব্ধ বিটগুলির আরও বেশি ব্যবহার করে বেস 64 এর চেয়ে পরিবহণের সামান্য আরও দক্ষ ব্যবহার করে।
মানুষ কি ব্যবহার base128 - আমি এখন কিছু জন্য এটি ব্যবহার করছি। এটি ঠিক তেমন সাধারণ নয়।
নিশ্চিত নয়, তবে আমি মনে করি যে নীচের মানগুলি (নিয়ন্ত্রণ কোড বা কোনও কিছুর প্রতিনিধিত্ব করে) এইচটিটিপি-অনুরোধ / প্রতিক্রিয়াগুলির মধ্যে পাঠ্য / অক্ষর হিসাবে নির্ভরযোগ্যভাবে স্থানান্তরিত হয় না এবং 127 এর উপরে থাকা মানগুলি স্থানীয় / কোডপেজ / যা নির্দিষ্ট-নির্দিষ্ট হতে পারে তাই এখানে নেই 128 টি বিভিন্ন অক্ষর যা সমস্ত ব্রাউজার / প্ল্যাটফর্ম জুড়ে কাজ করার আশা করা যায়।
ইসাজি ঠিক বলেছেন। বেস 64 একটি প্রোটোকল যা কেবল পাঠ্য প্রত্যাশা করে ট্রান্সমিশনের জন্য বাইনারি ডেটা এনকোড করতে ব্যবহৃত হয়। উইকির প্রবেশে এটি ঠিক ।
বেস 128 পিএইচপি-ক্লাস চেকআউট করুন। আইএসও 8859-1 চরসেটের সাহায্যে এনকোডিং এবং ডিকোডিং।