Kompyuter programması

**Kompyuter programması** *([[Inglis tili|ingl]]. computer program)* − kompyuter orınlawı ushın programmalastırıw tilindegi kórsetpelerdiń izbe-izligi yamasa jıynaǵı. Bul programmalıq támiynat quramınıń biri bolıp, oǵan hújjetler hám basqa da materiallıq emes komponentler kiredi.

Adam oqıy alatuǵın *kompyuter programması* derek kodı dep ataladı. Derek kodın orınlaw ushın basqa kompyuter programmasın talap etedi, óytkeni kompyuterler tek ózleriniń tiykarǵı mashina kórsetpelerin orınlay aladı. Sonlıqtan derek kodı til ushın jazılǵan kompilyator arqalı mashina kórsetpelerine awdarıwǵa boladı. (Assembler tilindegi programmalar assembler járdemi menen awdarıladı.) Alınǵan fayl orınlanıwshı fayl dep ataladı. Yamasa derek kodı til ushın jazılǵan interpretator ishinde orınlanıwı múmkin.

Eger orınlanatuǵın fayl orınlaw ushın soralǵan bolsa, operacion sistema onı yadqa júkleydi hám procesti baslaydı. Oraylıq processor tez arada bul proceske ótedi, usılayınsha ol hárbir mashina kórsetpesin aladı, dekodlaydı, sonnan keyin orınlaydı.

Eger derek kodı orınlaw ushın soralsa, operacion sistema sáykes interpretatordı yadqa júkleydi hám procesti baslaydı. Sonnan keyin interpretator hárbir operatordı awdarıw hám orınlaw ushın derek kodın yadqa júkleydi. Derek kodın iske túsiriw, orınlanıwshı fayldı iske túsiriwge qaraǵanda ástenirek. Sonıń menen qatar, awdarmashı kompyuterde ornatılǵan bolıwı kerek.

## Kompyuter programmasına mısal
«Sálem, álem!» programması tildiń tiykarǵı sintaksisin súwretlew ushın qollanıladı. BASIC tiliniń sintaksisi (1964) tildi úyreniwdi ańsatlastırıw ushın aldınnan sheklengen. Mısalı, ózgeriwshilerdi paydalanbastan aldın járiyalanbaydı. Sonday-aq, ózgeriwshiler avtomat túrde nolge shekem inicializaciyalanadı Bunda sanlar dizimin ortasha esaplaw ushın Basic tilinde kompyuter programmasınıń mısalı berilgen:.
```basic
10 INPUT "Ortasha esap penen qansha san kerek?", A
20 FOR I = 1 TO A
30 INPUT "Sandı kirgiziń:", B
40 LET C = C + B
50 NEXT I
60 LET D = C/A
70 PRINT "Ortasha", D
80 END
```
Tiykarǵı kompyuter programmalastırıw mexanikasın úyrengennen keyin, úlken kompyuter sistemaların jaratıw ushın jáne de quramalı hám kúshli tiller bar.

## Tariyxı
Programmalıq támiynattı islep shıǵıwdaǵı jaqsılawlar kompyuter texnikasın jetilistiriwdiń nátiyjesi bolıp tabıladı. Apparatlıq támiynatlar tariyxınıń hárbir basqıshında kompyuter programmalastırıw wazıypası ádewir ózgerdi. 

### Analitikalıq mashina

1838-jılı Jakkardıń toqıma stanogı Charlz Bebbidj-di analitikalıq mashinanı jaratıwǵa ilhamlandırdı.
Esaplaw qurılmasınıń quramlı bólekleriniń atları toqıma sanaatınan alınǵan. Toqıma sanaatında iyirilgen jip dúkannan digirman ushın keltirildi. Qurılmanıń hárqaysısında 50 onlıq cifrdan ibarat 1000 sandı saqlaytuǵın yadtan ibarat «dúkan» bar edi. Dúkandaǵı nomerler qayta islew ushın «digirmanǵa» berildi. Ol perforaciyalanǵan kartalardıń eki toplamı arqalı programmalastırılǵan. Bir toplam operaciyanı basqardı, al ekinshisi ózgeriwshilerdi kirgizdi. Biraq mıńlaǵan tisli dóńgelekler menen vitesler heshqashan tolıq birge jumıs islemedi.

Ada Lavleys Bebbidj ushın analitikalıq mashinanıń anıqlamasın jaratıw ushın jumıs isledi (1843). Anıqlamada analitikalıq mashinanı paydalanıp Bernulli sanların esaplaw metodın tolıq sáwlelendiretuǵın G esletpesi bar. Bul jazbanı ayırım tariyxshılar dúnyadaǵı *birinshi kompyuter programması* retinde tán alǵan.

### Universal Tyuring mashinası

1936-jılı Alan Tyuring universal Tyuring mashinasın usındı, ol hárbir esaplawdı modellestiretuǵın teoriyalıq qurılma.
Bul sheksiz uzın oqıw/jazıw lentası bar sońǵı jaǵdaylı mashina. Qurılma algoritmdi orınlaw waqtında onıń quramın ózgertip, lentanı aldına hám artqa jıljıta aladı. Qurılma dáslepki jaǵdayda iske qosıladı, izbe-iz adımlardan ótedi hám toqtaw jaǵdayına ushıraǵanda toqtaydı. Házirgi kompyuterlerdiń barlıǵı Tyuring bolıp tabıladı.

### ENIAC

Elektron sanlı integrator hám kompyuter (ENIAC) *(ingl. Electronic Numerical Integrator And Computer)* 1943-jıl iyuldan 1945-jıldıń gúzi aralıǵında jaratılǵan. Bul sxemalardı jaratıw ushın 17 468 vakuumlıq trubkalardı paydalanǵan Tyuring-niń tolıq, ulıwma maqsetli kompyuteri edi. Tiykarında bul biriktirilgen Paskalinler seriyası edi. Onıń 40 birliginiń salmaǵı 30 tonna boldı, 1800 kvadrat fut (167 m2) maydandı iyeledi hám jumıs islemey turǵanda saatına 650 dollar (1940-jıllardıń valyutası menen) elektr quwatın tutınadı Onıń 20 bazalıq-10 akkumulyatorı boldı. ENIAC programmasın programmalastırıw eki ayǵa shekem sozıldı. Úsh funkcional kesteler dóńgeleklerde edi hám olardı belgilengen funkcional panellerge aylandırıw kerek edi. Funkcional kesteler platalarǵa awır qara kabellerdi qosıw arqalı funkcional panellerge qosıldı. Hárbir funkcional kestede 728 aylanatuǵın túyme bar edi. ENIAC programmasın programmalastırıw sonı menen qatar 3000 jalǵaǵıshtıń ayırımların ornatıwdı qamtıdı. Programmanı ońlawǵa bir hápte kerek edi.. Ol 1947-jıldan 1955-jılǵa shekem Aberdin sınaq maydanında jumıs isledi, vodorod bombasınıń parametrlerin esaplap, hawa rayın boljadı hám artilleriyalıq quraldı kózlew ushın atıs kestelerin dúzgen.

### Saqlanǵan programmalıq kompyuterler
Sımlardı qosıwdıń hám jalǵaǵıshlardı aylandırıwdıń ornına, saqlanǵan programma kompyuteri óz maǵlıwmatların yadqa júklegendey, óz kórsetpelerin de yadqa júkleydi. Nátiyjesinde kompyuterdi tez programmalastırıwǵa hám júdá joqarı tezlikte esaplawlardı orınlawǵa boladı. Presper Ekkert penen Djon Mauchli ENIAC-tı qurastırdı. Eki injener 1944-jıl fevralda jazılǵan úsh betlik jazbada saqlanǵan programma koncepciyasın engizdi. Keyinirek, 1944-jıl sentyabrde Djon fon Neyman ENIAC proektinde jumıs islep basladı. 1945-jılı 30-iyunda fon Neyman kompyuter strukturaların adam miyiniń strukturaları menen teńlestiretuǵın EDVAC tuwralı esabatınıń birinshi jobasın járiyaladı. Dizayn fon Neyman arxitekturası retinde belgili boldı Arxitektura 1949-jılı EDVAC hám EDSAC kompyuterleriniń konstrukciyalarında bir waqıtta qollanıldı..

IBM System/360 (1964) kompyuterler shańaraǵı bolıp, olardıń hárbiri birdey kórsetpeler toplamı arxitekturasına iye. Model 20 eń kishi hám eń arzan edi. Tutınıwshılar birdey ámeliy programmalıq támiynattı jańalap, saqlaw imkaniyatına iye boldı. Model 195 eń premium boldı. Hárbir System/360 modelinde multiprogrammalastırıw imkaniyatı bar edi− yadta birden bir neshe procesti ámelge asırdı. Bir process kirgiziw/shıǵarıwdı kútip turǵanda, ekinshisi esaplay aladı.

IBM hárbir model ushın PL/1 arqalı programmalastırıwdó rejelestirdi. COBOL, Fortran hám ALGOL baǵdarlamashılarınan ibarat komitet dúzildi. Maqseti hár tárepleme, qollanıwǵa ańsat, keńeytilgen hám Kobol menen Fortrandı almastıratuǵın tildi islep shıǵıw edi Nátiyjesinde kompilyaciyalawǵa kóp waqıt ketetuǵın úlken hám quramalı til payda boldı..

1970-jıllarǵa shekem shıǵarılǵan kompyuterlerde qol menen programmalastırıwǵa arnalǵan aldınǵı panelli jalǵaǵıshlar bar edi. Maǵlıwmat ushın kompyuter programması qaǵazǵa jazılǵan. Kórsetpede jaǵıw/óshiriw parametrleriniń konfiguraciyası arqalı usınıldı. Konfiguraciyanı ornatqannan keyin orınlaw túymesi basıldı. Sonnan keyin bul process qaytalandı. Kompyuter programmalarına qaǵaz lenta, perfokarta yamasa magnitli lenta arqalı avtomat túrde engizildi. Jetkerip beriwshi júklengennen keyin jalǵaǵıshlar arqalı baslaw adresi ornatılıp, orınlaw túymesi basıldı.

### Júdá keń kólemli integraciya

Programmalıq támiynattı islep shıǵıwdaǵı zárúr basqısh júdá úlken kólemli integraciya (VLSI) *(ingl. Very Large Scale Integration)* sxemasınıń jańalıǵı boldı (1964). Ekinshi dúnyajúzlik urıstan keyin trubkaǵa tiykarlanǵan texnologiya sxemalıq plataǵa ornatılǵan noqatlı kontaktli tranzistorlar menen (1947 j.) hám bipolyarlı tranzistorlar menen (1950-jıllardıń ayaǵında) almastırıldı. 1960-jılları aerokosmik sanaatı sxemalıq platanı, integral mikrosxema chipi menen almastırdı.

Robert Noys, Fairchild Semiconductor (1957) hám Intel (1968) tiykarın salıwshı, dala tranzistorlar óndirisin jaqsılaw ushın texnologiyalıq jetilistiriwge eristi (1963). Maqseti − yarım ótkizgishli birikpeniń qarsılıǵı menen ótkiziwsheńligin ózgertiw.  Birinshiden, tábiyiy silikat minerallar Siemens procesiniń járdemi menen polisillikon tayaqshalarına aylanadı. Sonnan keyin Choxralski procesi tayaqlardı monokristal kremniyge, bul kristalına aylandıradı. Soń kristaldı vafel substrattı qáliplestiriw ushın juqalap kesedi. Fotolitografiyanıń planar procesi bir polyarlı tranzistorlardı, kondensatorlardı, diodlardı hám rezistorlardı metal-oksid-yarım ótkizgish (MOS) tranzistorlarınıń matricasın dúziw ushın plastinaǵa biriktiredi. MOS tranzistorı integral mikrosxemalardaǵı tiykarǵı komponent bolıp tabıladı.

Dáslebinde integral mikrosxemalar islep shıǵarıw procesinde óz funkciyaların ornatqan. 1960-jılları elektr aǵımın basqarıw tek oqıwǵa arnalǵan yadtıń (ROM) matricasın programmalastırıwǵa ótti. Matrica saqlawshılar eki ólshemli massivke uqsadı. Kórsetpelerdi matricaǵa jaylastırıw procesi kereksiz jalǵaǵıshlardı óshiriw boldı.  Kóplegen jalǵanıwlar boldı, mikroprogramma jaratıwshıları janıwdı baqlaw ushın basqa chipke kompyuter programmasın jazdı Texnologiya programmalastırılatuǵın ROM retinde belgili boldı. 1971-jılı Intel kompyuter programmasın chipke ornatıp, onı Intel 4004 mikroprocessorı dep atadı..

Mikroprocessor hám oraylıq processor (CPU) terminleri endi bir-biriniń ornına qollanıladı. Degen menen, processorlar mikroprocessorlardan burın payda boldı. Mısalı, IBM System/360 (1964) qurılmasında keramikalıq tiykarlarda diskret komponentlerdi óz ishine alǵan platalardan tayarlanǵan processor boldı.

### x86 seriyası

1978-jılı Intel 8080-di Intel 8086-ǵa jańalaǵannan soń zamanagóy programmalıq támiynat islep shıǵıw ortalıǵı baslandı. Intel arzanıraq Intel 8088-di islep shıǵarıw ushın Intel 8086-nı ápiwayılastırdı. IBM jeke kompyuterler bazarına kirgende Intel 8088-di qabılladı (1981). Tutınıwshınıń jeke kompyuterlerge degen talabı artqan sayın Intel mikroprocessorınıń rawajlanıwı da ósti. Rawajlanıwdıń izbe-izligi x86 seriyası retinde belgili. x86 assembler tili keri úylesimli mashina kórsetpeleriniń toparı bolıp tabıladı. Burınǵı mikroprocessorlarda jaratılǵan mashina kórsetpeleri mikroprocessorlardı jańalaw gezinde saqlandı. Bul tutınıwshılarǵa jańa ámeliy programmalıq támiynattı satıp almay-aq jańa kompyuterlerdi satıp alıwǵa imkaniyat berdi. Kórsetpelerdiń tiykarǵı kategoriyaları:

* Tosınnan kiriw yadındaǵı sanlar menen qatarlardı ornatıwǵa hám olarǵa kiriwge arnalǵan yad kórsetpeleri.
* Pútin sanlar menen dáslepki arifmetikalıq ámellerdi orınlawǵa arnalǵan pútin arifmetikalıq logikalıq birlik (ALU) kórsetpeleri.
* Haqıyqıy sanlarǵa dáslepki arifmetikalıq ámellerdi orınlaw ushın ózgermeli noqat ALU kórsetpeleri.
* Yadtı hám funkciyalar menen interfeysti ajıratıw ushın kerekli sózlerdi ısırıw hám shıǵarıw ushın qońırawlar stek kórsetpeleri. 
* Maǵlıwmatlar massivinde birdey algoritmdi orınlaw ushın bir neshe processorlar bar bolǵanda tezlikti arttırıw ushın bir kórsetpe, bir neshe maǵlıwmatlar (SIMD) kórsetpeleri.

### Programmalastırıw ortalıǵın ózgertiw

VLSI sxemaları programmalastırıw ortalıǵına kompyuter terminalınan (1990-jıllarǵa shekem) grafikalıq paydalanıwshı interfeysi (GUI) kompyuterine ótiwge imkaniyat berdi. Kompyuter terminalları baǵdarlamashılardı buyrıq qatarı ortalıǵında jumıs isleytuǵın qabıq penen shekleydi. 1970-jılları tekstke tiykarlanǵan paydalanıwshı interfeysi arqalı tolıq ekranlı derek kodın redaktorlaw múmkin boldı. Bar texnologiyaǵa qaramastan, maqset programmalastırıw tilinde programmalastırıw bolıp tabıladı. 

## Derekler