অ্যাস্কি (ইংরেজি: ASCII; /ˈæsk/ (শুনুন)),[১]: যার পূর্ণরূপ আমেরিকান স্ট্যান্ডার্ড কোড ফর ইনফরমেশন ইন্টারচেঞ্জ (ইংরেজি: American Standard Code for Information Interchange), ইলেকট্রনিক যোগাযোগের জন্য একটি প্রতীক সংকেতায়ন পদ্ধতি। অ্যাস্কির মাধ্যমে কম্পিউটার ও অন্যান্য যন্ত্রে কোনো অক্ষর বা টেক্সটকে উপস্থাপন করা হয়। অ্যাস্কি উদ্ভাবনের সময় কম্পিউটার ব্যবস্থার প্রযুক্তিগত সীমাবদ্ধতা ছিল, তাই অ্যাস্কিতে কেবল ১২৮টি কোড পয়েন্ট রয়েছে, যার মধ্যে ৯৫টি মুদ্রণযোগ্য অক্ষর অন্তর্গত। আধুনিক কম্পিউটার ব্যবস্থা ইউনিকোড ব্যবহার করে, যেখানে লাখ লাখ কোড পয়েন্ট রয়েছে, কিন্তু এর মধ্যে ১২৮টি কোড পয়েন্ট অ্যাস্কির অনুরূপ।

মূল অ্যাস্কিতে ৩২১০ থেকে ১২৬১০ কোড পয়েন্টের মধ্যে ৯৫টি মুদ্রণযোগ্য অক্ষর রয়েছে।

ইন্টারনেট অ্যাসাইন্ড নাম্বারস অথোরিটি (আইএএনএ) প্রতীক সংকেতায়নের জন্য US-ASCII নামটি ব্যবহার করে।[২]

সংক্ষিপ্ত বর্ণনা

সম্পাদনা

১৯৬১ সালের মে মাসে আমেরিকান স্ট্যান্ডার্ডস অ্যাসোসিয়েশনের (এএসএ) (বর্তমান আমেরিকান ন্যাশনাল স্ট্যান্ডার্ডস ইনস্টিটিউট বা আন্সি) এক্স৩.২ উপকমিটির প্রথম বৈঠকের মাধ্যমে অ্যাস্কি নিয়ে কার্য সম্পাদনা শুরু হয়েছিল। ১৯৬৩ সালে অ্যাস্কির প্রথম সংষ্করণ প্রকাশিত হয়েছিল।[৩][৪] ১৯৬৭ সালে এটি এক বড়সড় পরিমার্জনের মধ্যে দিয়ে গিয়েছিল।[৫][৬] ১৯৮৬ সালে এর সর্বশেষ সংস্করণ প্রকাশিত হয়েছিল।[৭]

১৯৬৯ সালে নেটওয়ার্ক ইন্টারচেঞ্জের জন্য অ্যাস্কি ফর্ম্যাটের ব্যবহার বর্ণনা করা হয়েছিল।[৮] ২০১৫ সালে সেই নথিকে দাপ্তরিকভাবে এক ইন্টারনেট স্ট্যান্ডার্ডের মর্যাদায় উন্নীত করা হয়েছিল।[৯]

আধুনিক ইংরেজি বর্ণমালার উপর ভিত্তি করে তৈরি করা অ্যাস্কিতে ১২৮টি নির্দিষ্ট অক্ষরকে ৭ বিট পূর্ণসংখ্যা দিয়ে চিহ্নিত করা হয়, যা এই নিবন্ধের অ্যাস্কি সারণিতে দেখানো হয়েছে।[১০] এই সংকেতায়িত অক্ষরের মধ্যে ৯৫টি অক্ষর মুদ্রণযোগ্য, যার মধ্যে 0 থেকে 9 পর্যন্ত আরবি অঙ্ক, a থেকে z পর্যন্ত ছোট হাতের অক্ষর, A থেকে Z পর্যন্ত বড় হাতের অক্ষর এবং যতিচিহ্ন রয়েছে। এছাড়া মূল অ্যাস্কি বর্ণনায় ৩৩টি অমুদ্রণযোগ্য কন্ট্রোল কোড অন্তর্গত ছিল, যা টেলিটাইপ মডেলের সাথে উদ্ভূত হয়েছিল। এর বেশিরভাগই বর্তমানে অপ্রচলিত,[১১] যদিও কিছু কন্ট্রোল কোড এখনও ব্যবহার করা হয়, যেমন ক্যারেজ রিটার্ন, লাইন ফিডট্যাব কোড।

উদাহরণস্বরূপ, অ্যাস্কি সংকেতায়নে ছোট হাতের i অক্ষরকে দ্বিমিক ১১০১০০১ = ষোড়শিক = ৬৯ = দশমিক ১০৫ দিয়ে উপস্থাপন করা হয়।

মার্কিন যুক্তরাষ্ট্র থেকে উদ্ভূত হলেও অ্যাস্কিতে সেন্টের (¢) জন্য কোনো কোড পয়েন্ট নেই। এছাড়া এটি ডায়াক্রিটিক চিহ্নযুক্ত ইংরেজি শব্দের পক্ষে উপযুক্ত নয়, যেমন façade, résumé ইত্যাদি।

অন্যান্য সকল বর্ণ প্রকাশকারী কম্পিউটার কোডের মত অ্যাস্কি কোডেও নির্দিষ্ট কিছু বিট প্যাটার্নের মাধ্যমে একটি করে বর্ণ প্রকাশ করা হয়। অ্যাস্কি কোডে প্রতিটি বর্ণ ৭ বিট দীর্ঘ, কাজেই সর্বমোট ১২৮টি বর্ণ প্রকাশ করা সম্ভব। কম্পিউটারে (বা অন্যকোন যন্ত্রে) একএকটি বর্ণ সংরক্ষণ করা হয় ০ থেকে ১২৭(দশমিক) পর্যন্ত সংখ্যা হিসেবে । মানুষের লৈখিক ভাষার একটি বর্নকে প্রকাশ করার জন্য যেই অক্ষর গুলো ব্যবহৃত হয় তার একটি চিত্রও সংরক্ষণ করা হয়, একে বলে গ্লিফ (glyph)। কম্পিউটারের মনিটরে বা অন্যকোন যন্ত্রের পর্দায় দেখানর সময় ০ থেকে ১২৭ পর্যন্ত সংখ্যাগুলোর সাথে সম্পৃক্ত গ্লিফটিকে দেখান হয়। অ্যাস্কি কোডে ০ থেকে ৩১ পর্যন্ত এবং ১২৭- এই সংখ্যাগুলো ব্যবহৃত হয় নিয়ন্ত্রণ সংকেত হিসেবে। অবশিষ্ট ৩২ থেকে ১২৬ পর্যন্ত সংখ্যাগুলো ব্যবহৃত হয় ছাপারযোগ্য বর্ণ সমূহের জন্য।

ইতিহাস

সম্পাদনা

অ্যাস্কির প্রচলন যখন শুরু হয়, তখন অধিকাংশ কম্পিউটারে অভ্যন্তরীণ ডাটা স্ট্রাকচার হিসাবে ৮ বিট দীর্ঘ বাইট বা অষ্টক ব্যবহৃত হত। একটি অ্যাস্কি অক্ষর সংরক্ষণের পরে অবশিষ্ট অষ্টম বিট তখন ব্যবহার করা হত প্যারিটি বিট হিসেবে। যেসব যন্ত্রে প্যারিটি পরীক্ষার ব্যবস্থা ছিলনা তারা অষ্টম বিটে ০ রেখে দিত।

অ্যাস্কি অক্ষরের শ্রেণীবিভাগ

সম্পাদনা

কন্ট্রোল কোড

সম্পাদনা

অ্যাস্কিতে ০ থেকে ৩১ সংখ্যাগুলো এবং ১২৭ কে ব্যবহার করা হয় নিয়ন্ত্রণ সংকেত হিসেবে। এদের জন্য কোন ছাপারযোগ্য বর্ণ নেই। ছাপার যোগ্য বর্ণগুলোকে ঠিকমত সাজিয়ে প্রকাশ করা ও অন্যান আনুষঙ্গিক কাজের জন্য যেমন, backspace ইত্যাদি প্রকাশ করতে এসব সংকেত ব্যবহৃত হয়।

Binary Oct Dec Hex Abbr PR[a] CS[b] CEC[c] Description
000 0000 000 0 00 NUL ^@ \0 Null character
000 0001 001 1 01 SOH ^A Start of Header
000 0010 002 2 02 STX ^B Start of Text
000 0011 003 3 03 ETX ^C End of Text
000 0100 004 4 04 EOT ^D End of Transmission
000 0101 005 5 05 ENQ ^E Enquiry
000 0110 006 6 06 ACK ^F Acknowledgment
000 0111 007 7 07 BEL ^G \a Bell
000 1000 010 8 08 BS ^H \b Backspace[d][i]
000 1001 011 9 09 HT ^I \t Horizontal Tab
000 1010 012 10 0A LF ^J \n Line feed
000 1011 013 11 0B VT ^K \v Vertical Tab
000 1100 014 12 0C FF ^L \f Form feed
000 1101 015 13 0D CR ^M \r Carriage return[h]
000 1110 016 14 0E SO ^N Shift Out
000 1111 017 15 0F SI ^O Shift In
001 0000 020 16 10 DLE ^P Data Link Escape
001 0001 021 17 11 DC1 ^Q Device Control 1 (oft. XON)
001 0010 022 18 12 DC2 ^R Device Control 2
001 0011 023 19 13 DC3 ^S Device Control 3 (oft. XOFF)
001 0100 024 20 14 DC4 ^T Device Control 4
001 0101 025 21 15 NAK ^U Negative Acknowledgement
001 0110 026 22 16 SYN ^V Synchronous Idle
001 0111 027 23 17 ETB ^W End of Trans. Block
001 1000 030 24 18 CAN ^X Cancel
001 1001 031 25 19 EM ^Y End of Medium
001 1010 032 26 1A SUB ^Z Substitute
001 1011 033 27 1B ESC ^[ \e[f] Escape[g]
001 1100 034 28 1C FS ^\ File Separator
001 1101 035 29 1D GS ^] Group Separator
001 1110 036 30 1E RS ^^ Record Separator
001 1111 037 31 1F US ^_ Unit Separator
111 1111 177 127 7F DEL ^? Delete[e][i]

মুদ্রণযোগ্য অক্ষর

সম্পাদনা

মুদ্রণযোগ্য অ্যাস্কি অক্ষরের মধ্যে রয়েছে ইংরেজি বর্ণমালার ছোট ও বড় হাতের অক্ষরসমূহ, 0 থেকে 9 পর্যন্ত অঙ্ক, বিরাম চিহ্ন, ফাঁকা স্থান (স্পেস) ইত্যাদি।

দ্বিমিক অষ্টক দশমিক ষোড়শিক গ্লিফ
১৯৬৩ ১৯৬৫ ১৯৬৭
০১০ ০০০০ ০৪০ ৩২ ২০  স্পেস
০১০ ০০০১ ০৪১ ৩৩ ২১ !
০১০ ০০১০ ০৪২ ৩৪ ২২ "
০১০ ০০১১ ০৪৩ ৩৫ ২৩ #
০১০ ০১০০ ০৪৪ ৩৬ ২৪ $
০১০ ০১০১ ০৪৫ ৩৭ ২৫ %
০১০ ০১১০ ০৪৬ ৩৮ ২৬ &
০১০ ০১১১ ০৪৭ ৩৯ ২৭ '
০১০ ১০০০ ০৫০ ৪০ ২৮ (
০১০ ১০০১ ০৫১ ৪১ ২৯ )
০১০ ১০১০ ০৫২ ৪২ ২A *
০১০ ১০১১ ০৫৩ ৪৩ ২B +
০১০ ১১০০ ০৫৪ ৪৪ ২C ,
০১০ ১১০১ ০৫৫ ৪৫ ২D -
০১০ ১১১০ ০৫৬ ৪৬ ২E .
০১০ ১১১১ ০৫৭ ৪৭ ২F /
০১১ ০০০০ ০৬০ ৪৮ ৩০ 0
০১১ ০০০১ ০৬১ ৪৯ ৩১ 1
০১১ ০০১০ ০৬২ ৫০ ৩২ 2
০১১ ০০১১ ০৬৩ ৫১ ৩৩ 3
০১১ ০১০০ ০৬৪ ৫২ ৩৪ 4
০১১ ০১০১ ০৬৫ ৫৩ ৩৫ 5
০১১ ০১১০ ০৬৬ ৫৪ ৩৬ 6
০১১ ০১১১ ০৬৭ ৫৫ ৩৭ 7
০১১ ১০০০ ০৭০ ৫৬ ৩৮ 8
০১১ ১০০১ ০৭১ ৫৭ ৩৯ 9
০১১ ১০১০ ০৭২ ৫৮ ৩A :
০১১ ১০১১ ০৭৩ ৫৯ ৩B ;
০১১ ১১০০ ০৭৪ ৬০ ৩C <
০১১ ১১০১ ০৭৫ ৬১ ৩D =
০১১ ১১১০ ০৭৬ ৬২ ৩E >
০১১ ১১১১ ০৭৭ ৬৩ ৩F ?
১০০ ০০০০ ১০০ ৬৪ ৪০ @ ` @
১০০ ০০০১ ১০১ ৬৫ ৪১ A
১০০ ০০১০ ১০২ ৬৬ ৪২ B
১০০ ০০১১ ১০৩ ৬৭ ৪৩ C
১০০ ০১০০ ১০৪ ৬৮ ৪৪ D
১০০ ০১০১ ১০৫ ৬৯ ৪৫ E
১০০ ০১১০ ১০৬ ৭০ ৪৬ F
100 0111 ১০৭ ৭১ ৪৭ G
১০০ ১০০০ ১১০ ৭২ ৪৮ H
১০০ ১০০১ ১১১ ৭৩ ৪৯ I
১০০ ১০১০ ১১২ ৭৪ ৪A J
১০০ ১০১১ ১১৩ ৭৫ ৪B K
১০০ ১১০০ ১১৪ ৭৬ ৪C L
১০০ ১১০১ ১১৫ ৭৭ ৪D M
১০০ ১১১০ ১১৬ ৭৮ ৪E N
১০০ ১১১১ ১১৭ ৭৯ ৪F O
১০১ ০০০০ ১২০ ৮০ ৫০ P
১০১ ০০০১ ১২১ ৮১ ৫১ Q
১০১ ০০১০ ১২২ ৮২ ৫২ R
১০১ ০০১১ ১২৩ ৮৩ ৫৩ S
১০১ ০১০০ ১২৪ ৮৪ ৫৪ T
১০১ ০১০১ ১২৫ ৮৫ ৫৫ U
১০১ ০১১০ ১২৬ ৮৬ ৫৬ V
১০১ ০১১১ ১২৭ ৮৭ ৫৭ W
১০১ ১০০০ ১৩০ ৮৮ ৫৮ X
১০১ ১০০১ ১৩১ ৮৯ ৫৯ Y
১০১ ১০১০ ১৩২ ৯০ ৫A Z
১০১ ১০১১ ১৩৩ ৯১ ৫B [
১০১ ১১০০ ১৩৪ ৯২ ৫C \ ~ \
১০১ ১১০১ ১৩৫ ৯৩ ৫D ]
১০১ ১১১০ ১৩৬ ৯৪ ৫E ^
১০১ ১১১১ ১৩৭ ৯৫ ৫F _
১১০ ০০০০ ১৪০ ৯৬ ৬০ @ `
১১০ ০০০১ ১৪১ ৯৭ ৬১ a
১১০ ০০১০ ১৪২ ৯৮ ৬২ b
১১০ ০০১১ ১৪৩ ৯৯ ৬৩ c
১১০ ০১০০ ১৪৪ ১০০ ৬৪ d
১১০ ০১০১ ১৪৫ ১০১ ৬৫ e
১১০ ০১১০ ১৪৬ ১০২ ৬৬ f
১১০ ০১১১ ১৪৭ ১০৩ ৬৭ g
১১০ ১০০০ ১৫০ ১০৪ ৬৮ h
১১০ ১০০১ ১৫১ ১০৫ ৬৯ i
১১০ ১০১০ ১৫২ ১০৬ ৬A j
১১০ ১০১১ ১৫৩ ১০৭ ৬B k
১১০ ১১০০ ১৫৪ ১০৮ ৬C l
১১০ ১১০১ ১৫৫ ১০৯ ৬D m
১১০ ১১১০ ১৫৬ ১১০ ৬E n
১১০ ১১১১ ১৫৭ ১১১ ৬F o
১১১ ০০০০ ১৬০ ১১২ ৭০ p
১১১ ০০০১ ১৬১ ১১৩ ৭১ q
১১১ ০০১০ ১৬২ ১১৪ ৭২ r
১১১ ০০১১ ১৬৩ ১১৫ ৭৩ s
১১১ ০১০০ ১৬৪ ১১৬ ৭৪ t
১১১ ০১০১ ১৬৫ ১১৭ ৭৫ u
১১১ ০১১০ ১৬৬ ১১৮ ৭৬ v
১১১ ০১১১ ১৬৭ ১১৯ ৭৭ w
১১১ ১০০০ ১৭০ ১২০ ৭৮ x
১১১ ১০০১ ১৭১ ১২১ ৭৯ y
১১১ ১০১০ ১৭২ ১২২ ৭A z
111 1011 173 123 7B {
111 1100 174 124 7C |
111 1101 175 125 7D }
111 1110 176 126 7E ~

গঠনগত বৈশিষ্ট্য

সম্পাদনা
  • 0 থেকে 9 পর্যন্ত অঙ্কগুলোকে চার বিটের বাইনারিতে রূপান্তর করে তার সামনে ০০১১ জোড়া দিয়ে দিলে তাদের অ্যাস্কি প্রতীক পাওয়া যায়। এর ফলে বিসিডি থেকে অ্যাস্কিতে রূপান্তর করা সহজ।
  • ছোট ও বড় হাতের অক্ষরের মধ্যে পার্থক্য রাখা হয়েছে মাত্র একটি বিটের মাধ্যমে। বড় হাতের অক্ষরগুলোর ষষ্ঠ বিটে ০ এবং অক্ষরগুলোর ষষ্ঠ বিটে ১ রয়েছে। এর ফলে শুধুমাত্র একটি বিট পরিবর্তনের মাধ্যমেই বড় হাতের অক্ষরকে ছোট হাতের এবং ছোট হাতের অক্ষরকে বড় হাতের অক্ষরে রূপান্তর করা সম্ভব।

আরও দেখুন

সম্পাদনা

তথ্যসূত্র

সম্পাদনা
  1. Mackenzie, Charles E. (১৯৮০)। Coded Character Sets, History and Development (পিডিএফ)The Systems Programming Series (1 সংস্করণ)। Addison-Wesley Publishing Company, Inc.। পৃষ্ঠা 6, 66, 211, 215, 217, 220, 223, 228, 236–238, 243–245, 247–253, 423, 425–428, 435–439। আইএসবিএন 978-0-201-14460-4এলসিসিএন 77-90165। ২৬ মে ২০১৬ তারিখে মূল (পিডিএফ) থেকে আর্কাইভ করা। সংগ্রহের তারিখ ২০১৯-০৮-২৫ 
  2. "Character Sets"Internet Assigned Numbers Authority (IANA)। ১৪ মে ২০০৭। সংগ্রহের তারিখ ২০১৯-০৮-২৫ 
  3. Brandel, Mary (জুলাই ৬, ১৯৯৯)। "1963: The Debut of ASCII"সিএনএন। জুন ১৭, ২০১৩ তারিখে মূল থেকে আর্কাইভ করা। সংগ্রহের তারিখ ২০০৮-০৪-১৪ 
  4. "American Standard Code for Information Interchange, ASA X3.4-1963"Sensitive Researchআমেরিকান স্ট্যান্ডার্ডস অ্যাসোসিয়েশন। ১৯৬৩-০৬-১৭। সংগ্রহের তারিখ ২০২০-০৬-০৬ 
  5. টেমপ্লেট:Cite tech report
  6. Jennings, Thomas Daniel (২০১৬-০৪-২০) [1999]। "An annotated history of some character codes or ASCII: American Standard Code for Information Infiltration"Sensitive Research (SR-IX)। সংগ্রহের তারিখ ২০২০-০৩-০৮ 
  7. টেমপ্লেট:Cite tech report
  8. ASCII format for Network Interchange. Network Working Group. October 16, 1969. RFC 20. http://tools.ietf.org/html/rfc20। সংগৃহীত হয়েছে 2016-06-13.
  9. Barry Leiba (জানুয়ারি ১২, ২০১৫)। "Correct classification of RFC 20 (ASCII format) to Internet Standard"IETF 
  10. Internet Security Glossary, Version 2. August 2007. RFC 4949. http://tools.ietf.org/html/rfc4949। সংগৃহীত হয়েছে 2016-06-13.
  11. Maini, Anil Kumar (২০০৭)। Digital Electronics: Principles, Devices and ApplicationsJohn Wiley and Sons। পৃষ্ঠা 28। আইএসবিএন 978-0-470-03214-5In addition, it defines codes for 33 nonprinting, mostly obsolete control characters that affect how the text is processed.