Mhadhara. Hisabati na programu kwa ajili ya Navy ACS. Maelezo ya usaidizi wa shirika na kisheria

    Jumla ya hisabati na programu ACS.

    Programu maalum ya hisabati na ACS

Lengo la kujifunza: Jifahamishe na kanuni za kuunda sehemu kuu za hisabati na programu za mfumo wa udhibiti wa kiotomatiki wa Jeshi la Wanamaji.

Fasihi:

    V.F. Shpak Misingi ya kudhibiti otomatiki. Sehemu ya 1, ukurasa wa 145-162. Petrodvorets, VMIRE, 1998

    N.F. Wakurugenzi na wengine. Udhibiti otomatiki na mawasiliano katika Jeshi la Wanamaji. ukurasa wa 118-121. Petersburg Elmore, 2001.

    SENTIMITA. Dotsenko et al Taarifa za umoja na nafasi ya kazi ya Jeshi la Wanamaji: kutoka kwa wazo hadi utekelezaji. Ukurasa 221-268. St. Petersburg, NIKA, 2003

1. Programu ya jumla ya hisabati na kompyuta.

Hisabati na programu (MSS), pamoja na usaidizi wa habari (IS), ni kati ya aina muhimu zaidi za usaidizi kwa mfumo wa udhibiti wa kiotomatiki wa Navy. Mgawanyo wa MPO na IO ni wa masharti kabisa. Usaidizi wa habari humpa mtumiaji wa kompyuta (mtoa maamuzi) taarifa za kufanya maamuzi. Hisabati na programu inaruhusu mtumiaji kufanya mahesabu muhimu kwa kutumia taarifa iliyotolewa na programu.

Tofauti kati ya programu ya hisabati na programu ni ya kiteknolojia tu. Kwanza, programu ya hisabati (MS) imeundwa, na kisha inatekelezwa katika programu (SW). Wakati huo huo, aina zote mbili za usalama zina haki ya kuwepo kwa kujitegemea. MO maalum inaweza kuwa na matoleo kadhaa ya programu kwa aina tofauti za kompyuta. Hata hivyo, katika Hivi majuzi Dhana ya "hisabati na programu" imechukua mizizi, ikimaanisha aina moja ya programu.

Kulingana na majukumu yao, MPOs zimegawanywa katika jumla (OMPO) na maalum (SMPO). Kwa upande wake, OMPO inawasilishwa kwa njia ya programu ya jumla ya hisabati (GMS) na programu ya jumla (GSO), na SMPO - kwa namna ya programu maalum ya hisabati (SMO) na programu maalum (SPO).

Usaidizi wa jumla wa hisabati wa mfumo wa udhibiti wa kiotomatiki ni seti ya maelezo na algoriti iliyoundwa kupanga na kutoa:

utendaji kazi kwa ufanisi njia za kiufundi wakati wa shughuli za mfano (vitendo vya kupigana) na kutatua matatizo ya usindikaji wa habari;

mwingiliano wa afisa-waendeshaji na vifaa vya automatisering;

utayarishaji na utatuzi wa programu huria.

Programu ya Jumla ya ACS ni seti ya zana za programu zinazotumia algoriti za OMO.

OPO inajumuisha mfumo wa uendeshaji, vifurushi vya programu za programu (APP) na seti ya programu za huduma za kiteknolojia (TPS).

Mfumo wa uendeshaji unaeleweka kama sehemu ya programu iliyoundwa kwa ajili ya kupanga na kupanga mchakato wa usindikaji wa habari, usimamizi wa pembejeo na data, ugawaji wa rasilimali, utayarishaji na utatuzi wa programu na shughuli zingine za usaidizi. Kwa mujibu wa ufafanuzi, mfumo wa uendeshaji umegawanywa katika sehemu mbili: kazi na teknolojia.

Sehemu ya kiteknolojia ya mfumo wa uendeshaji ni mfumo wa programu, unaojumuisha lugha za programu, watafsiri, mhariri wa kiungo, kipakiaji na zana zingine za kuandaa na kurekebisha programu ya chanzo wazi. Kwa kuongezea, lugha za programu zimeainishwa kama usaidizi wa lugha kwa mifumo ya udhibiti wa kiotomatiki.

Kwa kompyuta kubwa (ES-1045, ES-1046, nk), mifumo ya uendeshaji ya EC OS na EC SVM iliyo na mifumo ya programu ya lugha nyingi hutumiwa sana. Kwa mfano, katika mazingira ya uendeshaji ya CVM EC, unaweza kuunda bidhaa za programu katika lugha za kitaratibu PL-1, FORTRAN IV, PASCAL, nk.

Katika kompyuta za kisasa za kibinafsi, mifumo ya programu sio sifa ya mfumo wa uendeshaji (OS). Zinatolewa kwa namna ya PPP tofauti na kuainishwa kulingana na lugha ya programu. Kwa mfano, mifumo inayojulikana kwa sasa programu ya Delphi, Visual C, Visual Basic, nk.

Vifurushi vya programu huongeza uwezo wa OS na kutoa zana za ziada za kuunda programu huria. Kwa mujibu wa njia, teknolojia kadhaa za kuunda SMPO zinajulikana, ambazo zinaweza kupatikana hapa chini.

Seti ya mipango ya matengenezo ina programu za majaribio iliyoundwa kwa ajili ya kuanzisha, kutatua matatizo na kutatua matatizo ya kompyuta.

Dhana za Msingi

Algorithm - Hili ni agizo (agizo au mfumo wa maagizo) ambao unafafanua mchakato wa kubadilisha data ya chanzo kuwa matokeo unayotaka, ambayo yana sifa zifuatazo:

  • uhakika, i.e. usahihi na uwazi kwa mtendaji; kutokana na mali hii, mchakato wa kutekeleza algorithm ni asili ya mitambo;
  • ufanisi, i.e. uwezo wa kusababisha matokeo unayotaka baada ya idadi ndogo ya hatua rahisi;
  • imeenea, i.e. kufaa kwa kutatua shida yoyote kutoka kwa tabaka fulani la shida.

Kutoka kwa ufafanuzi wa algorithm ni wazi kwamba mchakato wa utekelezaji wake lazima uwe wazi, unaojumuisha hatua tofauti, vitendo vya algorithmic. Mahitaji ya unyenyekevu wa hatua hizi ni kutokana na ukweli kwamba, kuruhusu utata usio na kikomo wa hatua, tutawanyima dhana ya algorithm ya uhakika wowote. Mali ya algorithm ya kusababisha suluhisho katika idadi ya mwisho ya hatua inaitwa uwezekano wa uwezekano.

Lugha za asili hazitumii sana kuunda maagizo ya uhakika na sahihi. Kwa hivyo algorithm lazima iwe maagizo katika lugha rasmi.

Kila kompyuta inatengenezwa ili kutatua matatizo hasa ya darasa fulani. Katika suala hili, inahitajika kwamba kompyuta itoe uwezo wa kufanya katika mchanganyiko unaohitajika seti fulani ya shughuli, zilizochukuliwa kama msingi.

Uendeshaji wa mashine ya msingi wanaingiza habari kwenye seli ya RAM kutoka kwa kifaa kingine cha kuhifadhi, kutoa taarifa kutoka kwa seli, pamoja na operesheni yoyote ambayo: inatekelezwa katika vifaa; ina data ya awali ambayo ni matokeo ya uendeshaji wa mashine ya msingi na fasta katika seli moja au zaidi; hutoa tokeo ambalo limerekodiwa katika seli moja tofauti na linapatikana, lakini halihitajiki kwa matumizi kama data ya awali ya yoyote operesheni ya msingi magari; haiwezi kuchukuliwa kama tata ya utendakazi rahisi wa mashine unaokidhi masharti matatu ya awali.

Mfumo wa uendeshaji ni jumla ya shughuli zote za mashine zinazotolewa kwenye kompyuta.

Timu ni maagizo ya kimsingi yanayotoa utendaji wa kikundi fulani cha shughuli.

Shughuli kuu Kompyuta ni hesabu, mantiki, uhamisho, mabadiliko, wakati mashine inapita kutoka kwa kutekeleza amri moja hadi kutekeleza nyingine, kuchota amri kutoka kwa RAM na kusimamisha mashine ("kuacha"). Shughuli kuu za habari za barua ni: kuamua urefu wa neno; kuhamisha neno kutoka sehemu moja kwenye RAM hadi nyingine; kuangazia sehemu maalum neno lililopewa; kuingizwa kwa nafasi kati ya maneno; kugawanya safu ya maneno katika mistari midogo; kulinganisha maneno mawili. Kawaida shughuli zilizoorodheshwa huitwa kuhariri.

Kupanga programu

Kompyuta kawaida hutumiwa ama kutatua shida za mtu binafsi (ya darasa fulani), au kutatua shida ya shida zinazohusiana za madarasa anuwai.

Wakati wa kutatua shida fulani (darasa la shida) kwenye kompyuta, kazi hugawanywa katika hatua zifuatazo:

    uundaji wa hisabati wa tatizo;

    maendeleo ya mbinu ya kutatua;

    kukuza algorithm ya kuisuluhisha na kuiandika katika lugha fulani ya programu;

    kupanga programu;

    kurekebisha programu kwenye mashine;

    maandalizi ya data ya awali, kutatua matatizo kwenye kompyuta.

Seti iliyoelezwa ya kazi inaitwa programu yenye matatizo.

Wakati wa kuendeleza mfumo wa mipango ya kutatua seti ya matatizo yanayohusiana, mlolongo ulioelezwa wa kazi huhifadhiwa wakati wa maendeleo ya kila programu. Kwa kuongeza, idadi ya hatua za ziada za kazi zinaonekana kuhusiana na haja ya kuhakikisha umoja wa mfumo. Seti ya kazi za kuunda mfumo wa mipango ya kutatua matatizo yanayohusiana inaitwa programu ya mfumo.

Uundaji wa shida ya hisabati. Kazi hii inajumuisha kuamua muundo na asili ya data ya awali ya kutatua tatizo, kuamua matokeo ya awali, na kurekodi hali ya tatizo kwa kutumia nukuu ya hisabati. Vifaa vya hisabati vinavyotumiwa katika uundaji wa tatizo la hisabati hutegemea darasa ambalo tatizo ni la.

Maendeleo ya njia ya kutatua shida. Mbinu ya suluhisho inazingatiwa kuendelezwa wakati utegemezi wa matokeo yote yaliyohitajika kwenye yale ya awali yanaanzishwa na mbinu za kupata matokeo yaliyohitajika zinaonyeshwa ambazo zinaweza kutekelezwa kwenye kompyuta. Ikiwa imegunduliwa kuwa njia zilizochaguliwa hazifai katika mchakato wa kutatua tatizo kwenye kompyuta, ni muhimu kurudi kwenye hatua ya maendeleo ya njia.

Maendeleo ya algorithm ya kutatua tatizo. Algorithm ya kutatua shida inatengenezwa kulingana na mbinu ya kulitatua. Algorithm inatengenezwa kwa lugha ya maelezo ya hisabati, na kisha imeandikwa kwa lugha ya algorithmic kutoka kati ya lugha zinazojulikana za programu. Ukuzaji wa algorithm ya kutatua shida inapaswa kufanywa kwa kuzingatia sifa za kompyuta.

Wakati wa kutumia kompyuta kutatua tatizo, ni muhimu kuzingatia vipengele vifuatavyo:

  • idadi kubwa lakini ndogo ya tarakimu katika picha za namba;
  • kasi kubwa ya kufanya shughuli kwenye nambari zilizohifadhiwa kwenye RAM;
  • kasi ya chini ya data ya pembejeo na matokeo ya matokeo;
  • kasi ya chini ya kubadilishana nambari kati ya RAM na vifaa vya uhifadhi wa nje;
  • uwezo mdogo wa RAM na uwezo mkubwa sana wa vifaa vya uhifadhi wa nje;
  • uwezekano wa kushindwa kwa mashine bila mpangilio na hitaji linalosababishwa la kufuatilia uendeshaji wake.

Kupanga programu. Kupanga ni V kurekodi algoriti iliyotengenezwa katika lugha ya programu (kwa mfano, katika lugha inayoitwa ASSEMBLY au ALGOL, FORTRAN, COBOL, PL/I), iliyofanywa kwa mikono, na tafsiri iliyofuata katika lugha ya algorithmic ya mashine.

Tangaza ni mchakato wa kubadilisha kwa usawa algoriti iliyobainishwa katika lugha ya programu kuwa algoriti katika lugha ya mashine. Utaratibu huu unafanywa kwa kutumia programu maalum inayoitwa mtafsiri.

Kurekebisha programu kwenye mashine. Kurekebisha programu kwenye mashine inalenga kuondoa makosa katika programu na inajumuisha: kufuatilia programu; utafutaji na uamuzi wa maudhui (utambuzi) wa makosa; marekebisho ya makosa yaliyogunduliwa.

Maandalizi ya data ya awali. Kutatua tatizo kwenye kompyuta. Data ya awali ya kazi ya kuingizwa kwenye kompyuta lazima kwanza ihamishwe kutoka kwa fomu au nyaraka hadi kwenye kanda zilizopigwa au kadi zilizopigwa. Utaratibu huu unafanywa kwa vifaa maalum vya kuchomwa vilivyo na kibodi. KATIKA Wakati wa mchakato wa utoboaji, makosa yanawezekana kama matokeo ya kutofaulu kwa nasibu kwa vifaa vya utoboaji na kama matokeo ya makosa katika kazi ya waendeshaji wa perforator. Makosa yote yaliyoletwa kwenye habari wakati wa kupiga na kuingia lazima yarekebishwe.

Kama sheria, Kompyuta za safu wima 80 au PL ya karatasi hutumiwa kuingiza habari kwenye kompyuta. Mashine kubwa zina zote mbili. Kadi ya punch ina mistari 12, na kwa hiyo punch 12 zinawezekana katika kila safu; katika mwelekeo wa kupita kwa mkanda uliopigwa, nafasi za kupiga 5, 6, 7 na 8 zinaruhusiwa. Kwa hivyo, kinadharia inawezekana kutumia alfabeti kutoka 2 5 = 32 hadi 2 12 = 4096 wahusika, lakini katika mazoezi kuna mara chache zaidi ya 3 ngumi kwenye safu ya kadi iliyopigwa, kwa hivyo, kama sheria, alfabeti inayotumiwa ina kutoka 40. hadi wahusika 80. Miongoni mwa vifaa kompyuta kuna kifaa cha kujitegemea cha kuzaliana kwenye maelezo ya karatasi yaliyomo kwenye kadi zilizopigwa na tepi iliyopigwa kwa fomu inayofaa kwa usomaji wa kibinadamu. Matokeo yake, tunapata kile kinachoitwa kawaida kuorodhesha, au kuchapishwa.

Baada ya kuingia programu na data ya awali kwenye kompyuta, tatizo linatatuliwa moja kwa moja.

Programu ya kompyuta

Programu(MO) TEHAMA inaweza kufafanuliwa kama mkusanyiko fulani wa programu, ambayo kila moja inaweza kutumika kivitendo na mtumiaji peke yake au pamoja na programu zingine kutatua shida, au kufanya kazi fulani inayohusiana na programu, au kuunda hali fulani ya uendeshaji wa kompyuta. .

KATIKA Mfumo wa kompyuta wa MO inaweza kujumuisha vikundi vifuatavyo vya programu:

    mfumo wa uendeshaji wa programu;

    mfumo wa zana za programu;

    maombi kwa programu;

    mfumo wa mipango ya matengenezo ya programu;

    mfumo wa programu za majaribio iliyoundwa kufuatilia afya ya kompyuta.

mfumo wa uendeshaji ina programu zinazoamua hali ya uendeshaji ya kompyuta na kuipanua uwezo wa uendeshaji. Mfumo wa uendeshaji unajumuisha programu kadhaa, ambazo kuu ni zifuatazo:

mtumaji- programu ambayo hutoa hali maalum uendeshaji wa kompyuta;

msimamizi, au kufuatilia,- programu ambayo inahakikisha operesheni iliyotolewa kwa mashine na operator wa binadamu ndani ya mfumo wa mode iliyowekwa kwa ajili yake;

idadi ya programu za matumizi, kama vile programu za kuingiza data ya chanzo, programu za kuhariri na kutoa matokeo, kipakiaji - programu ya kuingiza kinachojulikana kama programu za kufanya kazi kwenye RAM, i.e., programu za kutatua shida, mtunzi wa maktaba - programu ya kuingia. subroutines kwa kufanya macrooperations na wao wenyewe macrooperations subroutines, mpango wa kuwasiliana kati ya mfumo wa uendeshaji na operator binadamu.

Ili kuendesha mfumo wa uendeshaji umuhimu mkubwa kuwa na uwezo ambao mashine za kisasa zina (na ambazo mashine za kizazi cha kwanza hazikuwa nazo): uwepo wa mfumo wa usumbufu, ulinzi wa kumbukumbu, ulinzi wa amri na masking ya kupinga.

Kiini cha kazi ya mtumaji ni kwamba anaainisha usumbufu wowote katika utendakazi wa mashine ama kama wa busara, ambapo yeye huhamisha udhibiti na habari juu ya usumbufu huo kwa msimamizi, au kama kimkakati. Katika kesi ya mwisho, yeye mwenyewe anaruhusu usumbufu. Tutaita maandishi yanayolingana na majibu haya kuwa hitimisho.

Msimamizi anapanga, kwa ombi la operator wa kibinadamu, utaratibu wa utekelezaji wa programu na kusambaza vifaa vya kompyuta vilivyopo kati yao, hupanga foleni yao na kudumisha utaratibu katika foleni hii. Kazi kuu zinazowakabili msimamizi ni: kusimamia maendeleo ya kompyuta; kudumisha mawasiliano na mwendeshaji wa kibinadamu.

Kuna njia mbalimbali za uendeshaji wa kompyuta, utoaji wa ambayo ni moja ya madhumuni kuu ya dispatcher.

Njia kadhaa zinahusishwa na kutatua shida zilizowasilishwa kwa namna ya kinachojulikana kifurushi cha kazi Wakati huo huo, mfuko mzima hutolewa na habari kuhusu kazi zilizojumuishwa ndani yake na faida zao juu ya kila mmoja (mfumo wa kipaumbele).

Mfuko wa kazi unafanywa chini ya udhibiti wa msimamizi. Katika kesi hii, programu-moja, programu-mbili au programu nyingi za mashine zinaweza kufanywa. Ufanisi wa matumizi yake kwa kiasi kikubwa inategemea jinsi kazi inavyounganishwa kwenye mfuko. Kifurushi kinachukuliwa kuwa kimeundwa vizuri ikiwa kichakataji cha kati (kitengo cha hesabu na kitengo cha kudhibiti) hakifanyi kazi. Njia zilizoelezwa zinaitwa njia za kundi. Kompyuta za kisasa Wakati huo huo, wanaruhusu utekelezaji wa wakati mmoja wa hadi kazi 16.

Hali ya kushiriki wakati sifa ya ukweli kwamba ni wakati huo huo kushikamana na kompyuta idadi kubwa vifaa vya pembejeo vya taarifa/towe vinavyoitwa vituo. Ikiwa watumiaji wa operesheni ya kundi hawaruhusiwi kwa jopo la kudhibiti, basi katika hali ya kugawana wakati kila mmoja wao huwasiliana na mashine bila ushiriki wa waendeshaji. Mtumaji huhakikisha kuwa vizuizi vidogo vya wakati vinatolewa kwa mlolongo kwa watumiaji wote walio kwenye foleni. Kwa kipindi cha muda kilichopimwa kwa sekunde chache, mashine hutumikia kila mtumiaji kidogo. Hali ya kushiriki wakati ni rahisi katika hali ambapo utekelezaji wa kazi ya mashine unapaswa kufanyika kwa njia ya mazungumzo kati ya kompyuta na mtumiaji. Hii hutokea wakati wa kurekebisha programu kwenye kompyuta, wakati wa kutatua matatizo ya habari kama vile swali na jibu.

Mfumo wa programu ina idadi ya programu za watafsiri za kutafsiri algoriti zilizobainishwa katika lugha mbalimbali za programu ya kuingiza katika lugha ya mashine. Kawaida, mfumo wa zana ya programu una watafsiri kutoka kwa lugha za algorithmic za viwango vitatu.

Mchakato wa kutafsiri algorithm na mchakato wa kutekeleza kwa mashine inaweza kuunganishwa kwa moja ya njia mbili.

Njia ya kwanza, inayoitwa mkusanyiko, ni kwamba mchakato wa kutekeleza algorithm kwa mashine unafanywa baada ya mchakato wa tafsiri yake kukamilika kabisa. Jina "mkusanyiko" liliibuka kwa sababu ya ukweli kwamba mwanzoni lilimaanisha mchakato wa kutafsiri kulingana na kuunganishwa katika sehemu moja iliyotayarishwa awali (subroutines) inayolingana na sehemu fulani za algorithm inayotafsiriwa. Baadaye, jina hili lilipanuliwa kwa kesi ya tafsiri ya "nguvu", ambayo haihusiani na matumizi ya maandishi yaliyotayarishwa awali.

Njia ya pili ya kuchanganya mchakato wa tafsiri na mchakato wa utekelezaji wa algorithm inaitwa tafsiri. Njia hii inajumuisha ukweli kwamba sehemu za kibinafsi za algorithm zinafanywa mara moja baada ya kutafsiri, baada ya utaratibu huo huo unafanywa kwa sehemu nyingine za algorithm, nk.

Ni tabia ya ujumuishaji kwamba programu ya mkusanyaji inayoitekeleza haihitajiki tena wakati wa utekelezaji wa algorithm na kwa hivyo haipo kwenye RAM ya kompyuta. Matumizi ya njia ya kutafsiri inahitaji kuwepo kwa programu ya mkalimani katika RAM ya kompyuta wakati wa kutatua tatizo.

Kila njia ina sifa zake, lakini njia ya kutafsiri ni rahisi zaidi. Kwa kuongezea, hurahisisha kazi ya ugawaji kumbukumbu, ingawa inahitaji matumizi mengi ya kumbukumbu kuhifadhi programu yenyewe ya ukalimani.

Mifumo ya upangaji ya kompyuta za hivi punde mara nyingi hutegemea kanuni inayojulikana kama modularity. Moduli huitwa "vipande" vya algorithms iliyoainishwa katika lugha ya mfumo wa utendaji au katika lugha ya programu ya kuingiza, ambayo masharti yafuatayo yanafikiwa:

"vipande" vya algorithms vilivyoainishwa katika lugha ya mfumo wa utendaji lazima vipewe maelezo ya ziada ya kutosha ili kuhakikisha kwamba, kwa usindikaji unaofaa, programu iliyotajwa katika lugha ya mfumo wa utendaji inaweza kukusanywa kutoka kwao;

"vipande" vya algoriti zilizoainishwa katika lugha za programu za kuingiza lazima zipewe maelezo ya ziada ya kutosha ili, kwa usindikaji sahihi, ziweze kubadilishwa kuwa moduli zilizoainishwa katika lugha ya algorithmic ya mfumo wa utendaji.

Kanuni ya modularity iko katika ukweli kwamba programu katika lugha ya mfumo wa utendaji hukusanywa kutoka kwa moduli. Moduli katika lugha ya mfumo wa utendaji zinaweza kukusanywa katika maktaba. Kanuni ya msimu hukuruhusu kutumia moduli zilizokusanywa katika lugha tofauti wakati wa kukusanya programu. lugha za algorithmic. Uwezo wa kukusanya moduli na kuzitumia tena mara kwa mara huokoa kazi ya watengeneza programu.

Programu zote za programu lazima ziwe vipengele vya maktaba fulani. Maktaba ya programu za kawaida ni mkusanyiko wa programu zilizokusanywa awali ambapo kila programu hutolewa maelezo ya ziada ambayo yanaitambulisha. Data kuhusu programu zote zinapaswa kufupishwa katika jedwali la kawaida linaloitwa katalogi. Saraka lazima iruhusu utaratibu mdogo kupatikana kwa jina lake na kwa madhumuni yake.

Maktaba kawaida hukusanya programu zilizokusanywa maalum na iliyoundwa mahsusi.

Inashauriwa kutumia zana zilizoorodheshwa za programu ili kutatua kazi mbalimbali (matatizo). Wakati huo huo, inaaminika kuwa programu za kazi za mtu binafsi (matatizo) haziwezi kuwa "nzuri" sana, lakini gharama ya jumla ya programu na kutatua tatizo kwenye kompyuta ni kawaida chini ya wakati wa kuunda programu zaidi "nzuri".

Programu ya ACS

Programu ya ACS ni mfumo wa mbinu, mbinu na zana zinazokuwezesha kuendeleza kwa ufanisi programu za ufumbuzi kwenye kompyuta kazi maalum ACS, kudhibiti uendeshaji wa kompyuta katika mchakato wa kutatua matatizo haya, kufuatilia uendeshaji sahihi wa kompyuta.

Masharti kuu ambayo lazima yafuatwe wakati wa kuunda MO ACS ni yafuatayo:

  • utangamano na msingi wa ACS inayotengenezwa na MO kwenye kompyuta iliyopo ya MO;
  • kuzingatia zana zilizochaguliwa za MO kwenye kazi za mfumo wa kudhibiti otomatiki;
  • aina ya kutosha ya zana za programu za otomatiki;
  • uwezo wa kufanya mabadiliko kwa ufanisi kwenye programu za kazi;
  • uwezekano wa maelezo yasiyo na utata na ya kina ya algorithms;
  • uwezo wa kuongeza utendaji wa programu za kibinafsi;
  • modularity ya ujenzi wa programu.

MO ACS hutumikia kumpa mtumiaji anuwai ya huduma za teknolojia ya programu. Inaweza kugawanywa katika sehemu mbili: mkusanyiko wa programu za udhibiti na mkusanyiko wa programu za usindikaji.

Kudhibiti programu kutekeleza upakiaji wa awali wa RAM ya mashine na udhibiti wa uendeshaji wa mfumo wa kudhibiti otomatiki, pamoja na usindikaji wa kukatiza, usambazaji wa kazi ya kituo, upakiaji wa programu kutoka kwa maktaba hadi RAM. Programu za udhibiti hutoa uendeshaji wa programu nyingi na kuwasiliana na operator.

Inachakata programu ni pamoja na mfumo wa otomatiki wa programu na programu za huduma.

Kupanga kazi za mfumo wa otomatiki zifuatazo: programu za kurekodi katika lugha za programu za pembejeo; tafsiri ya programu katika lugha ya ndani ya kompyuta; kuchanganya (kukusanya) usanidi unaohitajika (sehemu) kutoka kwa subroutines za kawaida; programu za kurekebisha katika kiwango cha lugha za pembejeo; marekebisho ya programu katika kiwango cha lugha za kuingiza.

Kazi kuu za programu za huduma ni zifuatazo: programu za kurekodi katika maktaba; kutengwa kwa programu kutoka kwa maktaba; kuandika upya programu kutoka kwa njia moja ya sumaku hadi nyingine, programu za uchapishaji na kutoa kwa vyombo vya habari vilivyopigwa; wito programu zinazohitajika katika mchakato wa kufanya kazi katika RAM na kuiweka kwenye eneo lake.

Sehemu kuu za MO ACS ni programu ya kupeleka mfumo na maktaba ya taratibu za kawaida na programu za kawaida, iliyokusudiwa kwa usindikaji wa habari za kiuchumi na uzalishaji.

Mpango wa kusambaza mfumo inahakikisha utendakazi wa mifumo ya udhibiti otomatiki katika hali iliyoamuliwa na shughuli za uzalishaji, kiuchumi au kiutawala.

Maktaba ya taratibu za kawaida, inayopatikana katika kompyuta ya MO ni hatua ya mpito kuelekea uundaji wa maktaba ya mfumo inayolenga michakato ya usindikaji wa habari katika mifumo ya udhibiti wa kiotomatiki. Maktaba ya mfumo lazima iwe na:

mipango ya kuingia na kubadilisha nyaraka na vyanzo vingine vya maandishi ya data ya awali katika fomu ya kompyuta;

mipango ya kuandaa safu za mashine zinazojulikana na idadi kubwa na ugumu wa muundo wao, kwa utafutaji wenye ufanisi na kutoa data inayohitajika kutoka kwa safu;

programu za kubadilisha data kuwa fomu inayokubalika zaidi kwa wanadamu (kwa njia ya grafu, michoro, picha) na kuzitoa kwa vifaa vya nje.

Lugha za programu

Lugha ya programu inaitwa mifumo ya ishara inayotumiwa kuelezea michakato ya kutatua shida kwenye kompyuta. Kwa asili yao, lugha za programu zimegawanywa katika vikundi vitatu:

  1. lugha rasmi za algorithmic;
  2. lugha rasmi za programu zisizo za algorithmic;
  3. sio mifumo rasmi ya ishara inayotumika katika upangaji.

Lugha rasmi za programu. Kundi hili la lugha ni pamoja na: lugha za algorithmic za mashine na mifumo ya uendeshaji; lugha za algorithmic zinazoelekezwa kwa mashine; lugha za algorithmic zenye mwelekeo wa shida; lugha za algorithmic zinazojitegemea kwa mashine.

Lugha za mfumo wa uendeshaji huitwa lugha za algorithmic zinazogunduliwa na muundo ulioundwa kutoka kwa kompyuta na programu ya utangazaji iliyoundwa kwa ajili yao (wakati mwingine pia huitwa msimamizi).

Kuunda programu moja kwa moja kwa lugha ya mashine au mfumo wa uendeshaji kwa sasa haitumiwi, kwani inahitaji mpangaji kukumbuka idadi kubwa ya maelezo, bila ambayo haiwezekani kuunda programu kutoka kwa amri.

Lugha za algorithmic zinazoelekezwa na mashine vyenye njia za kueleza ambazo hufanya iwezekane kuashiria katika kurekodi algorithm kwa usaidizi wa njia za kiufundi sehemu fulani zake zinapaswa kufanywa na jinsi vifaa vya kuhifadhi vinapaswa kutumiwa. Lugha za programu zinazoelekezwa na mashine ni pamoja na misimbo otomatiki na baadhi ya lugha ambazo ziko karibu katika uwezo wao na lugha za ulimwengu za algoriti, kwa mfano ALMO.

Lugha za algoriti zinazolengwa na tatizo Hizi ni lugha ambazo zimeundwa mahsusi kuelezea michakato ya kutatua shida za darasa fulani nyembamba, kwa mfano, shida za algebra ya mstari, takwimu, shida za usindikaji wa data, nk. Hasa, COBOL ni ya lugha zinazoelekezwa kwa shida.

Lugha za algorithmic zinazojitegemea kwa mashine yanafaa kwa ajili ya kujenga algorithms kwa ajili ya kutatua matatizo ya madarasa pana sana. Lugha hizi ni pamoja na ALGOL zilizotajwa tayari, FORTRAN, PL/1.

Miongoni mwa lugha za algorithmic zinazojitegemea kwa mashine, isipokuwa ni YAL. Madhumuni ya lugha hii sio tu kuwa lugha ya programu. YALS hutumiwa kama hatua ya kwanza ya kuelezea algoriti wakati wa kupanga programu katika lugha ya mashine au lugha ya ASSEMBLY (mbinu ya upangaji wa programu; algoriti iliyoandikwa katika YALS inatafsiriwa mwenyewe katika lugha ya mashine au lugha ya ASSEMBLY).

Jedwali hapa chini linatoa data linganishi kati ya lugha rasmi za programu.

Si mifumo rasmi ya ishara. Lugha hizi kwa kawaida hutumiwa katika upangaji wa programu kwa mikono au katika awamu ya awali, ya mwongozo ya programu inayosaidiwa na kompyuta. Mfano wa hii ni mtiririko wa programu. Mchoro wa mtiririko wa programu ni maelezo yaliyopanuliwa ya programu, ambayo sehemu zake za kibinafsi zinaonyeshwa kwa namna ya "vitalu" (mstatili, almasi, miduara, nk), ambayo maudhui ya sehemu hizi yanasemwa kwa lugha ya asili ( kwa mfano, kwa Kirusi). Uunganisho kati ya vitalu (sehemu za programu) huonyeshwa kwa kutumia mistari inayoonyesha uhamisho wa udhibiti. Mistari inaweza kuwekewa lebo ili kuonyesha masharti ambayo uhamishaji wa udhibiti hutokea. Chati mtiririko ni sawa na algoriti zilizoandikwa katika LLS kwa kutumia viendeshaji vya jumla, lakini hutofautiana nazo kwa kuwa maana ya vizuizi huelezwa katika lugha asilia, isiyo rasmi, huku katika LLS waendeshaji wa jumla hupewa usimbaji katika lugha rasmi kabisa.

Hivi sasa, zaidi ya lugha 2000 tofauti za algorithmic na maeneo zaidi ya 700 ya matumizi yao yanajulikana kwa kutatua shida zinazolingana kwenye kompyuta.

Kuna lugha za programu za viwango vifuatavyo:

    lugha ya sifuri au ngazi ya chini- kanuni ya mashine;

    lugha ya kiwango cha kwanza - mnemonic code, au ishara coding lugha;

    lugha ya ngazi ya pili - autocode (macrocode);

    Lugha za kiwango cha tatu (juu) - lugha zenye mwelekeo wa shida.

Inashauriwa kutumia mifumo ya udhibiti otomatiki kama lugha za kuingiza, kulingana na aina ya kazi. lugha zenye matatizo aina mbalimbali

Data linganishi ya lugha rasmi za upangaji wa algoriti

Darasa la lugha za programu za algorithmic

Uhasibu kwa vipengele vya kompyuta

Tabia za darasa la shida

Mbinu ya kupanga

Tathmini ya masharti ya ubora wa programu

Lugha za mashine

Lugha zinazoelekezwa na mashine

Sehemu

Imedhamiriwa na sifa za kompyuta

Imejiendesha

Inaridhisha

Lugha zinazolengwa na matatizo

Ndogo

Imejiendesha

Inaridhisha

Lugha zinazojitegemea kwa mashine

Haipo au ndogo sana

Kina sana

Imejiendesha

Chini

(kwa mfano, kwa uchambuzi - ALGOL, FORTRAN, nk, kwa majukumu ya kiuchumi- ALGEK, nk, kwa kazi za habari - COBOL, SINTHOL, nk).

Hebu tuangalie baadhi ya lugha za programu za algorithmic.

ALGOL-60. Jina la lugha linatokana na maneno ya Kiingereza Lugha ya Algorithmic. Ilianzishwa na kikundi cha wanasayansi kutoka nchi mbalimbali mwaka wa 1960 na imeenea sana. Sababu za kufaulu kwake ziko katika ukaribu wake na lugha ya kawaida ya hisabati, urahisi wa kuelezea tabaka kubwa la shida, ulimwengu na uhuru kamili kutoka kwa kompyuta maalum, na urasimishaji mkali wa lugha kutoka kwa alfabeti hadi miundo ngumu zaidi.

ALGOL-60 sio tu lugha ya ulimwengu wote programu, lakini pia lugha ya kimataifa ya kuelezea algoriti.

Msingi wa kuandika algorithms katika lugha ya ALGOL-60 ni mlolongo wa waendeshaji waliotenganishwa na ishara ";". Mlolongo huu wa waendeshaji, ambao ni vitendo moja katika lugha, unaambatana na mlolongo wa maelezo ambayo humpa mtafsiri habari kuhusu sifa muhimu zinazotumiwa katika waendeshaji. Maelezo, kwa mfano, hutoa taarifa kuhusu aina za nambari zinazotumika kama thamani zinazobadilika, saizi ya safu za nambari, n.k. Mchanganyiko kama huo wa maelezo na waendeshaji katika lugha hii huitwa block.

Programu katika lugha ya ALGOL-60 ni zuio, au taarifa ya mchanganyiko, ambayo haina taarifa nyingine ndani na haitumii taarifa nyingine isiyomo ndani yake.

Vituo vya kompyuta ambapo programu inafanywa katika ALGOL inapaswa kukusanya uzoefu si kwa njia ya mipango kamili ya ALGOL, lakini kwa namna ya maelezo ya taratibu. Hii ni kwa sababu ya ukweli kwamba karibu haiwezekani kujumuisha programu zilizotengenezwa tayari za ALGOL katika programu mpya, wakati maelezo ya taratibu yameundwa mahsusi kwa hili.

Katika USSR, ALGOL-60 ilienea katika mfumo wa anuwai zake.

FORTRAN. Neno FORTRAN limeundwa kutokana na maneno mawili ya Kiingereza (Formula Translator). Mojawapo ya sifa muhimu zaidi za lugha ya FORTRAN ni kwamba ni huru kutoka kwa maalum ya kompyuta fulani. FORTRAN ni lugha ya programu inayojitegemea kwa mashine.

Maktaba za kina za programu za hisabati zimekusanywa katika lugha hii, ikijumuisha programu za kawaida (zinazotumika mara kwa mara) na programu nyingi maalum zinazotumiwa kutatua matatizo mahususi.

Utangulizi ulioenea wa FORTRAN katika mazoezi ya programu ni kwa sababu ya sifa zake, ambayo inapaswa kuzingatiwa, kwanza, unyenyekevu wake ikilinganishwa na lugha zingine za algorithmic (kwa mfano, ALGOL); pili, kutokana na kutokuwepo kwa miundo iliyo ngumu kupita kiasi, programu zilizotafsiriwa ni bora zaidi ikilinganishwa na programu zilizoandikwa kwa lugha nyingine; wakati huo huo, FORTRAN inafaa kwa ajili ya kupanga algorithms nyingi za computational;

tatu, FORTRAN ina njia zenye nguvu sana za kuunganisha mtu na mashine: habari zinazozalishwa na kompyuta zinawasilishwa kwa fomu inayojulikana kwa wanasayansi na wahandisi. Na hatimaye, nne, FORTRAN inafaa kwa matumizi bora ya nje vifaa vya kompyuta.

Algorithm ya kutatua tatizo, iliyoandikwa kwa kutumia FORTRAN, ina mlolongo wa waendeshaji. Waendeshaji hawa wanaweza kuwa wa aina kadhaa tofauti. Ikichukuliwa pamoja, waendeshaji wanaofafanua algorithm ya kutatua tatizo huunda programu asili. Baada ya programu ya chanzo kuandikwa na kupigwa kwenye kadi za punch, inabadilishwa kwa kutumia mtafsiri wa FORTRAN kwenye programu ya kufanya kazi.

Taarifa ya kwanza ni kauli ya kichwa, ambayo ina fomu || PROGRAMa ||, ambapo a ni jina la programu, na la mwisho ni opereta wa mwisho (mendeshaji || END ||) na seti ya subroutines. Programu kuu na kila subroutine inajanibisha lebo za waendeshaji, pamoja na majina ya vigeu, safu na idadi nyingine, na hivyo kuruhusu lebo na vitambulishi sawa kutumika katika subroutines tofauti na katika programu kuu. Mawasiliano kati ya programu kuu na subroutines hufanywa kwa kutumia taarifa sahihi za ufikiaji.

Wakati wa kuunda programu katika FORTRAN, inashauriwa kuzingatia utaratibu wafuatayo wa waendeshaji: 1) operator-kichwa cha programu kuu (subroutine); 2) opereta wa maelezo ya faili; 3) mwendeshaji wa mpangilio wa aina isiyo wazi; 4) opereta wa aina ya wazi, mwendeshaji wa ukubwa, mwendeshaji wa eneo la jumla; 5) operator kwa kubainisha usawa; 6) operator-kazi, operator-utaratibu; 7) operator kwa kuweka muundo, waendeshaji wanaoweza kutekelezwa (bila masharti, masharti, pembejeo, pato); 8) mwendeshaji wa mwisho.

COBOL. Jina la lugha linatokana na maneno ya Kiingereza Common Business Oriented Language. COBOL ni lugha ya algoriti yenye mwelekeo wa matatizo iliyoundwa ili kuelezea michakato ya utatuzi wa matatizo na uchakataji wa data. COBOL ndiyo lugha pekee inayozungumzwa na watu wengi kwa sasa ngazi ya juu kwa programu kazi za kiuchumi. Umaarufu wake mpana unaelezewa na ukweli kwamba COBOL iko karibu kabisa lugha ya asili, ambayo kwa kawaida matatizo ya kiuchumi hutungwa na kutatuliwa.

Vipengele tofauti vya lugha ya COBOL ni kama ifuatavyo:

lugha kwa maana fulani ni sehemu ndogo kwa Kingereza; maandishi yaliyoandikwa katika COBOL yanaweza kueleweka bila maandalizi ya awali;

lugha inaelezea data vizuri na muundo wa kawaida wa karatasi za biashara; data hii inaweza kuhusiana na mambo ya kibinafsi, bidhaa, fedha (data iliyojumuishwa pia inaruhusiwa);

lugha inajaribu kutatua tatizo la utangamano kamili, yaani, uhuru kutoka kwa maalum ya kompyuta maalum.

Programu ya COBOL ina sehemu nne zinazoitwa sehemu. Sehemu hizi zina majina yafuatayo: sehemu ya utambulisho, sehemu ya vifaa, sehemu ya data na sehemu ya taratibu. Sehemu ya taratibu ina programu halisi, lakini haina maana (au haijafafanuliwa vizuri zaidi) isipokuwa muundo wa data ya kuchakatwa, iliyofafanuliwa katika sehemu ya tatu, inajulikana. Sehemu ya vifaa imegawanywa katika sehemu ya usanidi na sehemu ya I/O, na sehemu ya data imegawanywa katika sehemu ya safu, sehemu. kumbukumbu ya kazi na sehemu ya mara kwa mara. Mwanzoni mwa sehemu (sehemu) kuna jina la sehemu (sehemu), ikifuatiwa na kipindi; jina lenye nukta huchukua mstari tofauti. Maudhui ya sehemu au sehemu yana sentensi zilizowekwa katika aya zilizotajwa.

COBOL hurahisisha zaidi kufanya mabadiliko madogo kwenye programu ambayo ni muhimu wakati wa kuchakata maelezo ya kibiashara.

Katika COBOL, kitengo cha msingi cha pembejeo na pato ni faili ya data. Kila faili ina rekodi. Faili sawa mara nyingi hutumiwa katika programu tofauti kulingana na hali ya kazi zinazotatuliwa. Maelezo ya faili ni kali sana na hairuhusu mabadiliko.

Waendelezaji walizingatia uwezekano wa kutumia mashine moja kutangaza programu, na mashine nyingine kutatua tatizo kulingana na programu iliyokusanywa. Kwa kuongeza, mpango huo wa COBOL unaweza kutafsiriwa katika lugha kompyuta mbalimbali kuwa na seti tofauti za vifaa.

SOL. Digital modeling jinsi gani njia ya ufanisi utafiti unazidi kupata umaarufu miongoni mwa wataalamu wanaohusika katika uchanganuzi na usanifu mifumo tata.

Mara nyingi, mtaalamu wa mifumo hupata ugumu wa kuandika programu inayoiga uendeshaji wa mfumo anaosoma. Sababu ya hii inaweza kuwa ugumu uliokithiri wa mifumo ambayo karibu haiwezekani kuelezea hisabati. Matatizo ya aina hii ni mengi, hasa, katika mazoezi ya kuunda mifumo ya vifaa na udhibiti. Ili kuwezesha uundaji wa programu, lugha za programu za kiotomatiki (lugha maalum za modeli) hutumiwa kwa sasa, ambayo inaruhusu, kwa muda mdogo unaotumika kuandaa na kutekeleza majukumu kwenye kompyuta, kuunda na kusoma programu zinazoiga utendakazi wa programu. mfumo unaofanyiwa utafiti.

Wakati huo huo, vipengele vya lugha maalum ni, kama sheria, vya ulimwengu wote na vinaweza kuwa . kutumika kwa darasa pana la matukio ya kuigiza. Kwa kuongezea, lugha maalum za modeli, ikilinganishwa na zile za ulimwengu, hurahisisha sana upangaji wa hesabu na shughuli za kimantiki, inayoonyesha mfumo wa mfano. Wakati huo huo, uhusiano kati ya seti ya tatizo na programu ni rahisi. Hii inafanikiwa kutokana na sifa zifuatazo za lugha maalum za modeli:

  • uwezo wa kurekebisha muundo wa usambazaji wa kumbukumbu ya mashine kati ya vigezo na vigezo. Usambazaji huu ni wa punjepunje na ulioboreshwa zaidi kuliko ule unaopatikana kwa kutumia lugha nyingi za madhumuni ya jumla;
  • uwepo wa seti ya maagizo ambayo hurahisisha mabadiliko ya majimbo ya mfumo wa kuiga. Katika hali nyingi, hii inafanywa na udhibiti wa kawaida au subroutine ya muda ambayo inadhibiti mlolongo wa utekelezaji wa subroutines;
  • uwepo wa seti ya maagizo ambayo huamua hitaji la kutekeleza subroutine fulani kwa wakati fulani;
  • uwepo wa amri za kufanya shughuli za kawaida au zinazokutana mara kwa mara zinazohusiana na nambari za nasibu na usambazaji wa uwezekano;
  • uwepo wa amri zinazorahisisha kupata na kurekodi viashiria vya takwimu wakati wa kuendesha programu ya modeli.

Wacha tuangalie baadhi ya lugha maalum za uundaji wa algoriti.

Lugha ya kielelezo kwa wote ya GPSS ndiyo inayotumika zaidi na ni rahisi na angavu. Haihitaji ujuzi wa programu au uendeshaji wa mashine. Mpango wa kuiga unawasilishwa kwa fomu ya mchoro wa kuzuia, ambayo inavutia hasa kwa wasio programu.

Lugha ya algoriti SIMSCRIPT inachukuliwa kuwa lugha ya kielelezo yenye nguvu zaidi kwa sasa. Kwa sababu ya idadi ya vipengele vyake vya kipekee, inatumika kwa darasa pana zaidi la kazi. Hata hivyo, lugha hii ni ngumu kiasi, na zana za uchunguzi wa programu za utatuzi ni chache. Mbali na hilo, mtumiaji anayewezekana Lazima ujue FORTRAN na uwe na uzoefu wa kupanga programu.

Uangalifu wa wataalam wanaohusika katika kutatua shida za modeli huvutiwa na lugha maalum iliyoundwa kwa madhumuni haya kulingana na ALGOL. Miongoni mwa lugha hizi za programu za kiotomatiki, za juu zaidi ni SIMULA na SOL.

Mfano wa mojawapo ya lugha zilizofanikiwa zaidi za algoriti iliyoundwa iliyoundwa kwa ajili ya kuiga mifumo inayobadilika kwa uwazi ni lugha ya SOL - Lugha Yenye Maelekezo ya Kuiga.

Lugha ya SOL imejengwa kwa misingi ya lugha ya programu ya ulimwengu wote ALGOL, ina muundo sawa na hutumia vipengele vyake kuu. Ili kuelezea darasa pana la michakato yenye matukio tofauti, SOL inawakilisha mfumo wa ulimwengu wote dhana, na kwa hivyo katika mambo mengi ni sawa na lugha za programu zenye mwelekeo wa shida kama vile ALGOL au FORTRAN. Hata hivyo, lugha ya SOL ina vipengele vya kimsingi vinavyoitofautisha na lugha hizi: SOL hutoa utaratibu wa kuiga michakato inayolingana isiyolingana, nukuu zinazofaa kwa vipengele vya nasibu ndani ya usemi wa hesabu, na njia za kiotomatiki za kukusanya data ya takwimu kuhusu vipengele vya mfumo unaoiga. Kwa upande mwingine, sifa nyingi za lugha zenye madhumuni ya jumla zinazoelekezwa kwa shida hazitumiki katika SOL sio kwa sababu haziendani nayo, lakini kwa sababu zinaleta shida kubwa katika muundo wake bila kupanua uwezo wake. Kanuni za msingi za ujenzi wa lugha na uandishi wa programu za modeli ndani yake hufanya iwezekanavyo kujenga mifano ya mifumo ngumu katika fomu rahisi kusoma.

PL/I. Jina la lugha linatokana na maneno ya Kiingereza Programming Language/One.

Lugha ya PL/I ilionekana baada ya kuunda lugha kadhaa za hali ya juu sana, na, kwa kweli, lugha hizi za mtangulizi zilikuwa na athari kubwa kwa muundo wake. Kwa hivyo, inabakia muundo wa kuzuia wa programu kutoka kwa ALGOL, uwezekano wa ugawaji wa kumbukumbu ya nguvu, kuna vifaa vya wito wa utaratibu, njia ya kubainisha fomati zinazotumiwa katika FORTRAN, nk Lakini kuna vipengele vingi vipya. Lugha ni rahisi kwa modeli, kutatua shida za kimantiki, utafiti mizunguko ya mantiki, kutatua matatizo kwa wakati halisi, kuendeleza mifumo ya programu. Inaweza kutumika aina tofauti data (binary, decimal, ishara, nambari ngumu, matrices, nk), lakini ni vigumu sana kupanga data hii katika safu, meza, maandiko, dodoso, makabati ya kufungua, nk. Kuna anuwai ya kazi na taratibu za kawaida. Imetengenezwa katika lugha ya PL/I mfumo wa mafanikio shughuli zinazodhibiti michakato yote ya pembejeo, pato na ubadilishanaji wa habari kati ya vifaa kuu na uhifadhi. Vipengele hivi vyote vinavutia msongamano mkubwa lugha. Pia mtu anapaswa kukumbuka hasara: maelezo ya lugha hayaridhishi, haijarasimishwa.

PL/I ni lugha ya programu yenye madhumuni mengi inayokusudiwa sio tu kwa programu za kiuchumi na kisayansi na kiufundi, lakini pia kwa kazi ya programu kwa wakati halisi na kuunda mifumo ya programu.

Moja ya kuu malengo wakati wa kukuza lugha, lengo lilikuwa kufikia modularity, i.e. uwezo wa kutumia programu kuu tayari kutangaza programu kama moduli tofauti bila kutangaza tena. Uhitaji wa kuhakikisha unyenyekevu mkubwa iwezekanavyo na urahisi wa kuandika programu ulizingatiwa. Wakati huo huo, hitaji la kuchora michoro ya jumla na ya kina ya programu bado inabaki, lakini kwa uzoefu unaofaa wa programu katika lugha ya PL/I, unaweza kuzuia kazi kubwa na ya kuchosha inayohusishwa na kuandika programu katika lugha ya mashine.

Katika lugha ya PL/I, kila kifafanuzi cha kutofautisha, kila kiongezi-kijenzi kinachofafanua na kila vipimo hupewa "tafsiri chaguo-msingi (kanuni). Hii ina maana kwamba popote ambapo lugha hutoa vipengele kadhaa na mtayarishaji programu hajabainisha yoyote, mkusanyaji hutumia "tafsiri chaguomsingi," yaani, inachukua baadhi ya vipengele vilivyotolewa katika lugha kwa kesi hii. Kwa hivyo, uwezo unaoonyeshwa kwa kila ujenzi katika lugha ni ule ambao mpangaji programu atahitaji zaidi.

Programu katika lugha ya PL/I zimeandikwa kwa njia ya bure; Mpangaji programu mwenyewe anaweza kukuza aina za programu za kurekodi anazohitaji. Wakati huo huo, upatikanaji wa njia zote za mfumo wa kompyuta hutolewa.

Taarifa za programu iliyoandikwa katika lugha ya PL/I zimeunganishwa kuwa "vizuizi". Vitalu hufanya kazi muhimu: Wanafafanua upeo wa vigezo na majina mengine, ili jina moja katika vitalu tofauti inaweza kutumika kwa madhumuni tofauti; wanakuruhusu kutenga seli za kumbukumbu kwa vigeuzo tu kwa muda wa utekelezaji wa kizuizi fulani na kuwaachilia kwa matumizi kwa madhumuni mengine wakati kizuizi kinaacha kufanya kazi.

RPG. Lugha ya RPG imeundwa kuhariri upangaji wa kazi na usindikaji wa habari za kiuchumi. Yaliyomo katika kazi hizi ni mdogo kwa michakato ifuatayo: kutunza faili (yaani, kupanga, kuhifadhi, kurekebisha na kusasisha), kupanga faili, kuandaa na kuchapisha hati mbalimbali za uhasibu, kama vile orodha, taarifa, majedwali, muhtasari, ripoti, n.k. Kwa kawaida, mahesabu huchukua sehemu ndogo jumla ya kiasi cha kutatua matatizo. Wakati wa kutatua shida kama hizo, ni rahisi kutumia RPG, haswa katika hatua ya kuandaa na kutoa ripoti. Katika kesi hii, inachukuliwa kuwa faili za uingizaji zilizotumiwa kuandaa ripoti ziliundwa na kupangwa kwa kutumia njia nyingine.

RPG hukuruhusu kufanya mahesabu (kwa kawaida ni rahisi na ya kawaida) kwenye data ya kuingiza, kutoa ripoti na kuichapisha. Data ya ingizo inaweza kuingizwa kutoka kwa kadi, mkanda wa sumaku, au vifaa vya kumbukumbu vya ufikiaji wa moja kwa moja. Mbali na kuunda ripoti, RPG inakuwezesha kusahihisha na kusasisha faili za uingizaji, na pia kuunda faili mpya. RPG ina zana zinazokuruhusu kufanya shughuli na meza (kwa mfano, kutafuta kipengee cha meza kinachohitajika na kuonyesha jedwali), na vile vile zana za kupanga unganisho la programu ya RPG na programu zilizoandikwa kwa lugha zingine. kutumika kutatua tatizo sawa.

Kipengele cha lugha ni kwamba mpangaji programu sio lazima aeleze mlolongo wa shughuli za kutatua shida (algorithm ya shida), lakini lazima aeleze tu kwenye fomu maalum data ya pembejeo iliyotumiwa kuunda ripoti, mahesabu yaliyofanywa kwenye data hii. , na muundo wa ripoti.

Kulingana na habari hii, mtafsiri wa RPG hutoa programu ya kufanya kazi, na kisha programu iliyoundwa inachakata faili za pembejeo na kuchapisha ripoti inayohitajika.

Kutayarisha ripoti kwa kutumia RPG kunajumuisha hatua kuu zifuatazo: kufafanua data ya kazi na jinsi ya kuichakata; kuandaa mpango wa awali; utoboaji wa programu ya asili; kupata programu ya kazi; utekelezaji wa programu ya kazi.

Kabla ya kuandika mpango wa kazi iliyopo, ni muhimu kufanya uchambuzi wake. Inahitajika kuamua data ya pembejeo, muundo na aina ya rekodi za data ya pembejeo, sehemu za rekodi zinazotumiwa na msimamo wao, jinsi data inavyochakatwa, nambari na aina ya jumla ya kuhesabiwa, muundo wa ripoti iliyochapishwa na data zingine za pato.

Mara data ya pembejeo na matokeo ya kazi na njia ya kuzichakata zimeanzishwa, ni muhimu kuelezea data hizi kwenye fomu za RPG zinazofaa. Kuna aina kadhaa za fomu za RPG, ambayo kila moja imeundwa kurekodi habari maalum. Fomu za maelezo ya data ya pembejeo huorodhesha faili zote za ingizo, eleza muundo na vipengele bainifu vya aina zote za rekodi katika kila faili na eneo la sehemu zinazotumiwa katika rekodi. Fomu ya hesabu inaonyesha ni usindikaji gani wa data ya pembejeo unahitaji kufanywa. Fomu ya Maelezo ya Pato inaeleza umbizo la ripoti inayohitajika na faili zingine za towe. Kwenye fomu ya maelezo ya faili na fomu Taarifa za ziada sifa za faili zinazotumiwa katika programu (pembejeo, pato, meza, nk) zinaonyeshwa. Programu ya awali ni habari iliyoonyeshwa kwenye fomu za RPG za kutatua shida fulani.

Baada ya kuandika programu kwenye fomu zinazofaa, maandishi ya programu yanapigwa kwenye kadi.

Ili kupata programu ya kufanya kazi, kwanza unahitaji kutafsiri programu ya chanzo. Ili kufanya hivyo, kadi zingine za udhibiti huongezwa kwenye kadi za programu za chanzo, kama vile kadi ya udhibiti Kadi za mtafsiri na mdhibiti wa RG1G - USIMAMIZI WA KAZI, muhimu kwa uendeshaji wa mtafsiri wa RPG. Baada ya tafsiri, moduli inayotokana inaweza kuhaririwa kwa kutumia EDITOR. Kama matokeo ya uhariri, programu (moduli ya mzigo) tayari kwa utekelezaji inapatikana, ambayo inaitwa programu ya kufanya kazi. Kukusanya na kuhariri ni muhimu ili kutoa ripoti inayotakiwa.

Programu ya kufanya kazi inaweza kufanywa mara baada ya utangazaji na uhariri au wakati mwingine wowote. Programu ya mfanyakazi inasoma faili za pembejeo za utayarishaji, huzichakata na matokeo yake hutoa ripoti na faili zingine za pato.

ALGAMS. Lugha ya algoriti ya ALGAMS inalenga mashine za nguvu za kati; ilitokana na kikundi kidogo cha lugha ya ALGOL-60.

Tatizo muhimu ambalo linatatuliwa katika ALGAMS ni kuanzishwa kwa taratibu za pembejeo-pato. ALGAMS imepanua seti ya vitendakazi vya kawaida; inawezekana pia kutumia subroutines za maktaba. ALGAMS ni pamoja na zana zinazokuruhusu kuonyesha mgawanyiko unaowezekana wa programu, kinachojulikana kama vitambulisho vya sehemu, pamoja na zana zinazofanya iwezekane kutumia kumbukumbu ya buffer ya kompyuta kwa ufanisi kwa kuelezea baadhi ya safu zilizo na vitambulisho maalum.

Taarifa ya ingizo ina kitambulisho cha INPUT kikifuatwa na orodha ya vigezo halisi, iliyoambatanishwa kwenye mabano. Kigezo cha kwanza kinabainisha nambari ya kituo ambacho data huingizwa, vigezo halisi vilivyobaki ni vigeuzo rahisi, vitambulishi vya safu au vigeu vilivyoorodheshwa.

Wakati wa kuingiza maandishi kwa vipengele vya safu mfululizo kuanzia kitu maalum pembejeo hupewa maadili kamili yanayolingana na herufi zinazofuatana za mfuatano wa pembejeo kwa maana ya utaratibu=TEXT. Utaratibu = TEXT inafafanuliwa kama ifuatavyo:<оператор текст>::=MAANDIKO (<строка>, <переменная с индексами>).

Kitambulishi cha utaratibu wa kuingiza ni neno OUTPUT. Opereta ana aina nne: opereta namba, opereta boolean, opereta maandishi, na opereta mpangilio. Taarifa ya matokeo inajumuisha kitambulisho cha OUTPUT kikifuatwa na orodha ya vigezo halisi, iliyoambatanishwa kwenye mabano. Parameta halisi ya kwanza ya utaratibu inataja nambari ya kituo cha pato, parameta ya pili inataja muundo wa data ya pato, na wengine wote hutaja vitu vya pato. Kuna zana za kuhariri wakati wa kuchapisha habari.

BASIE K. Jina la lugha linatokana na maneno ya Kiingereza Beginners all Purpose Symbolic Instructioncode. Imepata umaarufu mkubwa kutokana na unyenyekevu wake, urahisi wa kujifunza na fursa kubwa kwa ajili ya kutatua matatizo mbalimbali. Katika kompyuta ndogo nyingi lugha hii inachukuliwa kuwa lugha kuu inayozungumzwa. Lugha ya MSINGI ni lugha ya programu. Ni rahisi kwa kutatua matatizo madogo ya kisayansi na kiufundi, kwa suala la idadi ya shughuli zilizofanywa na kiasi cha pembejeo na data inayotokana. Sifa muhimu zaidi ya lugha ni kwamba inabadilishwa kwa utekelezaji wa hatua kwa hatua. Hii ina maana kwamba baada ya kila mabadiliko katika maandishi ya chanzo ya mpango wa BASIC, haiwezekani kutafsiri upya mpango mzima, lakini ni wale tu wa taarifa zake ambazo zimebadilishwa. Uwezekano wa utekelezaji wa hatua kwa hatua wa lugha ya BASIC inakuwezesha kupunguza gharama ya muda wa kompyuta kwa ajili ya kutafsiri upya. Hii, kwa upande wake, inakuwezesha kuharakisha mzunguko wa kurekebisha kiasi kwamba inakuwa vyema kurekebisha programu za BASIC katika hali ya mazungumzo.

Mbali na uwezo wa kukusanya programu kubwa zinazojumuisha waendeshaji wa lugha ya BASIC, kinachojulikana kama amri za moja kwa moja hutolewa, yaani, zile zinazotekelezwa mara baada ya kuingizwa kutoka kwa console ya programu (kutoka kwa teletype). Katika hali ya amri ya moja kwa moja, sio tu maagizo ya kiutawala kama vile RUN - anza utekelezaji, ORODHA - chapisha maandishi, SAVE - hifadhi maandishi ya programu kwenye maktaba, BYE - kumaliza kipindi cha kazi kinaweza kutumika; opereta yoyote ya BASIC aliingia bila nambari ya serial, kutekelezwa katika hali ya amri ya moja kwa moja. Hii inaruhusu, haswa, maadili ya anuwai kuchapishwa na kubadilishwa wakati wowote wakati wa utekelezaji wa programu.

Neno la kiutendaji Kitendo cha kutendwa

CHAPISHA Chapisha maandishi ya ujumbe yaliyoambatanishwa katika nukuu au thamani usemi wa hesabu(baada ya kuhesabu hapo awali), au maadili ya anuwai

INPUT Ingiza nambari kutoka kwa kiweko cha kitengeneza programu na uzitume kwa vigeu vilivyobainishwa

HEBU Tupe thamani ya kutofautiana maneno

NENDA KWA Nenda kwa utekelezaji wa opereta na nambari uliyopewa

IKIWA Ikiwa hali iliyoainishwa imefikiwa, basi hatua iliyoainishwa katika aliyepewa operator, vinginevyo - nenda kwa taarifa inayofuata

Data ya DATA; kauli hii haijatekelezwa. Inaelezea kizuizi cha data ya kurekebisha (nambari). Mkusanyiko wa vizuizi vya data ya utatuzi huunda safu ya data ya utatuzi

MWISHO Mwisho wa programu

Kwa hivyo, mpango wa ujumuishaji wa hatua kwa hatua pamoja na hali ya amri ya moja kwa moja hukuruhusu kurekebisha kwa ufanisi programu za BASIC katika hali ya mazungumzo.

Mpango wa BASIC una taarifa, ambayo kila moja huanza na neno la utendaji. Neno la huduma huamua aina ya operator na asili ya vitendo vilivyofanywa wakati wa utekelezaji wake.

Wakati wa kutatua matatizo mengi, ni muhimu kuwasilisha data kwa namna ya meza. Kwa kutumia uwezo wa baadhi ya waendeshaji lugha ya BASIC, unaweza kuzalisha majedwali katika miundo mbalimbali.


6.1 Programu ya ACS Programu ya ACS inaeleweka kama seti ya tofauti mbinu za hisabati, mifano, algorithms na vifurushi vya programu vinavyohakikisha utendakazi wa mfumo wa kudhibiti kiotomatiki kwa mujibu wa madhumuni yaliyokusudiwa. Neno programu kwa ajili ya mifumo ya udhibiti otomatiki inarejelea hisabati, lugha na programu ya mifumo ya udhibiti otomatiki. Kipengele cha programu ya mfumo wa kudhibiti otomatiki ni: -kuongezeka kwa gharama ya jamaa ya programu ikilinganishwa na tata ya njia za kiufundi (CTS) ya mfumo wa kudhibiti moja kwa moja; -uainishaji wa busara (muunganisho) wa programu ya maombi; -matumizi mapana ya PPP, casings za kawaida, nk.


Usaidizi wa hisabati kwa mifumo ya udhibiti wa kiotomatiki Msaada wa hisabati (MS) unaweza kugawanywa katika sehemu tatu: programu ya kompyuta (au ya ndani); programu maalum ya hisabati (au nje); teleprocessing programu ya Ndani MO inajumuisha mifumo ya uendeshaji (MS DOS), mifumo ya programu na vipimo (programu za kuangalia uendeshaji sahihi wa vifaa vya kompyuta),



Programu ya ACS Mfumo wa Uendeshaji (OS) - seti ya programu zinazodhibiti mchakato wa kutatua matatizo. Upakiaji bora wa nodi zote za kompyuta na vifaa vya nje ndio kazi kuu ya OS. OS inajumuisha idadi ya programu, kuu ambazo ni: dispatcher, msimamizi, na programu za matumizi. Dispatcher ni programu ambayo hutoa hali fulani ya uendeshaji wa kompyuta. Msimamizi ni programu ambayo inahakikisha operesheni iliyotolewa kwa mashine na opereta wa kibinadamu ndani ya mfumo wa hali iliyoanzishwa kwa ajili yake. Huduma ni pamoja na programu za kuingiza data ya chanzo; mipango ya kuhariri na kuonyesha matokeo; programu za mawasiliano kati ya OS na opereta wa binadamu, nk OS zinajulikana kulingana na kusudi lao lililokusudiwa kuwa: zile za jumla za kutatua shida nyingi na shida. Kulingana na shirika la kutatua matatizo kwenye kompyuta, njia zifuatazo za uendeshaji za OS zinajulikana: mtu binafsi, kundi, multiprogramming, kugawana wakati.


Katika hali ya mtu binafsi, kompyuta ni ya kudumu au ya muda kwa mtumiaji mmoja. Usindikaji wa Kundi inadhani kuwa mtumiaji hana ufikiaji wa moja kwa moja kwa kompyuta. Kazi zilizoandaliwa na yeye kwa namna ya programu na data ya chanzo hupakiwa na operator kwenye kompyuta na kutatuliwa kwa makundi. Multiprogramming inahusisha uwezo wa kutatua wakati huo huo kazi kadhaa kwa kutumia programu tofauti, kwa kuzingatia kipaumbele. Katika kesi hii, kazi moja inatatuliwa kwa kila wakati wa wakati. Ikiwa, wakati wa kutatua tatizo, inakuwa muhimu kutatua nyingine na zaidi kipaumbele cha juu, basi suluhisho la tatizo linaingiliwa, tatizo la pili linatatuliwa, baada ya ufumbuzi wake tatizo la kwanza linaendelea kutatuliwa kutoka mahali ambapo kuacha ilitokea, nk. Hali ya kushiriki wakati inahusisha kutatua kazi kadhaa kwa wakati mmoja.


Programu ya ACS. Malengo makuu ya OS ni: kuongeza utendaji wa mifumo ya kompyuta (CS) kwa kusindika mkondo wa pembejeo unaoendelea wa kazi na kugawana rasilimali za CS na kazi zinazoendesha wakati huo huo kwenye OS (athari ya multiprogramming); kupanga ndege kwa mujibu wa vipaumbele vya kazi za mtu binafsi, kutunza kumbukumbu na ufuatiliaji wa matumizi ya rasilimali; kutoa waandaaji wa programu zana za kukuza na kurekebisha programu; kumpa mwendeshaji njia za kudhibiti ndege.


Programu ya ACS Mfumo wa programu umeundwa kuhariri mchakato wa kazi za programu; ina watafsiri wa lugha za algorithmic za viwango na aina mbalimbali na programu za huduma. Mfumo wa mipango ya matumizi (vipimo) imeundwa kufuatilia utendaji sahihi wa ndege, kuchunguza makosa na kuchambua aina na sababu za kushindwa. Maalum (ya nje) MO inajumuisha PPP, programu za kazi maalum za mifumo ya udhibiti wa kiotomatiki, na programu ya utumaji wa mfumo. PPP ni vifurushi kamili vya programu vinavyolenga kutatua aina fulani ya matatizo.


Usaidizi wa hisabati kwa mifumo ya udhibiti wa kiotomatiki Programu za kazi maalum za mifumo ya udhibiti wa kiotomatiki zinaweza kugawanywa katika madarasa 3: mipango ya kawaida kwa tasnia zote (sekta, usafirishaji, biashara, nk); mipango ya kawaida kwa makampuni ya biashara ya sekta ya anga; mipango maalum kwa kila biashara (ARZ, chama cha uzalishaji wa anga, nk). Kazi za darasa la 1 ni pamoja na kazi zifuatazo: (malipo, uhasibu wa wafanyikazi, uhasibu wa hesabu, n.k.). Ya pili inajumuisha kazi za udhibiti wa kupeleka (hesabu ya njia za uendeshaji wa vifaa, hesabu ya pato la gari, nk). Ya tatu inajumuisha kazi maalum za ukarabati wa ndege (uzalishaji wa vipuri wakati wa matengenezo, maandalizi ya ndege kwa ndege, nk). Idadi kubwa ya programu zilizo na madhumuni na maana tofauti zinahitaji shirika lao katika mfumo mzima, na hii inafanywa kwa kutumia programu ya kusambaza mfumo.


MO imejengwa kwa msingi wa kuandika algoriti katika madarasa ya matatizo na mbinu za kuunganisha za kutatua matatizo yanayohusiana. Njia hii inafanya uwezekano wa kupunguza gharama ya kujifunza mashine, na pia kuunda mifano ya umoja ya kutatua madarasa mbalimbali ya matatizo. Darasa la kwanza la kazi ni pamoja na kazi za msingi za uhasibu (wingi) (kurudia kwa makazi na waliojiandikisha - mamilioni kwa mwaka, mahesabu ya malipo - mamia ya maelfu kwa mwaka, nk). Mifano ya kazi za msingi za uhasibu: uhasibu wa kila siku, siku kumi, kila mwezi na mwaka wa kupokea na matumizi ya mafuta na mafuta na mashirika ya ndege, vitengo, nk; kila siku, kila wiki, saa za ndege za kila mwezi; uhasibu na uchambuzi wa kushindwa kwa vifaa vya anga; harakati na uhasibu wa hesabu rasilimali za nyenzo na nk.


Uhasibu wa msingi hukuruhusu kukusanya idadi kubwa ya habari njiani, ujanibishaji unaofuata ambao utakuruhusu kupata data kamili ya takwimu muhimu kwa kufanya maamuzi. Kazi hizi huunda darasa la kazi za uhasibu na takwimu, ambazo pia zinajumuisha kazi za kupanga udhibiti. Tabia ya hisabati ya matatizo haya ni idadi kubwa ya shughuli za mantiki na idadi ndogo ya rahisi. shughuli za hisabati. Miongoni mwa kazi za darasa hili zinaweza kuzingatiwa: mkusanyiko wa aina zote za takwimu na taarifa za fedha; hesabu ya gharama ya bidhaa; mahesabu ya mahitaji ya mafuta na mafuta, nk. Kundi kubwa la wale walioorodheshwa ni kazi za uhasibu zinazojulikana na idadi kubwa ya kuongeza, kutoa, shughuli za mantiki (kupanga, kuweka vikundi, kulinganisha) na uundaji wa meza za fomu fulani. Programu ya ACS


Muundo wa hisabati hutumiwa sana katika madarasa matatu tofauti ya kimsingi ya shida: hesabu ngumu zisizo za kupita kiasi, utabiri na uboreshaji. Katika mfumo wa udhibiti wa kiotomatiki, mtu huhifadhi kazi za kufanya maamuzi kulingana na data iliyotolewa na mfumo wa kudhibiti otomatiki, uchunguzi wa moja kwa moja wa mchakato unaodhibitiwa (kitu) (udhibiti), ukuzaji na uundaji wa sheria zinazoamua (vigezo, viwango, nk). viwango vya kikomo vya kiasi kilichodhibitiwa), uboreshaji wa usimamizi na fomu zake, uchambuzi wa matokeo ya uendeshaji wa kompyuta na maandalizi ya hatua za kuboresha uendeshaji wa mfumo.


6.3 Lugha za programu za kuelezea kazi katika mifumo ya udhibiti wa kiotomatiki ni lugha za kiwango cha juu (yaani, lugha zisizo za mashine), ambazo zimekuwa aina ya kuunganisha kati ya wanadamu na lugha ya mashine ya kompyuta. Lugha za kiwango cha juu hufanya kazi kupitia programu za utafsiri ambazo huanzisha " chanzo" (mseto wa maneno ya Kiingereza na misemo ya hisabati ambayo inasomwa na mashine), na hatimaye husababisha kompyuta kutekeleza amri zinazofanana ambazo hutolewa kwa lugha ya mashine. Kuna aina mbili kuu za wafasiri: wakalimani, ambao huchambua na kuangalia msimbo wa chanzo katika hatua moja, na wakusanyaji , ambao huchanganua msimbo wa chanzo ili kutoa maandishi ya programu ya lugha ya mashine ambayo hutekelezwa kando. Wakalimani Faida moja inayotajwa mara nyingi ya utekelezaji wa mkalimani ni kwamba inaruhusu "hali ya papo hapo." Hali ya papo hapo hukuruhusu kusema. kompyuta kufanya kazi kama PRINT *3/ 2.1 na inakuletea jibu mara tu unapobofya INGIA ufunguo(hii inaruhusu kompyuta ya $3,000 kutumika kama kikokotoo cha $10). Kwa kuongeza, wakalimani wana sifa maalum ambazo hurahisisha utatuzi. Unaweza, kwa mfano, kukatiza uchakataji wa programu ya mkalimani, kuonyesha maudhui ya vigeu fulani, kuruka programu, na kisha kuendelea na utekelezaji. Wakusanyaji Mkusanyaji ni mfasiri wa maandishi hadi lugha ya mashine ambayo inasomwa. maandishi asilia. Huitathmini kulingana na muundo wa kisintaksia wa lugha na kuitafsiri katika lugha ya mashine. Kwa maneno mengine, mkusanyaji haitekelezi programu, huwajenga. Wakalimani hawawezi kutengwa na programu wanazoendesha; watunzi hufanya kazi yao na kuondoka kwenye eneo la tukio. Unapofanya kazi na lugha iliyokusanywa kama vile Turbo BASIC, utaona ni muhimu kufikiria programu zako kulingana na awamu mbili kuu za maisha yao: kipindi cha utayarishaji na kipindi cha utekelezaji.


2. UAINISHAJI WA LUGHA ZA KUPANGA 2.1. Lugha zinazoelekezwa na mashine Lugha zinazoelekezwa na mashine ni lugha ambazo seti za waendeshaji na njia za kuona hutegemea sana sifa za kompyuta (lugha ya ndani, muundo wa kumbukumbu, n.k.). Lugha zinazoelekezwa na mashine hukuruhusu kutumia uwezo na huduma zote za lugha zinazotegemea Mashine: - ubora wa juu programu zilizoundwa(ufupi na kasi ya utekelezaji); - uwezo wa kutumia rasilimali maalum za vifaa; - utabiri wa kanuni ya kitu na maagizo ya kumbukumbu; - kwa kuandaa programu zenye ufanisi ni muhimu kujua mfumo wa amri na vipengele vya uendeshaji wa kompyuta hii; - mchakato wa kazi kubwa wa kuandika programu (haswa katika lugha za mashine na JSC), ambayo inalindwa vibaya kutokana na makosa; - kasi ya chini ya programu; - kutowezekana kwa kutumia moja kwa moja programu zilizokusanywa katika lugha hizi kwenye aina zingine za kompyuta.


Lugha zinazoelekezwa na mashine zimegawanywa katika madarasa kulingana na kiwango cha programu kiotomatiki: Lugha ya mashine Kompyuta ina Lugha yake maalum ya Mashine (hapa inajulikana kama ML), imeagizwa kufanya shughuli maalum kwenye operesheni wanazofafanua, kwa hiyo ML ni lugha ya amri. Hata hivyo, baadhi ya familia za kompyuta (kwa mfano, ES Computers, IBM/370/, nk.) zina ME moja kwa kompyuta za nguvu tofauti. Amri ya yeyote kati yao hutoa taarifa kuhusu eneo la oparesheni na aina ya operesheni inayofanywa. Lugha za Alama za Usimbaji Lugha za Alama za Usimbaji (hapa zitajulikana kama SCL), kama vile ML, ni lugha za amri. Walakini, nambari za operesheni na anwani katika maagizo ya mashine, ambayo ni mlolongo wa binary (katika msimbo wa ndani) au octal (mara nyingi hutumika wakati wa kuandika programu) tarakimu, hubadilishwa katika YSC na alama (vitambulisho), fomu ya kuandika ambayo husaidia programu. kumbuka kwa urahisi zaidi maudhui ya kisemantiki ya operesheni. Hii inahakikisha kupunguzwa kwa idadi ya makosa wakati wa kuunda programu za Autocode. Pia kuna lugha zinazojumuisha uwezo wote wa YSC, kupitia utangulizi uliopanuliwa wa amri za jumla - zinaitwa Autocodes. Misimbo ya kiotomatiki iliyotengenezwa inaitwa Assemblers. Programu za huduma n.k., kama sheria, hutungwa katika lugha kama vile Bunge la Macro A lugha ambayo ni njia ya kuchukua nafasi ya mlolongo wa alama zinazoelezea utekelezaji wa vitendo vinavyohitajika vya kompyuta katika fomu iliyoshinikizwa zaidi - inayoitwa Macro (chombo cha uingizwaji). Kimsingi, Macro imeundwa kufupisha kiingilio cha programu asili. Sehemu ya programu inayowezesha macros kufanya kazi inaitwa kichakataji kikubwa.


2.2. Lugha zinazojitegemea kwa mashine Lugha zinazojitegemea kwa mashine ni njia ya kuelezea algoriti za kutatua matatizo na taarifa zinazopaswa kuchakatwa. Ni rahisi kutumia kwa anuwai ya watumiaji na hauitaji wao kujua maalum ya kupanga utendaji wa kompyuta na ndege. Lugha zinazofanana zinaitwa lugha za hali ya juu kupanga programu. Programu zilizojumuishwa katika lugha kama hizo ni mlolongo wa taarifa zilizoundwa kulingana na sheria za kutazama lugha (kazi, sehemu, vizuizi, n.k.). Waendeshaji lugha huelezea vitendo ambavyo mfumo lazima ufanye baada ya kutafsiri programu katika ML. Mtayarishaji wa programu alipata fursa ya kutoelezea kwa undani mchakato wa kompyuta kwa kiwango cha amri za mashine, na kuzingatia sifa kuu za algorithm Lugha zinazoelekezwa na shida Pamoja na upanuzi wa maeneo ya utumiaji wa teknolojia ya kompyuta, hitaji liliibuka kurasimisha uwasilishaji na suluhisho la madarasa mapya. ya matatizo. Ilihitajika kuunda lugha za programu ambazo, kwa kutumia nukuu na istilahi katika eneo hili, ingewezekana kuelezea algorithms ya suluhisho inayohitajika kwa shida zilizopewa; zikawa lugha zenye mwelekeo wa shida. Lugha hizi, zinazolenga kutatua matatizo mahususi, lazima zimpatie mpanga programu njia za kuunda tatizo kwa ufupi na kwa uwazi na kupata matokeo katika fomu inayohitajika. Kuna lugha nyingi za tatizo, kwa mfano: Fortran, Algol - lugha iliyoundwa kwa ajili ya kutatua matatizo ya hisabati; Simula, Slang - kwa mfano; Lisp, Snoball - kwa kufanya kazi na miundo ya orodha.


Lugha za Universal Lugha za Universal zimeundwa kwa anuwai ya kazi: biashara, kisayansi, modeli, n.k. Lugha ya kwanza ya ulimwengu wote ilitengenezwa na IBM, ambayo ikawa Pl/1 katika mfuatano wa lugha. Lugha ya pili yenye nguvu zaidi ulimwenguni inaitwa ALGOL-68. Inakuruhusu kufanya kazi na wahusika, nambari, nambari za uhakika na nambari zinazoelea. PL/1 ina mfumo uliotengenezwa wa waendeshaji wa kusimamia fomati na kufanya kazi na sehemu urefu wa kutofautiana, na data iliyopangwa ndani miundo tata, na kwa matumizi bora ya njia za mawasiliano. Lugha inazingatia uwezo wa kukatiza uliojumuishwa katika mashine nyingi na ina waendeshaji wanaofaa. Uwezekano wa utekelezaji sambamba wa sehemu za programu hutolewa. Programu katika Pl/1 zinakusanywa kwa kutumia taratibu za kiotomatiki. Lugha hutumia vipengele vingi vya Fortran, Algol, na Cobol. Walakini, hairuhusu tu ugawaji wa kumbukumbu, lakini pia kudhibitiwa na takwimu Lugha za Mazungumzo Kuibuka kwa uwezo mpya wa kiufundi kumeleta changamoto. watengeneza programu- kuunda programu ambayo inahakikisha mwingiliano wa kiutendaji kati ya mtu na kompyuta; zinaitwa lugha zinazoingiliana. Kazi hii ilifanywa katika pande mbili. Lugha maalum za udhibiti ziliundwa ili kutoa athari ya kufanya kazi katika ukamilishaji wa kazi, ambazo zilikusanywa katika lugha yoyote ambayo haijatengenezwa hapo awali (isiyo ya mazungumzo). Lugha pia zilitengenezwa ambazo, pamoja na madhumuni ya usimamizi, zinaweza kutoa maelezo ya algorithms ya kutatua shida.


Haja ya kuhakikisha mwingiliano wa haraka na mtumiaji unaohitajika kuhifadhi nakala ya programu chanzo kwenye kumbukumbu ya kompyuta hata baada ya kupokea programu ya kitu. kanuni za mashine. Wakati wa kufanya mabadiliko kwenye programu kwa kutumia lugha ya maingiliano, mfumo wa programu, kwa kutumia meza maalum, huanzisha uhusiano kati ya miundo ya chanzo na programu za kitu. Hii hukuruhusu kufanya mabadiliko yanayohitajika ya uhariri katika programu ya kitu. Mfano mmoja wa lugha za mazungumzo ni BASIC. BASIC hutumia nukuu sawa na misemo ya kawaida ya hisabati. Waendeshaji wengi ni matoleo rahisi ya waendeshaji wa Fortran. Kwa hivyo, lugha hii hukuruhusu kutatua shida nyingi. Lugha zisizo za kitaratibu huunda kundi la lugha zinazoelezea shirika la data iliyosindika kwa kutumia algorithms maalum (lugha za jedwali na jenereta za ripoti), na lugha za mawasiliano na mifumo ya uendeshaji. Kukuruhusu kuelezea kwa uwazi kazi zote mbili na vitendo muhimu vya kutatua, meza za uamuzi hufanya iwezekanavyo kuamua wazi ni hali gani lazima zifikiwe kabla ya kuendelea na hatua yoyote. Jedwali moja la uamuzi, linaloelezea hali fulani, lina michoro yote ya kuzuia ya utekelezaji wa algorithms ya ufumbuzi. Mbinu za Jedwali inasimamiwa kwa urahisi na wataalamu wa taaluma yoyote. Programu zilizoandikwa kwa lugha ya jedwali huelezea kwa urahisi hali ngumu zinazotokea wakati wa uchambuzi wa mfumo.

Programu ya ACS

Usaidizi wa hisabati ni muhimu kwa ajili ya kurasimisha michakato ya udhibiti (kwa lengo la kuwaweka otomatiki) na kutekeleza algorithms ya udhibiti kwenye kompyuta. Maelezo ya hisabati kwa ujumla ni pamoja na:

* maelezo rasmi ya vitu na michakato ya usimamizi;

* algorithms ya kutatua shida za udhibiti;

* programu ya kompyuta inayotumika katika ngazi zote za usimamizi.

Mchakato wa maelezo uliorasimishwa huturuhusu kupata maelezo ya jumla ya kitu cha kudhibiti na mchakato wa udhibiti katika mfumo wa miundo ya hisabati iliyorasimishwa. Kulingana na mifano hii, algorithms ya udhibiti hutengenezwa.

Udhibiti wa algorithms huamua mlolongo muhimu wa vitendo wakati wa udhibiti na kufanya iwezekanavyo kurasimisha maelezo ya mchakato wa udhibiti kwa madhumuni ya utekelezaji wake wa moja kwa moja. Algorithm ni msingi wa kuunda programu ya udhibiti wa kompyuta kwa kitu kinacholingana.

Programu ni muhimu kutekeleza algorithms ya udhibiti kwenye kompyuta maalum ambazo ni sehemu ya mfumo wa udhibiti wa otomatiki wa GPS. Chini ya udhibiti wa programu, mwingiliano wa kompyuta na wafanyakazi wa uendeshaji na vifaa huhakikishwa wakati wa mchakato wa usimamizi.

Kwa mfano, wakati wa kurekebisha moja kwa moja vigezo vya kitu kilichodhibitiwa, mfumo wa udhibiti hutekeleza kazi mdhibiti wa moja kwa moja:

x (t) = y z (t) - y (t);

U(t) = A(x(t)),

ambapo x(t) ni kosa la kitu cha kudhibiti; y z (t) - kuweka thamani parameter kudhibitiwa, y (t) - thamani ya sasa ya parameter kudhibitiwa; U (t) - hatua ya kudhibiti; A ni opereta kulingana na sheria ya udhibiti.

Kwa udhibiti wa kiotomatiki, inawezekana kutekeleza udhibiti wa sawia (P-control), udhibiti wa uwiano-unganishi (PI-control), udhibiti wa uwiano-integral-derivative (PID-control), udhibiti bora, udhibiti uliokithiri na udhibiti unaobadilika. Aina iliyochaguliwa ya udhibiti itatambuliwa na operator "A", kulingana na ambayo ukubwa wa hatua ya udhibiti imedhamiriwa na ukubwa wa kosa.

Algorithm ya jumla ambayo inatekeleza kazi ya udhibiti wa kiotomatiki wa parameta Y kwenye kompyuta imeonyeshwa kwenye Mtini. 206. Wakati kazi inapoanza, programu huanza kuweka muda na kupigia kura kitu cha kudhibiti. Kama matokeo ya kupigia kura kitu, thamani ya sasa ya parameta iliyodhibitiwa Y (t) imeingizwa.

Thamani ya sasa ya parameter iliyodhibitiwa inalinganishwa na ile iliyoainishwa na kutolingana (kosa) imedhamiriwa, kutoka kwa thamani ambayo thamani ya udhibiti inayohitajika imehesabiwa. Udhibiti huu unatokana na kompyuta na, kuathiri actuator ya kitu, hubadilisha parameter yake ya pato kama inavyotakiwa.

Algorithm iliyoelezwa inatekelezwa kwa namna ya programu ya kudhibiti kwa kompyuta. Katika kesi inayozingatiwa, kompyuta inaweza kuwa, kwa mfano, microcontroller inayoweza kupangwa. Katika kesi hii, programu inaweza kuandikwa katika lugha ya mkusanyiko wa microprocessor inayotumiwa katika microcontroller. Mpango huo hutafsiriwa katika maagizo ya mashine ya microprocessor, mlolongo ambao umeandikwa kwenye kumbukumbu ya kusoma tu (ROM) ya microcontroller.

Ukuzaji wa programu katika lugha za mashine na algorithmic inahitaji ushirikishwaji wa waandaaji wa programu maalum ili kutatua shida, ingawa wanateknolojia na wasimamizi wanaelewa vizuri shida ya usimamizi. Matokeo yake, kulikuwa na haja ya kuendeleza vile mifumo ya kiotomatiki kubuni programu ambayo inaweza kutumika na watumiaji ambao si wataalamu wa upangaji programu kwenye kompyuta.

Mifumo kama hiyo inazingatiwa kama zana ya kuunda programu ya kudhibiti mchakato kiotomatiki. Katika mifumo ya kisasa ya udhibiti wa mchakato otomatiki, mwingiliano kati ya opereta na mchakato wa kiteknolojia unafanywa kwa kutumia programu inayojulikana kama SCADA. Mfumo wa SCADA (Udhibiti wa Usimamizi na Mfumo wa Kupata Data) - mfumo wa ukusanyaji wa data na udhibiti wa uendeshaji wa utumaji. Mfumo wa SCADA hufanya kazi kuu zifuatazo:

· udhibiti wa vigezo na ukusanyaji wa data juu ya kudhibitiwa mchakato wa kiteknolojia;

· udhibiti wa mchakato, unaotekelezwa na waendeshaji kulingana na data na sheria zilizokusanywa (vigezo), utekelezaji ambao unahakikisha ufanisi na usalama unaohitajika wa mchakato.

Mfumo wa SCADA huweka kiotomatiki mkusanyiko wa habari kuhusu mchakato wa kiteknolojia, hutoa kiolesura cha waendeshaji, huhifadhi historia ya mchakato na hudhibiti mchakato kiotomatiki kwa kiwango kinachohitajika.

Mifumo ya ala ya SCADA ni zana ya kutengeneza programu ya kiwango cha juu kwa mifumo ya kiotomatiki ya kudhibiti mchakato. Mfumo wa SCADA mara nyingi una usaidizi wa ndani wa vifaa vya pembejeo / pato: vidhibiti vya kudhibiti, vitambuzi na vifaa vya kupimia, zinazozalishwa na makampuni yanayoongoza duniani kwa mifumo ya udhibiti na ukusanyaji wa taarifa. Mifumo ya SCADA ya ala ni bidhaa ya programu makampuni mbalimbali kuwa na mengi vipengele vya kawaida, na tofauti kubwa.