Pages

Thursday, 7 July 2016

Character Set in C



सी भाषा के कैरेक्टर सेट

कैरेक्टर यानि अक्षर जो किसी भी भाषा मे शब्दो का बनाने के लिए उपयोग होते हैं। शब्दो से वाक्य बनते हैं जिनसे अर्थपूर्ण मतलब पता चलता हैं। अब आप सोच रहे होंगे की कम्प्युटर प्रोग्रामिंग अचानक से साहित्य कैसे समझा रहा हूँ। दोस्तो मत भूलिए सी एक कम्प्युटर भाषा हैं जिसका प्रयोग कर हम कम्प्युटर को अपने जरूरत के बारे मे बता सकते हैं। इसलिए इस भाषा मे भी अन्य भाषों की तरह ग्रामर (व्याकरण) होता हैं। जिसमे इस भाषा को सीखने का सबसे पहला पड़ाव इसके अक्षर समूह को जानना हैं जिसे अँग्रेजी मे कैरेक्टर सेट कहा जाता हैं। जैसे जब हम हिन्दी सीखते हैं तो हमे सबसे पहले क,,, घ आदि पढ़ाया जाता हैं या अँग्रेजी सीखते समय a, b, c ठीक इसी प्रकार सी भाषा को सीखने से पहले आप को इसके अक्षरो को जानना जरूरी हैं। सी भाषा मे कैरेक्टर सेट को चार भागो मे बाटा गया हैं, जो निम्न दिये गए हैं।
      1 – लेटर्स
      2 – डिजिट
      3 – स्पेसल कैरेक्टर
      4 – व्हाइट स्पेस

व्हाइट स्पेस को सी कंपाइलर इग्नोर करता हैं, किन्तु यह स्ट्रिंग कोंस्टंट का भाग हैं जिसका प्रयोग दो शब्दो को अलग करने के लिए किया जाता हैं। परंतु याद रखे व्हाइट स्पेस का प्रयोग इडेंटिफ़ायर और कीवर्ड के बीच मे नहीं किया जाता हैं।
1 – लेटेर्स :
     
      अँग्रेजी भाषा के अल्फाबेट A से Z और a से z इसके लेटेर्स हैं जिनका प्रयोग प्रोग्राम लिखने के लिए करते हैं। सी केस सेंसेटिव भाषा हैं। इसलिए यह याद रखे की a और A दोनों अलग अलग लेटेर्स हैं। इन लेटेर्स के जोड़ने से इडेंटिफ़ाइयर, कीवर्ड, स्ट्रिंग आदि का निर्माण होता हैं।

2 – डिजिट :

      सी मे डिजिट का भी प्रयोग होता हैं जो इडेंटिफ़ायर, न्यूमेरिक वैल्यू के लिय उपयोग किए जाते हैं यह संख्या मे केवल दस (0,1,2,3,4,5,6,7,8,9) ही होते हैं पर इनकी समूह से नए नए वाङको का निर्माण किया जा सकता हैं जैसे : 123, 345,764 आदि।

3 – स्पेशल कैरेक्टर :

      स्पेशल कैरेक्टर सी भाषा मे विशेष प्रकार के कैरेक्टर होते हैं, जिनका उपयोग प्रोग्रामिंग मे विशेष स्थानो मे ही किया जाता हैं, जिनहे आप सी के प्रोग्रामिंग के दौरान देखेंगे। फिलहाल सबसे पहले यह जानते हैं की कौन से स्पेशल कैरेक्टर सी भाषा मे उपयोग होते हैं जो निम्न प्रकार हैं।


Symbol

Meaning
 ~ 
 Tilde
 ! 
Exclamation mark 
 # 
Number sign 
 $ 
Dollar sign 
Percent sign  
 ^ 
Caret
 & 
Ampersand 
  * 
Asterisk 
(  
Lest parenthesis 
 ) 
Right parenthesis 
Underscore  
 + 
Plus sign 
 | 
 Vertical bar
  \ 
 Backslash
 `
 Apostrophe
 - 
 Minus sign
 = 
 Equal to sign
  { 
 Left brace
  } 
 Right brace
 [ 
 Left bracket
 Right bracket
 :
  Colon
 " 
 Quotation mark
 ; 
 Semicolon
 < 
 Opening angle bracket
 > 
 Closing angle bracket
  ? 
 Question mark
 , 
 Comma
 . 
Period
  / 
 Slash


Tuesday, 5 July 2016

Programing Levels and C Programming



प्रोग्रामिंग लेवेल्स
वर्तमान मे कई कम्प्युटर लैंगवेज़ मौजूद हैं, हर एक की अपनी खासियत एवं आवश्यकता हैं। इनमे से कुछ ऐसे भाषा हैं जो मशीन को सीधे- सीधे समझ मे आती हैं तो कुछ ऐसी भाषा भी हैं जिन्हे कंपाइलर के उपयोग से कम्प्युटर मशीन के समझने योग्य बनाया जाता हैं।
 
ऊपर दिये चित मे आप एक पिरामिड देख सकते हैं जिसमे कई कम्प्युटर भाषयों के बारे मे दिखया जा रहा हैं। इस प्रकार की कम्प्युटर भाषाओ को लेवेल्स के रूप वर्गीकृत किया गया हैं। कम्प्युटर प्रोग्राममिंग को मुख्य रूप से तीन लेवेल्स मे बांटा गया हैं।
      1 – हाइ लेवेल प्रोग्रामिंग
      2 – लो लेवेल प्रोग्रामिंग
      3 – मिडिल लेवेल प्रोग्रामिंग

1 – हाई लेवेल प्रोग्रामिंग
           
                  सी, सी++, जावा, विजुअल बेसिक ये सभी हाई लेवेल भाषा हैं। यह प्रोग्रामिंग भाषा प्रोग्रामर के लिए लिखने और सीखने के लिए सरल होती हैं। क्योंकि यह भाषा मानवीय भाषा पर आधारित होते हैं। हाई लेवेल मे उपयोग हो रहे इन्सट्रक्शन, हमारे भाषा के वो आम शब्द ही होते हैं जिनहे हम बोलचाल की भाषा मे रोज उपयोग करते हैं। पर हाई लेवेल को कम्प्युटर नहीं समझ सकता इसलिए हाई लेवेल प्रोग्राम को कंपाइलर के माध्यम से बादल कर कम्प्युटर मशीन के समझने योग्य बनाया जाता हैं।

हाई लेवेल मे मौजूद इन्सट्रक्शन printf, print, add, +, delay, msgbox आदि पढ़ कर हमे समझ आ सकता हैं की इन कमांड का क्या फंक्शन या कार्य हैं। अब बताइये 0100 या 1000 ये क्या हैं। शायद आप ऊपर दिये 0100 और 1000 को 4 और 8 समझ रहे होंगे, तो आप बिलकुल गलत हैं। वास्तव मे 0100 और 1000 यह मशीन लैंगवेज के कमांड हैं, दोनों कमांड addition के हैं, जिसमे 0100 संख्याओ को जड़ने का कमांड देता हैं जबकि 1000 एड्रैस मे स्टोर संख्याओ को जोड़ने का कमांड देता हैं। और इसी प्रकार मशीन भाषा मे कई कमांड होते हैं जिनहे देख कर आप नहीं समझ पाएंगे की उक्त कमांड का क्या करी हो सकता हैं, तथा इसे याद रखना भी एक जटिल कार्य हैं।

2 – लो लेवेल प्रोग्रामिंग
                  लो लेवेल प्रोग्रामिंग मे लो का मतलब होता हैं, अपने जो प्रोग्राम लिखा हैं वह बिना किसी बदलाव के कम्प्युटर समझ सकता है या उसमे बहुत ही कम बदलाव करने होंगे जिससे कम्प्युटर उस प्रोग्राम को समझ सके। वास्तव मे लो या हाइ computing abstraction के लिए किया जाता हैं। abstraction का साधारण मतलब हैं कम्प्युटर की जतिलताए जिन्हे प्रोग्रामर या उपयोगकर्ता से छिपाया गया हैं। हाइ लेवेल प्रोग्रामिंग मे जतिलताए ज्यादा होती हैं, इसलिए उसमे हाई abstraction होता हैं। जबकि लो लेवेल प्रोग्रामिंग मे जतिलताए का होती हैं इस लिए उसमे लो abstraction होता हैं। लो लेवेल प्रोग्रामिंग कम्प्युटर मशीन के ज्यादा नजदीक होती हैं। जतिलताए कम होने की वजह से इनका कार्यक्षमता भी अधिक होता हैं।

लो लेवेल प्रोग्राममिंग के प्रमुख्य उदाहरण मशीन लैंगवेज और असेंबली लैंगवेज हैं।

3 – मिडिल लेवेल प्रोग्रामिंग
                        मिडिल लेवेल प्रोग्रामिंग लैंगवेज मशीन भाषा और हाई लेवेल भाषा के बीच पुल की तरह कार्य करते हैं। मिडिल लेवेल प्रोग्रामिंग जितना मशीन के निकट होती हैं उतना ही प्रोग्रामर के निकट होती हैं। हाई लेवेल प्रोग्रामिंग आम तौर मे एप्लिकेशन प्रोग्राम के निर्माण के लिए उपयोग मे लाई जाती हैं, जबकि लो लेवेल लैंगवेज सिस्टम प्रोग्रामिंग के लिए उपयोग होता हैं। मिडिल लेवेल प्रोग्रामिंग से आप सिस्टम प्रोग्रामिंग तथा एप्लिकेशन प्रोग्रामिंग कर सकते हैं।

मिडिल लेवेल प्रोग्रामिंग का उदाहरण सी भाषा हैं। इसमे आप सी के इन्सट्रक्शन के अलावा असेंबली प्रोग्राम भी लिख कर क्रियान्वित कर सकते हैं।

Popular Posts