1 Бағдарламалау парадигмалары және бағдарламалардың жалпы қасиеттері



бет10/12
Дата31.08.2023
өлшемі186 Kb.
#180035
1   ...   4   5   6   7   8   9   10   11   12
Байланысты:
2023-МУК-4. Бағдарламалардағы абстракциялар
isahanov elektr исаханов лекция Элек машины, аға куратор есебінің құрылымы, Мазм ны. Кіріспе. I. Tapay. А ылшын сленгтеріні ерекшеліктері, English Grammar in Use, 1лаб ДМ, GPS приемник - современное спутниковое оборудование - системы GPS и Глонасс Технокауф в Москве, 5 урок Осеева, Философияның Адам рөліндегі орны, презентация, Готовность ДП 28..04 спец Приборостроение, Негізгі комбинаториканың объектілері, Ықтималдықтар теориясы және математикалық статистика. ІІ оқулық (Аканбай Н.) (z-lib.org) (1), Айнымалы ток тізбегі активтік, индуктивтік ж не сыйымдылы ты ке, Жылу берілу түрлері, В ней сопротивления R1 и R2 заменены сопротивлением R
Нәтиже бойынша шақыру. Нәтиже бойынша шақыру, сонымен қатар көшіру режимі бойынша өту параметрі деп аталады, мән бойынша шақыруға қарама-қарсы. Нәтиже бойынша шақыруда нақты параметр формальды параметрдің жады орнына көшірілмейді. Оның орнына, ресми параметр нысан түріне сәйкес әдепкі мәнге инициализацияланады. Шақырылған процедураның соңында формальды параметрдің мәні нақты параметрге қайта көшіріледі. Мән бойынша шақыру сияқты нәтиже бойынша шақыру ресми параметрлерді жергілікті айнымалылар ретінде қарастырады. Шақырылған программаның орындалу барысында формальды параметр мен нақты параметр арасында өзара әрекеттесу болмайды.
Нәтиже мәні бойынша шақыру. Нәтиже мәні бойынша шақыру, оны жіберу параметрлері деп те атайды, r мәнін екі жолмен береді: нақты параметрдегі өрнекті формальды параметрге анықтағаннан кейін, шақырылатын ішкі бағдарлама аяқталғаннан кейін нәтижені кері жібереді. Нәтижені қайтару беру белгіленген тәртіппен бірдей жад ұяшықтарында жүзеге асырылады. Шақырылған қосалқы программаның орындалу барысында шақырушы және шақырылатын қосалқы бағдарламалар арасында өзара әрекеттесу болмайды.
Мән бойынша шақыру сияқты, нәтиже мәні бойынша шақыру ресми параметрлерді жергілікті айнымалылар ретінде қарастырады және шақырылатын ішкі бағдарламаның жергілікті ортасында жад орындарын жасайды. Нәтиже мәні бойынша қоңырау үшін бөлу үстеме шығысы мән бойынша қоңырау үшін бірдей. Дегенмен, нәтиже мәні бойынша шақырудағы көшірме шығыны мән бойынша шақырудан екі есе көп, өйткені нәтиже мәні бойынша шақыру нақты параметрлердің нәтижесін де қайтарады.
Нәтиже мәні бойынша қоңырау шалушыға есептеуді орындау нәтижесін қайтарғанымен, сілтеме бойынша шақыру мен нәтиже мәні бойынша шақыру арасында айтарлықтай айырмашылық бар:
1. Анықтама бойынша шақыру нақты параметрлерге енгізілген өзгерістерді сақтайды, себебі есептеу шақырылатын ішкі бағдарламада орын алады және ұзақ деструктивті жаңартуға байланысты соңғы мәнді сақтайды. Нәтиже мәні бойынша шақырудағы соңғы мән процедура шақыруындағы аргументтердің ретіне байланысты болса да, нақты параметрлер шақырылған ішкі бағдарлама сәтті аяқталғаннан кейін ғана жаңартылады. Нәтиже мәні бойынша шақырудағы нақты параметрдің соңғы мәні сілтеме арқылы шақырудағымен бірдей болмауы керек.
2. Анықтама бойынша шақыру үлкен деректер құрылымына қатынасу сілтемесін сақтау үшін тек бір жад орнын талап етеді және нәтиже мәні бойынша шақыру нақты параметрдің көшірмесін жасайды. Осылайша, үлкен деректер құрылымдары үшін бөлу үстеме шығысы мәннің нәтижесі бойынша шақырумен салыстырғанда сілтеме бойынша шақыруда шамалы.
3. Анықтама бойынша шақыруда нақты мәндерге қол жеткізу үшін қосымша үстеме шығындар бар, ол қосымша жадқа қол жеткізуге байланысты. Егер шақырушы бағдарлама үлкен массивтерде, векторларда немесе деректер элементтерінің үлкен жиынтығында есептеу қарқынды операцияларды орындаса, онда жадқа қол жеткізу құны нәтиже мәні бойынша шақыруда көшіру құнынан әлдеқайда көп болуы мүмкін.
4. Шақырылатын және шақырылатын бағдарламалар екі түрлі процессорға немесе компьютерге жататын таратылған есептеулерде сілтеме бойынша шақыруда жадқа қол жеткізу құны айтарлықтай болады және нақты параметрдің жергілікті көшірмесімен жұмыс істеген дұрысырақ.
Аты бойынша шақыру – параметрді берудің үшінші негізгі категориясы, онда формальды параметр ауыстыруға дейін ешқандай бағалаусыз нақты параметрдің бүтін өрнекімен сөзбе-сөз ауыстырылады және шақырылатын ішкі бағдарламаның бұл ауыстырылған денесі орындалады. коммутация деп аталатын әдістемені пайдаланып сұраныс бойынша шақыру процедурасының ортасы. Коммутатор - шақырылатын процедураның ортасы нақты параметрге қатынасу болған сайын бағаланатын, бағаланбаған өрнегі бар параметрсіз процедура.
Коммутатор шақырушы процедураның ортасында өрнек бағаланған сайын нақты параметрдің мекенжайын қайтарады. Ауыстырудан кейін шақырылатын ішкі бағдарламаның денесінде шақырушы бағдарламада жарияланған айнымалының атау қақтығысы бар жергілікті айнымалы болса, онда шақырылатын ішкі бағдарламаның мәтініндегі жергілікті айнымалының аты атау қайшылығын болдырмау үшін өзгертіледі. Аты бойынша шақыру мен мән бойынша шақырудың айырмашылығы мынада: аты бойынша шақырудың нақты параметріндегі өрнек ауыстыру алдында бірден бағаланбайды. Оның орнына, ол ауыстыру орындалғанға дейін кейінге қалдырылады және нақты параметр қолжетімді болған сайын қайта есептеледі.
Аты бойынша қоңырау шалу - күшті механизм. Дегенмен, оның екі кемшілігі бар:
1. Коммутацияны қолдану салдарынан есептеуді кешіктіру бағдарламаны орындау және есептеу үшін қосымша шығындарға әкеледі.
2. Атау қайшылықтарын шешу қосымша шығындарды да тудырады.
Коммутатордағы өрнекті бағалауды кейінге қалдыру идентификаторды жад орнымен салыстыру орындалу уақытында өзгеруі мүмкін дегенді білдіреді және бұл бағдарламаның орындалу уақытының әрекетінде күрделі проблемаларды тудыруы мүмкін, бұл бағдарлама құрылымды түсінуден өзгеше болуы мүмкін.


Достарыңызбен бөлісу:
1   ...   4   5   6   7   8   9   10   11   12




©engime.org 2024
әкімшілігінің қараңыз

    Басты бет