অ্যাস্কি (ইংরেজি: ASCII; /ˈæskiː/(ⓘ)),[১]:৬ যার পূর্ণরূপ আমেরিকান স্ট্যান্ডার্ড কোড ফর ইনফরমেশন ইন্টারচেঞ্জ (ইংরেজি: American Standard Code for Information Interchange), ইলেকট্রনিক যোগাযোগের জন্য একটি প্রতীক সংকেতায়ন পদ্ধতি। অ্যাস্কির মাধ্যমে কম্পিউটার ও অন্যান্য যন্ত্রে কোনো অক্ষর বা টেক্সটকে উপস্থাপন করা হয়। অ্যাস্কি উদ্ভাবনের সময় কম্পিউটার ব্যবস্থার প্রযুক্তিগত সীমাবদ্ধতা ছিল, তাই অ্যাস্কিতে কেবল ১২৮টি কোড পয়েন্ট রয়েছে, যার মধ্যে ৯৫টি মুদ্রণযোগ্য অক্ষর অন্তর্গত। আধুনিক কম্পিউটার ব্যবস্থা ইউনিকোড ব্যবহার করে, যেখানে লাখ লাখ কোড পয়েন্ট রয়েছে, কিন্তু এর মধ্যে ১২৮টি কোড পয়েন্ট অ্যাস্কির অনুরূপ।
১৯৬১ সালের মে মাসে আমেরিকান স্ট্যান্ডার্ডস অ্যাসোসিয়েশনের (এএসএ) (বর্তমান আমেরিকান ন্যাশনাল স্ট্যান্ডার্ডস ইনস্টিটিউট বা আন্সি) এক্স৩.২ উপকমিটির প্রথম বৈঠকের মাধ্যমে অ্যাস্কি নিয়ে কার্য সম্পাদনা শুরু হয়েছিল। ১৯৬৩ সালে অ্যাস্কির প্রথম সংষ্করণ প্রকাশিত হয়েছিল।[৩][৪] ১৯৬৭ সালে এটি এক বড়সড় পরিমার্জনের মধ্যে দিয়ে গিয়েছিল।[৫][৬] ১৯৮৬ সালে এর সর্বশেষ সংস্করণ প্রকাশিত হয়েছিল।[৭]
১৯৬৯ সালে নেটওয়ার্ক ইন্টারচেঞ্জের জন্য অ্যাস্কি ফর্ম্যাটের ব্যবহার বর্ণনা করা হয়েছিল।[৮] ২০১৫ সালে সেই নথিকে দাপ্তরিকভাবে এক ইন্টারনেট স্ট্যান্ডার্ডের মর্যাদায় উন্নীত করা হয়েছিল।[৯]
আধুনিক ইংরেজি বর্ণমালার উপর ভিত্তি করে তৈরি করা অ্যাস্কিতে ১২৮টি নির্দিষ্ট অক্ষরকে ৭ বিট পূর্ণসংখ্যা দিয়ে চিহ্নিত করা হয়, যা এই নিবন্ধের অ্যাস্কি সারণিতে দেখানো হয়েছে।[১০] এই সংকেতায়িত অক্ষরের মধ্যে ৯৫টি অক্ষর মুদ্রণযোগ্য, যার মধ্যে 0 থেকে 9 পর্যন্ত আরবি অঙ্ক, a থেকে z পর্যন্ত ছোট হাতের অক্ষর, A থেকে Z পর্যন্ত বড় হাতের অক্ষর এবং যতিচিহ্ন রয়েছে। এছাড়া মূল অ্যাস্কি বর্ণনায় ৩৩টি অমুদ্রণযোগ্য কন্ট্রোল কোড অন্তর্গত ছিল, যা টেলিটাইপ মডেলের সাথে উদ্ভূত হয়েছিল। এর বেশিরভাগই বর্তমানে অপ্রচলিত,[১১] যদিও কিছু কন্ট্রোল কোড এখনও ব্যবহার করা হয়, যেমন ক্যারেজ রিটার্ন, লাইন ফিড ও ট্যাব কোড।
উদাহরণস্বরূপ, অ্যাস্কি সংকেতায়নে ছোট হাতের i অক্ষরকে দ্বিমিক ১১০১০০১ = ষোড়শিক = ৬৯ = দশমিক ১০৫ দিয়ে উপস্থাপন করা হয়।
মার্কিন যুক্তরাষ্ট্র থেকে উদ্ভূত হলেও অ্যাস্কিতে সেন্টের (¢) জন্য কোনো কোড পয়েন্ট নেই। এছাড়া এটি ডায়াক্রিটিক চিহ্নযুক্ত ইংরেজি শব্দের পক্ষে উপযুক্ত নয়, যেমন façade, résumé ইত্যাদি।
অন্যান্য সকল বর্ণ প্রকাশকারী কম্পিউটার কোডের মত অ্যাস্কি কোডেও নির্দিষ্ট কিছু বিট প্যাটার্নের মাধ্যমে একটি করে বর্ণ প্রকাশ করা হয়। অ্যাস্কি কোডে প্রতিটি বর্ণ ৭ বিট দীর্ঘ, কাজেই সর্বমোট ১২৮টি বর্ণ প্রকাশ করা সম্ভব। কম্পিউটারে (বা অন্যকোন যন্ত্রে) একএকটি বর্ণ সংরক্ষণ করা হয় ০ থেকে ১২৭(দশমিক) পর্যন্ত সংখ্যা হিসেবে । মানুষের লৈখিক ভাষার একটি বর্নকে প্রকাশ করার জন্য যেই অক্ষর গুলো ব্যবহৃত হয় তার একটি চিত্রও সংরক্ষণ করা হয়, একে বলে গ্লিফ (glyph)। কম্পিউটারের মনিটরে বা অন্যকোন যন্ত্রের পর্দায়দেখানর সময় ০ থেকে ১২৭ পর্যন্ত সংখ্যাগুলোর সাথে সম্পৃক্ত গ্লিফটিকে দেখান হয়। অ্যাস্কি কোডে ০ থেকে ৩১ পর্যন্ত এবং ১২৭- এই সংখ্যাগুলো ব্যবহৃত হয় নিয়ন্ত্রণ সংকেত হিসেবে। অবশিষ্ট ৩২ থেকে ১২৬ পর্যন্ত সংখ্যাগুলো ব্যবহৃত হয় ছাপারযোগ্য বর্ণ সমূহের জন্য।
ইতিহাস
অ্যাস্কির প্রচলন যখন শুরু হয়, তখন অধিকাংশ কম্পিউটারে অভ্যন্তরীণ ডাটা স্ট্রাকচার হিসাবে ৮ বিট দীর্ঘ বাইট বা অষ্টক ব্যবহৃত হত। একটি অ্যাস্কি অক্ষর সংরক্ষণের পরে অবশিষ্ট অষ্টম বিট তখন ব্যবহার করা হত প্যারিটি বিট হিসেবে। যেসব যন্ত্রে প্যারিটি পরীক্ষার ব্যবস্থা ছিলনা তারা অষ্টম বিটে ০ রেখে দিত।
অ্যাস্কি অক্ষরের শ্রেণীবিভাগ
কন্ট্রোল কোড
অ্যাস্কিতে ০ থেকে ৩১ সংখ্যাগুলো এবং ১২৭ কে ব্যবহার করা হয় নিয়ন্ত্রণ সংকেত হিসেবে। এদের জন্য কোন ছাপারযোগ্য বর্ণ নেই। ছাপার যোগ্য বর্ণগুলোকে ঠিকমত সাজিয়ে প্রকাশ করা ও অন্যান আনুষঙ্গিক কাজের জন্য যেমন, backspace ইত্যাদি প্রকাশ করতে এসব সংকেত ব্যবহৃত হয়।
0 থেকে 9 পর্যন্ত অঙ্কগুলোকে চার বিটের বাইনারিতে রূপান্তর করে তার সামনে ০০১১ জোড়া দিয়ে দিলে তাদের অ্যাস্কি প্রতীক পাওয়া যায়। এর ফলে বিসিডি থেকে অ্যাস্কিতে রূপান্তর করা সহজ।
ছোট ও বড় হাতের অক্ষরের মধ্যে পার্থক্য রাখা হয়েছে মাত্র একটি বিটের মাধ্যমে। বড় হাতের অক্ষরগুলোর ষষ্ঠ বিটে ০ এবং অক্ষরগুলোর ষষ্ঠ বিটে ১ রয়েছে। এর ফলে শুধুমাত্র একটি বিট পরিবর্তনের মাধ্যমেই বড় হাতের অক্ষরকে ছোট হাতের এবং ছোট হাতের অক্ষরকে বড় হাতের অক্ষরে রূপান্তর করা সম্ভব।