2024-07-12
한어Русский языкEnglishFrançaisIndonesianSanskrit日本語DeutschPortuguêsΕλληνικάespañolItalianoSuomalainenLatina
वयं पूर्वं सूचकाः, संरचना इत्यादीनां मूलभूतज्ञानस्य विषये चर्चां कृतवन्तः । अस्य लेखस्य आरम्भे वयं एतेषां मूलभूतज्ञानस्य केचन जटिलाः अनुप्रयोगाः करिष्यामः, यथा पङ्क्तिः ।
वस्तुतः २०१८ तमे वर्षे मया प्रोग्राम आर्किटेक्चरविषये विडियो-समूहः रिकार्ड् कृतः, यस्मिन् कतार-निर्माणस्य विषये पदे-चरण-पाठ्यक्रमाः अपि च व्यावहारिक-उच्चस्तरीय-प्रोग्रामिंग-चिन्तनस्य, तकनीकानां च श्रृङ्खला च आसीत् मित्राः। ।
परन्तु यतः पाठ्यक्रमः तुल्यकालिकरूपेण पूर्वमेव अभिलेखितः आसीत्, तस्मात् ध्वनिगुणवत्ता तुल्यकालिकरूपेण दुर्बलः अस्ति, केचन विवरणाः च सिद्धाः न सन्ति । अतः, एषः कण्टकः मम हृदये सर्वदा अटत् अस्ति यत् वुजी सूक्ष्मनियन्त्रकविशेषप्रशिक्षणशिबिरस्य डाइ-हार्ड्स् अस्माकं परियोजनानि अधिककुशलतया उत्तमतया च ज्ञातुं शक्नुवन्ति, अहं अद्यैव एतासां मूलभूतसामग्रीणां पुनर्गठनं कृत्वा Into a series of software architecture 2.0 ग्राफिक/वीडियो पाठ्यक्रमाः।
यदा अहं अनुसंधानविकास-इञ्जिनीयररूपेण कार्यं कुर्वन् आसीत् तदा प्रायः केचन संचार-उत्पादाः, यथा औद्योगिक-नियन्त्रण-फलकानि, पीडीयू-इत्येतत्, इन्टरनेट् आफ् थिङ्ग्स् च सम्मुखीभवन् ।
सामान्यतया एतादृशं उत्पादं निर्माय दत्तांशप्रवाहं लिखित्वा प्राप्तुं शिरोवेदना भविष्यति, भवेत् तत् क्रमिकसञ्चारः अथवा वायरलेस् संचारः
यथा, STM32 क्रमिक-पोर्ट्-दत्तांश-प्रवाहं प्राप्नोति ।
प्रारम्भिकेषु दिनेषु अहं प्राप्तं दत्तांशप्रवाहं संसाधितुं सरणीं सरणी उपस्क्रिप्ट् चरं च परिभाषितवान् कोडः निम्नलिखितरूपेण अस्ति ।
अस्मिन् पद्धत्या बहवः समस्याः सन्ति तथा च अभियंतानां कोडलेखनस्य जटिलता वर्धते ।
संहिता-रक्षणं बोझिलं भवति
यतः भवद्भिः सीमातः बहिः त्रुटिं परिहरितुं सरणीबफरसीमानां मैन्युअल् रूपेण जाँचः कर्तव्यः, अतः अधिकजटिलदत्तांशप्रवाहानाम् संसाधनं कर्तुं वा नूतनानि दत्तांशस्रोतानि योजयितुं वा आवश्यके सति सरणीनां विस्तारः, परिपालनं च पङ्क्तिवत् सुलभं नास्ति
दत्तांशः भ्रमस्य प्रवणः भवति
व्यत्ययसेवायां (ISR) प्रत्यक्षतया संचालिताः सरणीः मुख्यकार्यक्रमेण सह संसाधनप्रतिस्पर्धां जनयितुं शक्नुवन्ति यदि बहुविधकार्यं एकमेव सरणीं अभिगच्छति तर्हि आँकडादौडस्थितीनां विसंगतिनां च परिहाराय अतिरिक्तसमन्वयनतन्त्राणां (यथा म्यूटेक्सतालाः) आवश्यकाः भवन्ति
यदि दत्तांशग्रहणं संसाधनं च समन्वयितं न भवति तर्हि सरणीनां उपयोगेन दत्तांशक्रमस्य भ्रमः उत्पद्येत, यत् कार्यक्रमसमस्यायाः कारणेन दत्तांशपैकेटहानिः भवति । अहं पूर्वं एतस्याः समस्यायाः विषये गुञ्जितः आसम्, एतस्याः समस्यायाः समाधानार्थं मम अतिरिक्तसङ्केतस्य आवश्यकता वर्तते, अपि च, मम अनुभवः नास्ति तथा च सर्वेषां प्रयत्नानाम् अनन्तरं तत् कर्तुं स्थिरं नास्ति।
एतादृशी समस्या मां बहुकालं यावत् बाधते स्म, यावत् अहं पश्चात् कार्यं परिवर्त्य अन्यैः अभियंतैः लिखितं कोडं न पठितवान् तावत् एव अहं अवगच्छामि यत् पङ्क्तयः एतान् वेदनाबिन्दून् समाधानं कर्तुं शक्नुवन्ति। ततः परं अहं यथा दत्तांशप्रवाहं सम्पादयामि तत् निम्नलिखितम् अभवत् ।
किं बहु सरलतरं अनुभूयते ? वस्तुतः, कतारस्य आँकडासंसाधन एल्गोरिदम् सरलं नास्ति the code अधिकं पुनः उपयोक्तुं शक्यते।
इदं केवलं कतारस्य अनुप्रयोगेषु अन्यतमम् अस्ति ।
अर्थात् प्रथमं दत्तांशं संग्रहीतुं, ततः यदा CPU इत्यस्य मुक्तसमयः भवति अथवा यदा कार्यक्रमस्य कतिपयानि शर्ताः पूर्यन्ते तदा दत्तांशं प्रक्रियायै बहिः नेतुम् ।
अस्य विशेषतायाः आधारेण बहवः व्यावहारिकाः अनुप्रयोगाः व्युत्पन्नाः भवितुम् अर्हन्ति । विशेषतः यदा दत्तांशक्रमं सुनिश्चितं कर्तुं आवश्यकं भवति तेषां अनुप्रयोगानाम् व्यवहारे।
मया अधिकतया उपयुज्यमाणानां कतिपयानां स्थानानां सारांशः कृतः।
यदा सूक्ष्मनियन्त्रकः क्रमिकपोर्टद्वारा दत्तांशं प्राप्नोति तदा प्रायः प्राप्तबाइट्-बफरार्थं पङ्क्तिं प्रयुङ्क्ते, यत् मुख्यकार्यक्रमेण संसाधितस्य पूर्वं दत्तांशः नष्टः न भविष्यति इति सुनिश्चितं करोति
श्रव्यप्लेबैक् अथवा रिकार्डिङ्ग् उपकरणेषु, पङ्क्तिनां उपयोगः श्रव्यनमूनादत्तांशस्य बफरं कृत्वा क्रमेण प्लेबैक् अथवा रिकार्डिङ्ग् कार्यान्वितुं भवति । उदाहरणार्थं: अस्माकं Wuji Microcontroller Special Training Camp इत्यस्य Project 6 इत्यस्मिन् WiFi & 4G alarm host इत्यस्य voice prompt function अस्ति उदाहरणार्थं यदि भवान् गृहात् दूरं arming बटनं नुदति तर्हि "arming away from home" इति स्वरः भवति । वाद्यते, यदि च गृहे शस्त्रीकरणस्य बटनं नुद्यते तर्हि "गृहे आर्मिंग्" इति स्वरः वाद्यते ।
यदि अहम् एतौ बटनौ शीघ्रं नुदामि तर्हि स्वरः पूर्णतया वादयितुं शक्यते इति सुनिश्चित्य अहं प्रथमं कीलघटनां पङ्क्तिसञ्चये क्षिप्तुं शक्नोमि, येन स्वरः पूर्णतया क्रमेण वादयितुं शक्यते
RTOS इत्यस्य उपयोगेन प्रणालीषु कार्याणां मध्ये सन्देशवितरणस्य समन्वयस्य च कृते पङ्क्तयः उपयुज्यन्ते तथा च जटिलकार्यनिर्धारणस्य समर्थनं भवति ।
मुख्यघटनानां पत्ताङ्गीकरणानन्तरं प्रथमं तानि पङ्क्तौ स्थापयितुं शक्यन्ते, मुख्यकार्यक्रमः च एतान् घटनान् संसाधितुं शक्नोति यत् अत्यन्तं द्रुतगतिना कीलदबावानां कारणेन मुख्यघटनानां नष्टा न भवति
वयं यत् एडीसी-दत्तांशं संग्रहयामः तत् अपि कतिपय-प्रक्रियाकरणानन्तरं पङ्क्तौ क्षिप्तुं शक्यते येन समुचितसमये तस्य संसाधनं वा विश्लेषणं वा कर्तुं शक्यते ।
फर्मवेयर उन्नयनस्य आँकडा अन्तरक्रिया तुल्यकालिकरूपेण विशाला भवति, यत् आँकडा अखण्डतां सुनिश्चित्य कतारस्य उपयोगाय अतीव उपयुक्तं भवति अस्माकं परियोजना 6. फर्मवेयर उन्नयनप्रक्रियायाः समये डाउनलोड् कृतं फर्मवेयर आँकडा अवरोधं कतारं स्थापयितुं शक्यते ततः क्रमेण फ्लैशस्मृतौ लिखितम्। तत्रैव बहवः अनुप्रयोगाः सन्ति सर्वेषु सर्वेषु पङ्क्तयः मम कृते बहवः कठिनाः समस्याः समाधानं कृतवन्तः।
पङ्क्तिः रेखीयदत्तांशसंरचना अस्ति या प्रथम-प्रथम-निर्गम (FIFO) सिद्धान्तस्य अनुसरणं करोति, अर्थात् पङ्क्तौ प्रवेशं कर्तुं प्रथमः दत्तांशः प्रथमं निष्कासितः भविष्यति पङ्क्तौ प्रायः एकस्मिन् अन्ते पङ्क्तौ दत्तांशः स्थापितः भवति, यः पङ्क्तिपुच्छः इति कथ्यते, अपरस्मिन् अन्ते दत्तांशः पङ्क्तिविच्छेदः भवति, यः पङ्क्तिशिरः इति कथ्यते एषा संरचना पङ्क्तिः तादृशानां परिस्थितीनां कृते अतीव उपयुक्ता करोति यत्र दत्तांशस्य क्रमेण संसाधनस्य आवश्यकता भवति ।
वयं पङ्क्तिं द्विपक्षीयपाइप् मध्ये पिंग पोङ्ग् कन्दुकं पूरयितुं शक्नुमः इति चिन्तयितुं शक्नुमः । वयं पाइपस्य दक्षिणतः पिंग पोङ्ग् कन्दुकं बहिः निष्कासयामः एषा क्रिया dequeuing इति उच्यते ।
नलिके स्थिताः पिङ्ग पोङ्ग-कन्दुकाः एकस्मिन् गठने पङ्क्तिबद्धाः भविष्यन्ति । प्रथमं यः टेबलटेनिस्-कन्दुकः प्रविशति सः प्रथमं बहिः आगमिष्यति एषः पङ्क्तौ प्रथम-प्रथम-निर्गमन-नियमः ।
पिंग-पोङ्ग-गोलानां तुलना दत्तांशैः सह भवति । उपरि चित्रे कतारं ४ दत्तांशखण्डान् संग्रहीतुं शक्नोति इदं Buff[4] इत्यस्य समकक्षम् अस्ति ।
कतारस्य कार्यक्रमस्य कार्यान्वयनम् एकस्य नियत-आकारस्य सरणी, शिरः सूचकस्य, पुच्छसूचकस्य च माध्यमेन भवति । सरणीः दत्तांशसञ्चयस्य उत्तरदायी भवन्ति । शिरः सूचकः तस्य पतेः उत्तरदायी भवति यस्मात् पङ्क्तिविच्छेदनकाले दत्तांशं बहिः निष्कासितव्यम् । पुच्छसूचकः उत्तरदायी भवति यत् यदा दत्तांशः पङ्क्तिबद्धः भवति तदा कस्मिन् पतने संग्रहीतव्यः इति । अतः, enqueuing तथा dequeuing इत्येतयोः क्रियाः द्वौ सूचकौ स्तः, सरणीयां data first-in-first-out एल्गोरिदम् क्रीडन्ति ।
विभिन्नाः अभियंताः कतारसङ्केतान् भिन्नरूपेण कार्यान्वयन्ति । यदि भवतां समृद्धः परियोजनानुभवः नास्ति, अथवा यदि भवता पूर्वं पङ्क्तिनां उपयोगः न कृतः, तर्हि भवता कतारस्य एल्गोरिदम् लिखितुं शक्यते इति लज्जितं मा कुरुत ।
यदा प्रथमवारं आरब्धवान् तदा अहं अन्येषां पङ्क्तिकार्यक्रमानाम् अपि प्रत्यक्षतया प्रत्यारोपणं कृत्वा स्वस्य परियोजनासु तान् प्रवीणतया उपयोगं कृत्वा ततः कतार-एल्गोरिदम्-कार्यन्वयनस्य विस्तृत-सङ्केतस्य अध्ययनं कृत्वा स्वयमेव कतिपयानि वाराः लिखितवान्
अतः अस्माकं विशेषप्रशिक्षणशिबिरस्य दिग्गजाः, आरम्भे स्वयमेव तस्य उपयोगं न कुर्वन्तु, एकस्मात् उदाहरणात् अनुमानं कृत्वा, भिन्न-भिन्न-परिदृश्येषु परियोजनासु च प्रयोजयन्तु, ततः परिचिताः भूत्वा स्वयमेव लिखितुं प्रयतन्ते | तया सह एषः अतीव महत्त्वपूर्णः शिक्षणक्रमः अस्ति।
अस्माकं Infinite Microcontroller Project Special Training Camp इत्यस्य कतारकार्यक्रमं उदाहरणरूपेण गृह्यताम् कुलम् 4 कार्याणि सन्ति।
कताररिक्त(x) ९.
कतारकार्यं स्वच्छं कुर्वन्तु, कतारस्य प्रत्येकस्य उपयोगात् पूर्वं, स्पष्टं कार्यं शिरः सूचकं, पुच्छं च पूर्वनिर्धारितरूपेण वैधपतेः सूचयिष्यति, यत् सरणीयाः प्रथमः तत्त्वः भवति पता अपवादः भविष्यति।
औपचारिकं पैरामीटर् वर्णनम् : x - एकः कतारसंरचना चरः अस्ति
QueueDataIn (x, y, z) 1.1.
दत्तांशसङ्केतीकरणकार्यं निर्दिष्टपङ्क्तौ एकं वा अधिकं वा दत्तांशं क्षिप्तुं भवति ।
औपचारिकं पैरामीटर् वर्णनम् : १.
x - कतार संरचना चर
य - दत्तांशसङ्केतः
z - पङ्क्तिं कर्तुं दत्तांशस्य परिमाणं, बाइट्-मात्रायां ।
सूचना:
1.प्रविष्टः दत्तांशः केवलं अहस्ताक्षरितचर् प्रकारस्य एव भवितुम् अर्हति ।
2. यदि पङ्क्तिः पूर्णा अस्ति तथा च दत्तांशः पङ्क्तिबद्धः भवति तर्हि प्रथमदत्तांशस्थानात् दत्तांशः अधिलिखितः भविष्यति ।
कतारदत्तांशनिर्गम (x,y) 1.1.
data dequeue फंक्शन् निर्दिष्टपङ्क्तौ एकं बाइट् दत्तांशं ग्रहीतुं भवति ।
औपचारिकं पैरामीटर् विवरणम् : x - कतारसंरचनाचरः y - बहिः गृहीतः आँकडा, संग्रहणीयः पता
नोट्: अस्माकं dequeue फंक्शन् एकस्मिन् समये केवलं एकं बाइट् दत्तांशं ग्रहीतुं शक्नोति ।
कतारदत्तांशलेन (x) .
निर्दिष्टपङ्क्तौ सर्वाणि दत्तांशं स्वच्छं कुर्वन्तु । औपचारिक पैरामीटर वर्णन: x - कतार संरचना चर
निम्नलिखितसामग्रीषु केचन कोडाः, विडियोव्याख्याः च सन्ति, येषां सम्पादनं असुविधाजनकं भवति, भवान् मया सह सम्पर्कं कृत्वा Feishu इत्यस्य व्यवस्थां कर्तुं शक्नोति।
अधुना एव बहवः प्रशंसकाः मां पृष्टवन्तः यत् मम दशवर्षीयं उद्योगे अनुभवस्य आधारेण अहं एकमासं यावत् "एकचिप् सूक्ष्मसङ्गणकं" सावधानीपूर्वकं संकलितवान्।
सूक्ष्मनियन्त्रकाणां कृते सर्वोत्तमः शिक्षणमार्गः + सूक्ष्मनियन्त्रकाणां कृते प्रवेशस्तरीयः उन्नतपाठ्यक्रमाः + साधनपुस्तिका", सर्वं मृतकठिनप्रशंसकैः सह निःशुल्कं साझां कृतम्! ! !
तदतिरिक्तं मम पेटीयाम् अधः यत् अस्ति तत् अश्रुपूर्वकं साझां करोमि२२ लोकप्रियाः मुक्तस्रोतप्रकल्पाः,निहितःस्रोत कोड + योजनाबद्ध + PCB + दस्तावेजीकरण, अस्तुशीघ्रं स्वामी भवतु!
पाठ्यक्रमसङ्कुलानाम् विस्तृतशिक्षणमार्गाणां च कृते कृपया मां पश्यन्तुअस्य लेखस्य आरम्भः अधः。
《प्रवेशस्तरीयतः सूक्ष्मनियन्त्रकाणां उन्नतहैकिंग्पर्यन्तं शिक्षणमार्गः (पाठ्यक्रमैः + उपकरणैः सह)》
《प्रवेशस्तरीयतः सूक्ष्मनियन्त्रकाणां उन्नतहैकिंग्पर्यन्तं शिक्षणमार्गः (पाठ्यक्रमैः + उपकरणैः सह)》
《प्रवेशस्तरीयतः सूक्ष्मनियन्त्रकाणां उन्नतहैकिंग्पर्यन्तं शिक्षणमार्गः (पाठ्यक्रमैः + उपकरणैः सह)》