यदि आपको कभी भी ASCII मानों के साथ कार्य करने की आवश्यकता पड़ती है, तो एक लुकअप तालिका आवश्यक है।
ASCII तालिका अंग्रेजी वर्णमाला के अंकों, अक्षरों और सामान्य प्रतीकों का प्रतिनिधित्व करने के लिए संख्याओं का उपयोग करती है। ASCII का मतलब अमेरिकन स्टैंडर्ड कोड फॉर इंफॉर्मेशन इंटरचेंज है।
इस क्षेत्र में आवश्यकता को पूरा करने के लिए 1973 में ANSI (अमेरिकी राष्ट्रीय मानक संस्थान) द्वारा पहली बार इस शब्द का उपयोग किया गया था। तो ASCII तालिका कैसी दिखती है और आप इसका उपयोग कैसे कर सकते हैं?
ASCII तालिका क्या है और इसमें क्या शामिल है?
ASCII एक कैरेक्टर एनकोडिंग सिस्टम है जो बुनियादी कंप्यूटर संचार की सुविधा प्रदान करता है। यह टेक्स्ट प्रतिनिधित्व के लिए एक मानक प्रदान करता है, जिससे कंप्यूटर सार्वभौमिक रूप से ASCII मानों को पहचानने और व्याख्या करने की अनुमति देता है।
ASCII द्वारा दर्शाए जा सकने वाले प्रत्येक अक्षर, संख्या और प्रतीक का एक अद्वितीय मान होता है। उदाहरण के लिए, यदि आप नीचे दी गई ASCII तालिका की जांच करते हैं, तो आप देखेंगे कि अपरकेस ASCII मान 65, कैपिटल लेटर A से शुरू होते हैं। इसी तरह, लोअरकेस एएससीआईआई मान 97 से शुरू होता है, लोअरकेस अक्षर ए।
ये मान वर्णों के संख्यात्मक निरूपण के रूप में कार्य करते हैं, संख्याओं और पाठ के बीच आसान रूपांतरण को सक्षम करते हैं।
चरित्र |
एएससीआईआई |
चरित्र |
एएससीआईआई |
चरित्र |
एएससीआईआई |
चरित्र |
एएससीआईआई |
चरित्र |
एएससीआईआई |
चरित्र |
एएससीआईआई |
चरित्र |
एएससीआईआई |
चरित्र |
एएससीआईआई |
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
0 |
नुल |
16 |
डेल |
32 |
सपा |
48 |
0 |
64 |
@ |
80 |
पी |
96 |
` |
112 |
पी |
1 |
तो ज |
17 |
DC1 |
33 |
! |
49 |
1 |
65 |
ए |
81 |
क्यू |
97 |
ए |
113 |
क्यू |
2 |
एसटीएक्स |
18 |
DC2 |
34 |
" |
50 |
2 |
66 |
बी |
82 |
आर |
98 |
बी |
114 |
आर |
3 |
ईटीएक्स |
19 |
DC3 |
35 |
# |
51 |
3 |
67 |
सी |
83 |
एस |
99 |
सी |
115 |
एस |
4 |
ईओटी |
20 |
DC4 |
36 |
$ |
52 |
4 |
68 |
डी |
84 |
टी |
100 |
डी |
116 |
टी |
5 |
ईएनक्यू |
21 |
एन ए |
37 |
% |
53 |
5 |
69 |
इ |
85 |
यू |
101 |
इ |
117 |
यू |
6 |
एसीके |
22 |
SYN |
38 |
& |
54 |
6 |
70 |
एफ |
86 |
वी |
102 |
एफ |
118 |
वि |
7 |
बेल |
23 |
ईटीबी |
39 |
' |
55 |
7 |
71 |
जी |
87 |
डब्ल्यू |
103 |
जी |
119 |
डब्ल्यू |
8 |
बी एस |
24 |
कर सकना |
40 |
( |
56 |
8 |
72 |
एच |
88 |
एक्स |
104 |
एच |
120 |
एक्स |
9 |
हिंदुस्तान टाइम्स |
25 |
ईएम |
41 |
) |
57 |
9 |
73 |
मैं |
89 |
वाई |
105 |
मैं |
121 |
वाई |
10 |
वामो |
26 |
विषय |
42 |
* |
58 |
: |
74 |
जे |
90 |
जेड |
106 |
जे |
122 |
जेड |
11 |
वीटी |
27 |
ESC |
43 |
+ |
59 |
; |
75 |
क |
91 |
[ |
107 |
क |
123 |
{ |
12 |
सीमांत बल |
28 |
एफएस |
44 |
, |
60 |
< |
76 |
एल |
92 |
\ |
108 |
एल |
124 |
| |
13 |
करोड़ |
29 |
जी एस |
45 |
- |
61 |
= |
77 |
एम |
93 |
] |
109 |
एम |
125 |
} |
14 |
इसलिए |
30 |
रुपये |
46 |
. |
62 |
> |
78 |
एन |
94 |
^ |
110 |
एन |
126 |
~ |
15 |
एसआई |
31 |
हम |
47 |
/ |
63 |
? |
79 |
हे |
95 |
_ |
111 |
हे |
127 |
डेल |
कैसे बैश के साथ अपनी खुद की ASCII टेबल बनाएं
ASCII टेबल में इतने सारे मान हैं कि याद रखना या नोट्स लेना मुश्किल हो सकता है। संदर्भ के लिए, आप शेल स्क्रिप्ट सहित अपनी पसंद की प्रोग्रामिंग भाषा में थोड़ी सी कोडिंग के साथ सभी ASCII मान देख सकते हैं।
उपरोक्त ASCII तालिका में, मान 65 अक्षर A से मेल खाता है और मान 90 अक्षर Z से मेल खाता है। मैन्युअल रूप से सभी मानों को मैन्युअल रूप से काम करने के बजाय, आप उन मानों पर पुनरावृति कर सकते हैं और उनके संबंधित वर्णों को प्रिंट कर सकते हैं। अधिकांश अन्य भाषाओं की तरह, बैश शेल स्क्रिप्ट आपको इसका उपयोग करने देती हैं के लिए लूप एक या अधिक निर्देशों को एक निश्चित संख्या में दोहराने के लिए।
इस जानकारी का उपयोग करने का प्रयास करें एक बैश प्रोग्राम लिखें जो 33 से 126 तक के सभी मानों को प्रिंट करता है:
#!/बिन/बैश
गूंज"एएससीआईआई टेबल"
गूंज""के लिए ((मैं = 33; मैं<=126; मैं++))
करना
चार = $ (printf"\\एक्स$(प्रिंटफ '%02x' $i)")
printf"%-10d%-10s"$मैं"$चार"
अगर (((मैं+1)% 4 == 0))
तब
printf"\एन"
फाई
पूर्ण
यह बैश स्क्रिप्ट 33 और 126 के बीच के सभी मान a को प्रदान करती है चार चर और इसे स्क्रीन पर प्रिंट करता है। इस बैश स्क्रिप्ट को नाम की फाइल में सेव करें myASCII.sh और इसे निम्न आदेश से चलाएं और परिणाम की जांच करें।
बैश myASCII.sh
आपको दशमलव मानों के साथ ASCII वर्ण दिखाते हुए एक उपयोगी तालिका देखनी चाहिए:
ASCII टेबल को कैसे फ़िल्टर करें
आप ASCII मानों को देखने के बजाय बैश स्क्रिप्ट के साथ और भी बहुत कुछ कर सकते हैं। आप अलग-अलग वर्णों के ASCII मान का निरीक्षण कर सकते हैं और निम्न उदाहरण में, टेक्स्ट को फ़िल्टर करने के लिए इनका उपयोग कर सकते हैं।
उदाहरण के लिए, आइए ASCII फ़िल्टरिंग के साथ बैश का उपयोग करके MAKEUSEOF कीवर्ड में अक्षर E को हटाने का प्रयास करें। आप "E": 69 के ASCII मान की पुष्टि करने के लिए लुकअप तालिका का उपयोग कर सकते हैं।
#!/बिन/बैश
मूल_पाठ ="उपयोग करना"
फ़िल्टर्ड_टेक्स्ट =""
ओरिजिनल_टेक्स्ट_एससीआईआई =""
फ़िल्टर्ड_टेक्स्ट_एससीआईआई =""के लिए ((मैं = 0; मैं<${#मूल_पाठ}; मैं++))
करना
चार ="${मूल_पाठ: i: 1}"
char_ascii=$(printf"%डी""'$चार'")अगर [[ "$(printf "%d" "'$char")" != "69" ]]
तब
फ़िल्टर्ड_टेक्स्ट + ="$चार"
फ़िल्टर किया_text_ascii+=" $char_ascii"
फाईओरिजिनल_टेक्स्ट_एससीआईआई+=" $char_ascii"
पूर्ण
गूंज"मूललेख: $मूल_पाठ (एएससीआईआई: $ओरिजिनल_टेक्स्ट_एससीआईआई)"
गूंज"एएससीआईआई पत्र ई के समकक्ष: $(printf "%d" "'ई'")"
गूंज"फ़िल्टर्ड पाठ: $filtered_text (एएससीआईआई: $filtered_text_ascii)"
इस स्क्रिप्ट में, इनपुट वेरिएबल MAKEUSEOF शब्द है। स्क्रिप्ट एक चर का उपयोग करती है, filtered_text, वांछित आउटपुट बनाने के लिए जिसमें "ई" अक्षर को छोड़कर सब कुछ शामिल है। के लिए कुंडली इनपुट पाठ में प्रत्येक वर्ण के माध्यम से पुनरावृति करता है।
परिणाम देखने के लिए, इस कोड को नाम की फ़ाइल में कॉपी करें myFilter.sh और भाग खड़ा हुआ बैश myFilter.sh.
ASCII टेबल का उपयोग करके बैश में अपरकेस को लोअरकेस में बदलना
आप ASCII टेबल का उपयोग करके बैश के साथ अपरकेस अक्षरों को लोअरकेस अक्षरों में भी बदल सकते हैं। जब आप 7-बिट ASCII तालिका की जांच करते हैं, तो आप देखेंगे कि समान अक्षरों के अपरकेस और लोअरकेस मानों के बीच का अंतर हमेशा 32 होता है। इसका उपयोग करते हुए, एक प्रोग्राम का तर्क जो अपरकेस शब्द को लोअरकेस में परिवर्तित कर सकता है, सीधा है।
उदाहरण के लिए, कैपिटल A का मान 65 है, जबकि छोटे a का मान 97 है। इसका लाभ उठाते हुए, आप इस तरह एक कोड स्निपेट लिख सकते हैं:
#!/बिन/बैश
पढ़ना -पी "पाठ दर्ज करें:" इनपुट
कनवर्ट_टेक्स्ट =""
के लिए ((मैं = 0; मैं<${#इनपुट}; मैं++))
करना
चार ="${इनपुट: i: 1}"
char_ascii=$(printf"%डी""'$चार'")अगर [[ $char_ascii -eq 32]]
तब
गूंज"अमान्य वर्ण: स्थान"
elif [[ $char_ascii -जीई 65 && $char_ascii -ले 90]]
तब
char_ascii=$((char_ascii + 32))
परिवर्तित_पाठ+=$(printf"\\$(प्रिंटफ '%03o' "$char_ascii")")
elif [[ $char_ascii -जीई 97 && $char_ascii -ले 127]]
तब
कनवर्ट_टेक्स्ट + ="$चार"
अन्य
गूंज"अमान्य वर्ण: $चार"
फाई
पूर्ण
गूंज"रूपांतरित पाठ: $रूपांतरित_पाठ"
यह प्रोग्राम प्रत्येक कैपिटल लेटर के ASCII मान में 32 जोड़ता है जिसे वह संबंधित लोअरकेस लेटर पर पहुंचने के लिए पढ़ता है। इसे अपने लिए आज़माने के लिए, इस कोड को एक फ़ाइल में कॉपी करें, जिसे कहा जाता है toलोअरकेस.श और इसके साथ चलाएँ बैश toLowercase.sh आज्ञा।
क्या ASCII टेबल मेरे लिए काम करेगी?
टेक्स्ट डेटा या प्रोग्रामिंग भाषाओं के साथ काम करने वाले किसी भी व्यक्ति के लिए ASCII तालिका एक मूल्यवान टूल है। यह वर्णों, संख्याओं और प्रतीकों का एक मानक प्रतिनिधित्व प्रदान करता है जिसे कंप्यूटर सार्वभौमिक रूप से समझते हैं। चाहे आप एक प्रोग्रामर हों, एक डेटा विश्लेषक हों, या केवल पाठ्य सूचना से निपटने वाले हों, ASCII तालिका के कई उपयोग हैं।
यह डेटा सत्यापन, टेक्स्ट मैनिपुलेशन, और एन्कोडिंग/डिकोडिंग ऑपरेशंस जैसे कार्यों के लिए संभावनाएं खोलता है। ASCII तालिका का हवाला देकर, आप किसी वर्ण के ASCII मान को शीघ्रता से निर्धारित कर सकते हैं या संख्यात्मक मानों को वापस उनके शाब्दिक प्रतिनिधित्व में परिवर्तित कर सकते हैं। यह विभिन्न डोमेन में संचार और इंटरऑपरेबिलिटी की नींव के रूप में कार्य करता है, जिससे यह टेक्स्ट से संबंधित प्रोग्रामिंग के लिए एक आवश्यक संदर्भ बन जाता है।