এএনএসআই এনকোডিং ফর্ম্যাট কী? এটি কি সিস্টেমের ডিফল্ট ফর্ম্যাট? কীভাবে এটি ASCII থেকে আলাদা?
এএনএসআই এনকোডিং ফর্ম্যাট কী? এটি কি সিস্টেমের ডিফল্ট ফর্ম্যাট? কীভাবে এটি ASCII থেকে আলাদা?
উত্তর:
এএনএসআই এনকোডিং হল একটি সামান্য জেনেরিক শব্দ যা সাধারণত কোনও উইন্ডোজের সিস্টেমে স্ট্যান্ডার্ড কোড পৃষ্ঠাতে ব্যবহৃত হয়। এটিকে পশ্চিমা / মার্কিন সিস্টেমগুলিতে উইন্ডোজ -১২২২ হিসাবে আরও সঠিকভাবে উল্লেখ করা হয় । (এটি অন্যান্য সিস্টেমে কিছু অন্যান্য উইন্ডোজ কোড পৃষ্ঠাগুলির প্রতিনিধিত্ব করতে পারে )) এটি মূলত ASCII অক্ষর সেট করার একটি এক্সটেনশন যা এতে অতিরিক্ত 128 অক্ষর কোড সহ সমস্ত ASCII অক্ষর অন্তর্ভুক্ত করে। এই পার্থক্যটি এএসসিআইআই হওয়ায় "এএনএসআই" এনকোডিংটি--বিটের চেয়ে 8-বিট হওয়ার কারণে হয় (এএসসিআইআই আজকাল প্রায় সবসময় এমএসবি- তে 0-তে সেট 8-বিট বাইট হিসাবে এনকোড থাকে )। এই এনকোডিংটি সাধারণত এএনএসআই হিসাবে কেন উল্লেখ করা হয় তার ব্যাখ্যা করার জন্য নিবন্ধটি দেখুন।
"এএনএসআই" নামটি একটি মিসনোমার, যেহেতু এটি কোনও প্রকৃত এএনএসআই মানের সাথে মিলে না, তবে নামটি আটকে গেছে। এএনএসআই ইউটিএফ -8 এর মতো নয়।
windows-1254
।
প্রযুক্তিগতভাবে, এএনএসআই ইউএস-এএসসিআইআইয়ের মতো হওয়া উচিত। এটি এএনএসআই এক্স 3.4 মানকে বোঝায়, যা কেবল এএনএসআই প্রতিষ্ঠানের ASCII এর অনুমোদিত সংস্করণ। শীর্ষ-বিট-সেট অক্ষরগুলির ব্যবহার ASCII / ANSI এ সংজ্ঞায়িত করা হয়নি কারণ এটি একটি 7-বিট অক্ষর সেট।
যাইহোক, ডস এবং পরবর্তীকালে উইন্ডোজ সম্প্রদায়ের দ্বারা এই শব্দটির অপব্যবহারের ফলে তার ব্যবহারিক অর্থটি "যেকোনো মেশিন ব্যবহার করা হচ্ছে তার সিস্টেম কোড কোড" হিসাবে রেখে গেছে। পূর্ব এশিয়ার সিস্টেমগুলিতে যেগুলি একাধিক-বাইট-প্রতি-চরিত্রের এনকোডিং হতে পারে, সিস্টেম কোডকটি কখনও কখনও 'এমবিসিএস' নামেও পরিচিত। কিছু কোড পৃষ্ঠা এমনকি মাল্টিবাইট ক্রম অনুসারে টপ-বিট-ক্লিয়ার বাইটগুলি ব্যবহার করতে পারে, সুতরাং এটি সরল ASCII এর সাথে এমনকি কঠোরভাবে সামঞ্জস্যপূর্ণ নয় ... তবে তারপরেও এটিকে "এএনএসআই" বলা হয়।
মার্কিন যুক্তরাষ্ট্র এবং পশ্চিমা ইউরোপীয় ডিফল্ট সেটিংসে, "এএনএসআই" উইন্ডোজ কোড পৃষ্ঠাতে 1252 এ ম্যাপ করে This এটি আইএসও -8859-1 এর মতো নয় (যদিও এটি বেশ মিল)। অন্যান্য মেশিনে এটি অন্য কিছু হতে পারে। এটি "এএনএসআই" কে বাহ্যিক এনকোডিং শনাক্তকারী হিসাবে একেবারে অকেজো করে তোলে।
কড়া কথায় বলতে গেলে এএনএসআই এনকোডিংয়ের মতো জিনিস নেই। কথোপকথনে এএনএসআই শব্দটি বিভিন্ন বিভিন্ন এনকোডিংয়ের জন্য ব্যবহৃত হয়:
একসময় মাইক্রোসফ্ট অন্য সবার মতো like-বিট ক্যারেক্টার সেট ব্যবহার করত এবং এগুলি যথোপযুক্ত হওয়ার সাথে সাথে তারা নিজস্ব আবিষ্কার করেছিল, যদিও তারা ASCII কে মূল উপসেট হিসাবে রেখেছিল। তারপরে তারা বুঝতে পেরেছিল যে বিশ্ব 8-বিট এনকোডিংগুলিতে চলে গেছে এবং আইএসও -8859 পরিবারের মতো আন্তর্জাতিক মানের রয়েছে। সেই দিনগুলিতে, আপনি যদি কোনও আন্তর্জাতিক মানের ধরে রাখতে চান এবং আপনি মার্কিন যুক্তরাষ্ট্রে থাকেন, আপনি এটি আমেরিকান ন্যাশনাল স্ট্যান্ডার্ড ইনস্টিটিউট, এএনএসআই থেকে কিনেছিলেন, যিনি তাদের নিজস্ব ব্র্যান্ডিং এবং নম্বর দিয়ে আন্তর্জাতিক মানগুলি পুনরায় প্রকাশ করেছিলেন (কারণ এটি মার্কিন সরকার চায় আমেরিকান মান অনুসারে, আন্তর্জাতিক মান নয়)। সুতরাং মাইক্রোসফ্টের আইএসও -8859 এর অনুলিপিটি কভারটিতে "এএনএসআই" বলেছে। মাইক্রোসফ্ট সেই দিনগুলিতে মানের খুব একটা অভ্যস্ত ছিল না বলে তারা ' বুঝতে পারছেন না যে এএনএসআই অন্যান্য প্রচুর মানও প্রকাশ করেছে। সুতরাং তারা আইএসও -8859 পরিবারের মানদণ্ডগুলি উল্লেখ করেছে (এবং তারা যে রূপগুলি আবিষ্কার করেছিল, কারণ তারা সত্যই সেই দিনগুলিতে মান বুঝতে পারত না) কভারের নাম "এএনএসআই" দিয়ে এবং এটি মাইক্রোসফ্টে প্রবেশের পথ খুঁজে পেয়েছিল ব্যবহারকারীর ডকুমেন্টেশন এবং তাই ব্যবহারকারীর গোষ্ঠীতে। এটি প্রায় 30 বছর আগে ছিল, তবে আপনি এখনও মাঝে মধ্যে নামটি শুনতে পান।
এএসসিআইআই কেবল 128 চিহ্ন সহ একটি 7 বিট কোড পৃষ্ঠাটি সংজ্ঞায়িত করে। এএনএসআই এটি 8 বিট পর্যন্ত প্রসারিত করে এবং 128 থেকে 255 চিহ্নের জন্য বিভিন্ন কোড পৃষ্ঠা রয়েছে।
এএনএসআই নামকরণ সঠিক নয় কারণ এটি আসলে আইএসও / আইসিআই 8859 আদর্শ যা এই কোড পৃষ্ঠাগুলিকে সংজ্ঞায়িত করে। রেফারেন্সের জন্য আইএসও / আইইসি 8859 দেখুন । আইএসও / আইইসি 8859-1 থেকে আইএসও / আইইসি 8859-16 থেকে 16 কোড পৃষ্ঠা রয়েছে।
উইন্ডোজ -১২২২ আবার আইএসও / আইসিসি ৮৮৮৯-১ এর উপর ভিত্তি করে কিছু সংশোধন করে মূলত ১২৮ থেকে ১৫৯-এর সীমার মধ্যে থাকা সি 1 নিয়ন্ত্রণের সীমার মধ্যে রয়েছে। উইকিপিডিয়াতে বলা হয়েছে যে উইন্ডোজ -১২২২ এছাড়াও একটি সেকেন্ডের সাথে আইএসও -৮85৮৯-১ হিসাবে রেফার করা হয়েছে আইএসও এবং 8859 এর মধ্যে হাইফেন ((অবিশ্বাস্য! কে এরকম কিছু করে?!?!)
মূলত "এএনএসআই" উইন্ডোজে লিগ্যাসি কোডপেজকে বোঝায়। এই বিষয়টিতে রেমন্ড চেনের একটি নিবন্ধও দেখুন :
এর উত্সটি এসেছে যে উইন্ডোজ কোড পৃষ্ঠা 1252 মূলত একটি এএনএসআই খসড়ার উপর ভিত্তি করে তৈরি হয়েছিল, যা আইএসও স্ট্যান্ডার্ড 8859-1 এ পরিণত হয়েছিল।
প্রথম 127 টি অক্ষর বেশিরভাগ কোড পৃষ্ঠায় ASCII এর সাথে সমান, উপরের অক্ষরগুলি পরিবর্তিত হয়।
যাইহোক, ANSI নেই না স্বয়ংক্রিয়ভাবে CP1252 বা ল্যাটিন 1 মানে।
সমস্ত বিভ্রান্তি সত্ত্বেও আপনার আজকাল কেবল এ জাতীয় সমস্যা এড়ানো উচিত এবং ইউনিকোড ব্যবহার করা উচিত।
আপনার পিসি কোনও "পশ্চিমা" পিসি না হলে এবং কোন কোড পৃষ্ঠাটি ব্যবহৃত হয়েছে তা আপনি জানেন না, আপনি এই পৃষ্ঠাটি একবার দেখতে পারেন: জাতীয় ভাষা সমর্থন (এনএলএস) এপিআই রেফারেন্স
[মাইক্রোসফ্ট এই রেফারেন্সটি সরিয়ে নিয়েছে, এটি ওয়েব-সংরক্ষণাগার জাতীয় ভাষা সমর্থন (এনএলএস) এপিআই রেফারেন্স হিসাবে গ্রহণ করুন
অথবা আপনি আপনার রেজিস্ট্রিটি জিজ্ঞাসা করতে পারেন:
C:\>reg query HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Nls\CodePage /f ACP
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Nls\CodePage
ACP REG_SZ 1252
End of search: 1 match(es) found.
C:\>
একক বাইট অক্ষর ব্যবহার করার সময়, ASCII ফর্ম্যাটটি প্রথম 127 টি অক্ষর সংজ্ঞায়িত করে। 128-255 থেকে বর্ধিত অক্ষরগুলি অন্যান্য এএনএসআই কোড পৃষ্ঠা দ্বারা অন্য ভাষার জন্য সীমিত সমর্থনকে মঞ্জুরি দেওয়ার জন্য সংজ্ঞায়িত করা হয়েছে। কোনও এএনএসআই এনকোডেড স্ট্রিংটি অনুধাবন করার জন্য, আপনাকে কোন কোড পৃষ্ঠাটি ব্যবহার করে তা জানতে হবে।
আমার মনে আছে যখন "ANSI" পাঠ্য ছদ্ম, VT-100 পালাবার কোড ANSI.SYS চালক মাধ্যমে ডস উপভোগ্য টেক্সট স্ট্রিমিং প্রবাহ পরিবর্তন করতে বলা .... সম্ভবত না কি আপনি উল্লেখ করা হয় কিন্তু দেখতে যদি তা না হয় : http //en.wikipedia.org/wiki/ANSI_escape_code
এএনএসআই (ওরফে উইন্ডোজ -১২২২ / উইনল্যাটিন ১) লাতিন বর্ণমালার একটি অক্ষর এনকোডিং, আইএসও -8859-1 এর সাথে মোটামুটি অনুরূপ । আপনি উইকিপিডিয়ায় এটি একবার দেখে নিতে পারেন ।