Treść książki

Przejdź do opcji czytnikaPrzejdź do nawigacjiPrzejdź do informacjiPrzejdź do stopki
2.Wprowadzeniedoprogramowania
Abystworzyćprogramkomputerowymającywykonywaćdanezadanie,musimywyspecy-
fikowaćdziałania,jakiekomputermusidlanaswykonać.Wiedzatabierzesięzanalizy
problemu,któraniekiedystanowinajtrudniejszyetapprocesutworzeniaoprogramowa-
nia.Gdywiadomojuż,ojakiedziałaniachodzi,trzebazapisaćjewtakiejpostaci,którą
komputer-toznaczyprocesor-potrafizrozumieć.Choćkażdyprocesormówiwswoim
własnymjęzyku,zwanymassemblyczyteżjęzykiemalbokodemmaszynowym,jeston
zbytprymitywny,byludziemogliwnimefektywniekodować.Zamiastniegopowstało
wtymceluwielewysokopoziomowychjęzykówkomputerowych.C++jestjednymznich.
Jestondobrzeznany,dysponujenajlepszymimożliwyminarzędziamiibibliotekamioraz
znaczącymwsparciemzestronyzgromadzonejwokółniegospołecznościposiadającejlata
doświadczeńwprogramowaniuwtymjęzyku.
C++posiadasetkiwłasności,któremożnanaróżnesposobywykorzystać,abyprzełożyć
naszeoczekiwanianaichoptymalnąreprezentacjęzrozumiałądlakomputera.Poznawanie
własnościC++jestinteresującymprzedsięwzięciem,alebywateżczasochłonne.Skupimy
sięwięcnawybranychobszarachC++,aletakich,którepozwoląnamnanapisaniebardzo
wieluprogramów.
RozdziałtenstanowiwprowadzeniedoprogramowaniawC++.Napoczątekomówimy
ekosystemysprzętuioprogramowania.Ściślejmówiąc,przedstawimymodeleobliczeniowe
stanowiącepodstawęumożliwiającązrozumienie,wjakisposóbdziałaoprogramowanie
inaczympolegaprocesjegotworzenia.
2.1.Modelsprzętowy
Komputerytowysocezintegrowane,aleiskomplikowanesystemy,składającesięzdziesiątek
chipów,zktórychkażdyskładasięztysięcytranzystorówitd.Modelowanie-czylitworzenie
modeli-toprocesupraszczaniarzeczywistościwceluuwydatnienianiektórychzjejnajważ-
niejszychwłasności,koniecznychdowyjaśnieniafragmentutejrzeczywistości.Rysunek2.1
przedstawiamodelobliczeniowysystemukomputerowegowyposażonegowwielordzeniowy
procesor,pamięćgłówną,chipset,atakżepewnąliczbępodłączonychdoniegourządzeń
zewnętrznych,takichjakklawiatura,monitor,dyskiczyurządzeniasieciowe.
Centralnaczęśćskładasięzprocesoraposiadającegopewnąliczbęrdzeni,które
samewsobiestanowiąniezależnejednostkiobliczeniowe.Najważniejszymmodułem