हम माइक्रोप्रोसेसर प्रोग्रामिंग में कोडांतरक से C में माइग्रेट कर चुके हैं। मुझे संदेह है कि यह एक अच्छा विचार है
डर नहीं, कोई भी अब 100% कोडांतरक में नए कार्यक्रम विकसित नहीं करता है। आजकल, C का उपयोग सबसे नन्हा, क्रैपीफेस्ट 8-बिट आर्किटेक्चर के लिए भी किया जा सकता है। हालांकि , कुछ असेंबलर को जानने से आप बेहतर सी प्रोग्रामर बन सकते हैं। इसके अलावा, प्रोग्राम में हमेशा कुछ छोटे विवरण या दो होते हैं जिन्हें कोडांतरक में लिखा जाना चाहिए।
मैं बता सकता हूँ कि सी सिंटैक्स असेंबलर सिंटैक्स की तुलना में सीखने में बहुत आसान है।
हाँ वाक्य रचना आसान है, निश्चित रूप से। हालांकि, सभी सी विवरणों के साथ पूरी सी भाषा सीखना किसी विशेष कोडांतरक के सभी विवरणों को सीखने की तुलना में कहीं अधिक जटिल है। सी एक बहुत बड़ी और व्यापक भाषा है। लेकिन फिर, आपको सभी विवरणों को सीखने की आवश्यकता नहीं होगी।
सी अधिक जटिल कार्यक्रम बनाने के लिए उपयोग करना आसान है।
दरअसल, सी मॉड्यूलर प्रोग्राम डिज़ाइन के लिए तंत्र प्रदान करता है, जैसे कि एनकैप्सुलेशन और स्थानीय स्कोप / स्थानीय चर। और सी में एक मानक पुस्तकालय है, साथ ही पिछले 30 वर्षों के दौरान संसाधनों की एक विशाल मात्रा भी लिखी गई है। और सबसे महत्वपूर्ण बात, सी पोर्टेबल है।
लर्निंग सी किसी भी तरह से अधिक उत्पादक है सीखने के कारण असेंबलर की तुलना में सी के आसपास अधिक विकासशील सामान है।
सी में पूर्व-निर्मित कार्यक्षमता, पुस्तकालय और संसाधन हैं, इसलिए पहिया का फिर से आविष्कार नहीं होगा। लेकिन इसके अलावा, आपका कथन व्यक्तिपरक है। मेरा मानना है कि यह व्यक्तिगत प्राथमिकता का मामला है।
उदाहरण के लिए, मैं एक अनुभवी सी प्रोग्रामर हूं, कभी-कभी प्रोग्रामिंग सी ++। मैं अपने आप को C ++ में बहुत कम उत्पादक पाता हूं, क्योंकि मैं उस भाषा को नहीं जानता और साथ ही मैं सी भी जानता हूं। लेकिन सिर्फ इसलिए कि मुझे ऐसा लगता है, इसका मतलब यह नहीं है कि C में प्रोग्रामिंग C ++ में प्रोग्रामिंग की तुलना में अधिक उत्पादक है। एक अनुभवी C ++ प्रोग्रामर की निश्चित रूप से विपरीत राय होगी।
और "उत्पादक" के कई पहलू हैं। एक बहुत महत्वपूर्ण पहलू रखरखाव का समय है, और विशेष रूप से रखरखाव द्वारा प्रेरित बग को ठीक करने में लगने वाला समय। सी असेंबलर की तुलना में बनाए रखना कहीं अधिक आसान है।
असेंबलर सी से कम स्तर की प्रोग्रामिंग भाषा है, इसलिए यह सीधे हार्डवेयर के लिए प्रोग्रामिंग के लिए अच्छा है।
हार्डवेयर प्रोग्रामिंग को सीधे भाषा में किया जा सकता है। केवल वही चीजें जो आप C में नहीं कर सकते हैं वे स्टैक पॉइंटर्स और कंडीशन रजिस्टरों आदि तक पहुंच रहे हैं, स्वयं सीपीयू कोर की। इसलिए यदि हार्डवेयर प्रोग्रामिंग का मतलब है कि आप अपने स्वयं के सीपीयू के साथ बात कर रहे हैं, तो हाँ, कोडांतरक सी की तुलना में थोड़ा अधिक अनुमति देता है। यदि आप बाहरी हार्डवेयर तक पहुँचने का मतलब है, तो कोडांतरक सी पर कोई लाभ नहीं रखता है। लेकिन शायद नुकसान, क्योंकि यह लिखना अक्सर कठिन होता है। जेनेरिक सी कोड की तुलना में एक विशेष बाहरी उपकरण के लिए सामान्य कोडांतरक कोड।
मेमोरी, इंटरप्ट, माइक्रो-रजिस्टरों आदि के साथ काम करने के लिए बहुत अधिक लचीला है।
यह सही नहीं है। सी आपको वह सब भी करने की अनुमति देता है, हालांकि आपको कंपाइलर-विशिष्ट सी कोड पर निर्भर करना पड़ सकता है जैसे कि इंटरप्ट कीवर्ड।
अंत में, आपको C पर जोर देने के साथ MCUs को प्रोग्राम करने के लिए दोनों भाषाओं को जानना होगा।