Treść książki

Przejdź do opcji czytnikaPrzejdź do nawigacjiPrzejdź do informacjiPrzejdź do stopki
1.Podstawyprogramowania
Oinnychsposobachopisualgorytmówpiszemywpodrozdziale2.1.
13
1.3.
Językiprogramowania
Chcącstworzyćprogramkomputerowyrealizującyokreślonezadanie,trzebaza-
pisaćalgorytmrozwiązaniategotypuzadania.Jednakżezapiszrozumiałydlaproce-
sorakomputerajestdlaczłowiekanieczytelny.Dlategoopracowanonarzędziazwane
językamiprogramowania,pozwalającezapisywaćwsposóbczytelnydlaczłowieka
kolejnepoleceniadlakomputera,tworząceprogramrealizującydanezadanie.Zapis
takinazywamyprogramemźródłowymlubkodemźródłowym.Musionzostać
przetłumaczonynapostaćakceptowanąprzezprocesor,którybędzietenprogram
wykonywał.Postaćnazywamyprogramemdocelowymlubkodemmaszynowym,
aplik,wktórymjestumieszczony,plikiemwykonywalnym(szerzejnatentemat
piszemywpodrozdziale1.5).Procestłumaczenianazywamykompilacjąalbointer−
pretacją(sątodwieróżnemetody),aprogram,którytłumaczeniewykonuje,kompi−
latoremalbointerpreterem0
Języki,wktórychzapisujemyprogramy,to:
Językwewnętrznyprocesora,zwanyinaczejjęzykiemmaszynowym.Jesttojedyna
postaćprogramuakceptowanaprzezprocesor.Poszczególnepolecenia(operacje)
dlaprocesorazapisywanezapomocąciągówzero-jedynkowych,będącychich
kodamibinarnymi(patrzlisting4).Przypominamy,żeprogramzapisanywtymję-
zykunazywamyprogramemdocelowymlubkodemmaszynowym.
Językisymboliczne,zwaneczęstojęzykamiwyższegopoziomu,zorientowane:
{
sprzętowo,
{
proceduralnie,
{
problemowo.
Językizorientowanesprzętowotoprzedewszystkimjęzykasemblera
(asembler).Jegocechąjestto,żejednejinstrukcjinapisanejwtymjęzykuodpowiada
jednainstrukcjamaszynowa(jednainstrukcjawjęzykuwewnętrznymprocesora).
Nazwyinstrukcjiwasemblerzezwykleskrótamiangielskichsłówokreślających
danąoperację.Skrótytezwanemnemonikami.Oczywiścieinstrukcjeasemblera,
jakoinstrukcjejęzykasymbolicznego,musząbyćprzetłumaczonenajęzykmaszy-
nowy.Wtymwypadkuprocestłumaczenianazywasięasemblacją,aprogramtłuma-
czącytoasembler.
Językiproceduralnezakładajązapisprogramujakociąguinstrukcjidowyko-
nania,przyczymzapistenpowinienbyćniezależnyodprocesora,którywykonuje
program(wystarczy,byistniałdoniegokompilator).Językiteuniwersalneimożna
jepodzielićnastrukturalneorazobiektowe.Pierwszeprzeznaczone,jaksama