уређај опште намене, који врши аритметичке и логичке операције From Wikipedia, the free encyclopedia
Рачунар или компјутер (енгл. , од лат. ): сабирати, рачунати), сложени уређај који служи за извршавање математичких операција или контролних операција које се могу изразити у нумеричком или логичком облику. Рачунари су састављени од компонената које обављају једноставније, јасно одређене функције. Комплексна интеракција тих компонената омогућава рачунар да обрађује информације.
Конвенционално, рачунар се састоји од процесорског елемента, типично централне процесорске јединице (), и неког вида меморије. Процесорски елемент изводи аритметичке и логичке операције, а секвенцирајућа и контролна јединица могу да промене редослед операција у одговору на сачувану информацију. Периферни уређаји омогућавају повраћај информације из спољашњих извора, те они извршавају записивање и читање.
Механички аналогни рачунари су почели да се појављују у првом веку и касније су коришћени у средњем веку за астрономске прорачуне. Током Другог светског рата, механички аналогни рачунари су коришћени за специјализоване војне намене. Током тог времена развијени су први електронски дигитални рачунари. Оригинално они су били величине велике собе, конзумирајући количину енергије једнаку количини неопходној за напајање неколико стотина модерних персоналних рачунара ().[1]
Способности модерних рачунара базираних на интегрисаним колима су милионима или милијардама пута веће од раних машина, и они заузимају малу део простора неопходног за смештај раних рачунара.[2] Једноставни рачунари су довољно мали да се сместе у мобилне уређаје, и мобилни рачунари се могу напајати малим батеријама. Лични рачунари у њиховим различитим облицима су иконе информационог доба и они су оно што већина људи сматра „рачунарима“. Међутим, уграђени рачунари, присутни у многим уређајима од плејера до борбених авиона и од играчака до индустријских робота, су најбројнији.
Прва позната употреба речи „рачунар“ у енглеском језику долази из 1613. године из књиге зване „Скупљања младог човека” (енгл. -) енглеског писца Ричарда Брајтвајта: „Читао сам дела најистинитијег рачунара свих времена, и најбољег аритметичара који је икада дисао, и он своди твоје дане на мали број.” (енгл. ). У овој реченици, реч се односи на особу која врши прорачуне, или израчунавања. Реч је задржала то значење до средине 20. века. Од краја 19. века реч је почела да поприма њено познатије значење, машина која врши прорачуне.[3]
Рад рачунара може бити заснован на кретању механичких делова, електрона, фотона, квантних честица или неке друге физичке појаве. Иако се рачунари могу изградити на многим постојећим технологијама, готово сви данашњи модели садрже у себи електроничке компоненте.
Код већине данашњих рачунара задати проблеми се у бити решавају претварањем свих релевантних информација у математичке релације кориштењем бинарног система.
Након што рачунар изврши израчунавање задатог проблема, резултат се приказује на кориснички приступачан начин: преко сигналних лампи, екрана, монитора, штампача и др.
Почетници у раду са рачунарима, нарочито деца, често не могу схватити чињеницу да су рачунари само уређаји и да не могу „мислити“ односно „разумети“, чак ни оно што прикажу као резултат свог „рада“. Слике, боје, ријечи и др. које видимо на екрану рачунарског монитора су само програмирани прикази које људски мозак препознаје и даје им значење и смисао. Рачунар просто манипулира токовима електрона којима, на свом осоновном нивоу функционисања - транзистору, додељује логичке вредности нула или један, односно, стању „нема напона“ или „има напона“. До сада нам није познат начин којим би се успешно имитирало људско размишљање или самосвесност.
Велики централни рачунари (енгл. ) су довели до уведа удаљених (тзв. „глупих“) терминала који су имали монитор и тастатуру за унос података у једном кућишту али се обрада података и даље обављала у главном (и једином) рачунару.
Касније су се појавили и „интелигентни“ терминали који су део операција могли да обављају сами. Википедија, данас, је у електронском смислу организована на сличан начин - главни рачунар је у САД а интелигенти терминали (PC рачунари) код корисника. Интернет има улогу „мреже“.
Важан корак напред у развоју дигиталног рачунарства било је увођење бинарног система за унутрашње нумеричке процесе. Овим је престала потреба за комплексним извршним механизмима које су били засновани на другим нумеричким системима, нпр. децималном или хексадецималном. Усвајање бинарног система је довело до поједностављених конструктивних решења код имплементације аритметичких функција и логичких операција и поједностављених склопова и компонената самог рачунара.
Могућност да се рачунар програмира, тј. опреми низом извршних инструкција без потребе за физичко-конструктивним изменама, је основна функционална карактеристика већине рачунара. Ова особина је значајно унапређена њиховим развојем до степена на којем су били способни контролисати редослед извршавања инструкција на основу података добијених током самог вршења одређеног програма. Ово конструктивно унапређење је још више поједностављено увођењем бинарне аритметике којом се могу представити различите логичке операције.
Током рачунских операција често је потребно похранити међувредности („два пишем а један памтим“) које ће се употребити у даљем рачунању. Брзина неког рачунара је најчешће ограничена брзином којом се вредности читају/записују из/у меморију и њеним капацитетом. Првобитно је замишљено да се меморија користи само за поменуте међувредности, међутим, убрзо су се и сами програми почели похрањивати на овај начин и то се увелико примењује код данашњих рачунара.
Иако се технологија израде рачунара значајно изменила од времена првих електроничких модела саграђених 1940-их, још увек је већина данашњих решења заснована на фон Нојмановој архитектури. Рачунар као склоп састављен од три главна дела:
Ови делови су међусобно повезани мноштвом проводника који се зове магистрала или сабирница (енгл. ). Сви су обично погоњени временским уређајем (тајмер, сат, генератор такта), мада и други догађаји могу погонити контролне склопове.
Овде подразумевамо да је меморија низ нумерисаних ћелија, од којих свака садржи делић информације. Информација може бити инструкција којом се рачунару задаје неки задатак. Ћелија може садржавати и податак који је потребан рачунару да би извршио неку инструкцију. У сваком случају, било која од ћелија може садржавати делић информације који у датом тренутку може представљати податак а већ у следећем - инструкцију. Значи, садржај меморијских ћелија се непрестано мења.
Величина сваке ћелије и њихов број, разликује се од рачунара до рачунара а и технологије израде током њиховог развоја су биле битно различите. Тако смо имали електромеханичке меморије - релеје, цеви испуњене живом у којима су се стварали звучни пулсеви, матрице сталних/трајних магнета, појединачних транзистора, све до интегралних кола са више милиона дискретних и активних елемената.
Аритметичко-логичка јединица (енгл. ) врши основне аритметичке операције (сабирање, одузимање и др.), логичке операције (`И`, `ИЛИ`, `НЕ`) и упоређивање, нпр. да ли се садржај два бајта подудара. У овој јединици се у ствари одрађује главни посао.
Контролна јединица води рачуна о томе који бајтови у меморији садрже инструкцију коју рачунар тренутно обрађује, одређује које операције ће извршавати, налази информације у меморији које су потребне за те операције и преноси резултате на одговарајућа меморијска места. Када је то обављено, контролна јединица иде на наредну инструкцију (обично смештену на следећем меморијском месту) уколико инструкција не говори рачунару да је следећа инструкција смештена негде другде.
Када се позива на меморију, дата инструкција може на различите начине одредити одговарајућу меморијску адресу. Уз то, неке матичне плоче подржавају два или више процесора. Такве обично налазимо код сервера/послужитеља.
Путем улаза и излаза (енгл. ), рачунар добија информације из спољног света и шаље резултате назад. Постоји широк спектар уређаја: од обичних тастатура, преко мишева, монитора, дискетних погона, (оптичких) погона, штампача, све до скенера и камера.
Заједничка особина свих улазних јединица је да претварају информације одређене врсте у податке који даље могу бити обрађени у дигиталном систему рачунара. Насупрот томе, излазне јединице претварају податке у информације које корисник рачунара може разумети. У овом случају, дигитални систем рачунара представља систем за обраду података.
Рачунарске инструкције нису богате као што је људски језик. Рачунар познаје само ограничен број јасно дефинисаних и једноставних инструкција. Ево неколико примера: „копирати садржај ћелије 7 у ћелију 19“, „ако је садржај ћелије 999 већи од 1, слиједећа инструкција се налази у ћелији 100“, „садржај ћелије 6 одузети садржају ћелије 33 а резултат уписати у ћелију 50“.
Инструкције су у рачунару представљене бинарним системом бројева. Операција „копирај“ је, нпр. код Интелових микропроцесора у бинарном систему представљена овако: 10110000. Одређени низ инструкција које одређени рачунар може разумети назива се машински језик. У стварности, људи не стварају инструкције директно у машинском језику већ користе програмске језике које се преводе у машински језик путем посебних рачунарских програма „преводилаца“ и компајлера. Неки програмски језици су веома блиски машинском језику, као што је Асемблер а други, као Пролог, су засновани на апстрактним принципима који имају мало сличности са стварним операцијама унутар рачунара.
Код данашњих рачунара, аритметичко-логичка и контролна јединица смештени су на једном интегралном колу којег називамо централна процесорска јединица (енгл. ). Меморија рачунара смештена је на неколико малих интегралних кола поред централног процесора. Несразмерно велики дио укупне масе рачунара у ствари је садржан у систему напајања електричном енергијом - напојна јединица и уређајима.
Неки од већих рачунара разликују се од горе описаног модела углавном по већем броју процесора и контролних јединица који раде симултано. Додајмо овоме да и неки рачунари, чија је искључива намена научно истраживање и рачунање, имају сасвим другачију архитектуру и због другачијег, нестандардизираног начина програмирања, нису нашли ширу комерцијалну примјену.
Дакле, у бити, принцип функционисања рачунара је прилично једноставан; код сваког такта, рачунар повлачи инструкције и податке из своје меморије, извршава инструкције, похрањује резултате и понавља циклус. Понављање се врши све до наиласка на инструкцију "стоп".
Рачунарски програми је низ инструкција које рачунар треба извршити, некад укључујући и табеле података. Много рачунарских програма садржи милионе инструкција и много њих се непрекидно понавља. Типични модерни лични рачунар (енгл. ) може извршити неколико милијарди инструкција у секунди. Изванредне способности рачунара нису последица извршавања сложених инструкција већ милиона једноставних које програмери уобличавају у сврсисходне функције. Добар програмер, на пример, изради низ инструкција којим се извршава неки једноставан задатак као што је исцртавање једне тачке на екрану и тај низ затим учини доступним другим програмерима.
Садашњи рачунари су у стању извршавати неколико програма истовремено. У стварности, одређено кратко време процесор извршава инструкције једног програма а затим се пребацује на други програм и извршава део његових инструкција. То одређено кратко време често називамо временски исечак. Овај начин рада ствара илузију извршавања неколико програма истовремено а у стварности се ради о томе да програми деле процесорско „радно време“. Оперативни систем је програм који најчешће има улогу контролисања оваквог дељења процесорског времена.
Да би рачунар радио, барем један програм мора бити непрестано у функцији. Под нормалним условима, тај програм је оперативни систем (енгл. ). Оперативни систем одлучује који ће програм у датом тренутку бити извршаван, колико и којих ресурса ће му бити додељено (меморија, ) и сл. такође обезбеђује такозвани апстрактни омотач око хардвера и програмима дозвољава приступ преко сервиса као што су управљачки програми (енгл. ) који омогућавају програмерима писање програма без потребе за познавањем интимних детаља о свим прикљученим уређајима.
Рачунари су коришћени за координирање информације између вишеструких локација од 1950-их година. Амерички војни систем је био први пример таквог система на великој скали, што је довело до развоја бројних комерцијалних система специјалне намене као што је .[4]
Током 1970-их година, рачунарски инжењери у истраживачким институцијама широм САД су почели да повезују рачунаре користећи телекомуникациону технологију. Иницијативу је финансирала (данас ), а рачунарска мрежа која је произашла се звала .[5] Технологије које омогућиле постојање Арпанета су се прошириле и еволуирале.
Временом се мрежа проширила изван академских и војних институција и постала је позната као Интернет. Појава умрежавања је била праћена редефинисањем природе и граница рачунара. Рачунарски оперативни системи и апликације су модификовани како би обухватили способност дефинисања и приступа ресурсима других рачунара на мрежи, као што су периферни уређаји, записане информације, и слично, као облик проширења ресурса појединачних рачунара. Иницијално су инсталације биле доступне само људима који су радили у високо техничким окружењима, док током 1990-их ширење апликација попут имејла и , у комбинацији са развојем јефтине, брзе мрежне технологије попут Етернета и није омогућило свеприсутност рачунара. У ствари, број умрежених рачунара и даље доживљава феноменални раст. Веома велика порција персоналних рачунара се регуларно повезује за Интернет ради комуникације и пријема информације. „Бежично“ умрежавање, које често користи мреже мобилних телефона, је омогућило да рачунарско умрежавање постане свеприсутно и у мобилном рачунарском окружењу.
Постоје бројни типови рачунарских архитектура:
Од свих тих апстрактних машина, квантни рачунар вероватно највише обећава да ће револуционизирати рачунарство.[6]
Логичке капије су честа апстракција која се може применити код већине дигиталних и аналогних парадигама.
Способност записивања и извршавања листе инструкције званих програми чини рачунаре екстремно свестраним, и чини их различитим од калкулатора. Тјурингова теза је математички израз те свестраности: сваки рачунар са минималном способношћу (који је Тјуринг-комплетан), у принципу, има способност извршавања истих задатака које било који други рачунар може да изврши. Стога, сваки тип рачунара (нетбук, суперрачунар, целуларни аутоматон, етц.) има способност извршавања истих рачунарских задатака, ако се дозволи довољно времена и капацитета меморије.
Наредне 1991. године планиран је развој рачунара на 32-битном процесору Интел 80486 (из 1989), први процесор са преко милион транзистора, међутим те исте године долази до распада и рата у СФРЈ након чега је отказан развој овог рачунара. Варијанте процесора 80486 довеле су до настанка процесора пете генерације Интел Пентиум (80586) који је представљен 1993. године.]]