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ćtę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)
dlaprocesorazapisywanesązapomocąciągówzero-jedynkowych,będącychich
kodamibinarnymi(patrzlisting4).Przypominamy,żeprogramzapisanywtymję-
zykunazywamyprogramemdocelowymlubkodemmaszynowym.
Językisymboliczne,zwaneczęstojęzykamiwyższegopoziomu,sązorientowane:
{
sprzętowo,
{
proceduralnie,
{
problemowo.
Językizorientowanesprzętowotoprzedewszystkimjęzykasemblera
(asembler).Jegocechąjestto,żejednejinstrukcjinapisanejwtymjęzykuodpowiada
jednainstrukcjamaszynowa(jednainstrukcjawjęzykuwewnętrznymprocesora).
Nazwyinstrukcjiwasemblerzesązwykleskrótamiangielskichsłówokreślających
danąoperację.Skrótytezwanesąmnemonikami.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ęzykitesąuniwersalneimożna
jepodzielićnastrukturalneorazobiektowe.Pierwszesąprzeznaczone,jaksama