Компьютер

Материал из Википедии — свободной энциклопедии
Это старая версия этой страницы, сохранённая PureVirtual (обсуждение | вклад) в 00:54, 7 мая 2005 (Физическая реализация). Она может серьёзно отличаться от текущей версии.
Перейти к навигации Перейти к поиску

Компью́термашина для проведения вычислений, а также приёма, переработки, хранения и выдачи информации по заранее определённому алгоритму.

Основные принципы

Выполнение поставленных перед ним задач компьютер может обеспечивать при помощи перемещения каких-либо механических частей, движения потоков электронов, фотонов, квантовых частиц или за счёт использования эффектов от любых других хорошо изученных физических явлений. Большинству из нас наиболее знаком самый распространённый из типов используемых компьютеров - электронный персональный компьютер.

Архитектура компьютеров может непосредственно моделировать решаемую проблему, максимально близко отражая исследуемые физические явления. Так, электронные потоки могут использоваться в качестве моделей потоков воды при моделировании дамб или плотин. Подобным образом сконструированные аналоговые компьютеры были обычны в 60-х годах XX века, однако сегодня стали достаточно редким явлением.

В большинстве современных компьютеров, проблема сначала описывается в математических терминах, при этом вся необходимая информация представляется в двоичной форме (в виде единичек и нулей), после чего действия по её обработке сводятся к применению простой булевой алгебры. Поскольку практически вся математика может быть сведена к выполнению булевых операций, достаточно быстрый электронный компьютер может быть применим для решения большинства математических задач (а также и большинства задач по обработке информации, которые могут быть легко сведены к математическим).

Однако, было обнаружено, что компьютеры всё-таки могут решить не любую математическую задачу. Впервые задачи, которые не могут быть решены при помощи компьютеров, были описаны английским математиком Аланом Тьюрингом.

Результат выполненной задачи может быть представлен пользователю при помощи различных устройств ввода-вывода информации, таких как лампочные индикаторы, мониторы, принтеры и т.п.

Начинающие пользователи и особенно дети зачастую с трудом воспринимают идею того, что компьютер — просто машина и не может самостоятельно «думать» или «понимать» те слова, которые он показывает. Компьютер лишь механически отображает заданные программой линии и цвета при помощи устройств ввода-вывода. Человеческий мозг сам признает в изображенном на экране образы, числа или слова и придаёт им те или иные значения.

Этимология

Слово компьютер является производным от английских слов to compute, computer, которые переводятся как «вычислять», «вычислитель». Первоначально в английском языке это слово означало человека, производящего арифметические вычисления с привлечением или без привлечения механических устройств. В дальнейшем его значение было перенесено на сами машины, однако, современные компьютеры выполняют множество задач, не связанных напрямую с математикой.

Впервые трактовка слова компьютер появилась в 1897 г. в Оксфордском английском словаре. Его составители тогда понимали компьютер, как механическое вычислительное устройство. В 1946 г. словарь пополнился дополнениями, позволяющими разделить понятия цифрового, аналогового и электронного компьютеров.

История

С начала 90-х годов XX века слово компьютер практически вытеснило из русского языка, а также и из многих других языков, понятие Электронная вычислительная машина (ЭВМ).

Первые программируемые компьютеры — Z1 и Z3 — были созданы немецким инженером Конрадом Цузе (Konrad Zuse), соответственно в 1938 и 1941 годах.

В начале 1943 г. успешные испытания прошла первая американская вычислительная машина Марк I, предназначенная для выполнения сложных баллистических расчетов американского ВМФ.

В конце 1943 заработала английская вычислительная машина специального назначения Колосс. Машина работала над расшифровкой секретных кодов фашистской Германии.

В 1944 г. Цузе разработал ещё более быстрый компьютер Z4.

1946 г. стал годом создания первой универсальной электронной цифровой вычислительной машины Эниак.

Экспоненциальное развитие компьютерной техники

Для показателя цена-производительность вычислительных устройств прослеженного начиная с 1900 г. характерно удвоение каждые 18—24 месяца. Впервые эту особенность развития вычислительных устройств в 1965 г. описал соучредитель компании Intel Гордон Е. Мур. (см. Закон Мура). За руку с процессом увеличения производительности по отношению к стоимости и столь же драматично развивается процесс миниатюризации компьютеров. Первые электронно-вычислительные машины, такие как созданный в 1946 г. Эниак, были огромными устройствами, весящими многие тонны, занимавшими целые комнаты и требовавшими большого количества обслуживающего персонала для успешного функционирования. Они были настолько дороги, что их могли позволить себе только правительства и большие исследовательские организации, и представлялись настолько экзотическими, что казалось - небольшая горстка таких систем сможет удовлетворить любые будущие потребности. В контрасте с этим, современные компьютеры - гораздо более мощные и компактные и гораздо менее дорогие - стали воистину вездесущими.

Классификация

Типизация по назначению

Поверхностный характер представленного подхода к классификации компьютеров очевиден. Он обычно используется лишь для обозначения общих черт наиболее часто встречающихся компьютерных устройств. Быстрые темпы развития вычислительной техники означают постоянное расширение областей её применения и быстрое устаревание используемых понятий. Для более строгого описания особенностей того или иного компьютера обычно требуется использовать другие схемы классификаций.

Физическая реализация

Более строгий подход к классификации основан на отслеживании используемых при создании компьютеров технологий. Не секрет, что самые ранние компьютеры были полностью механическими системами. Тем не менее уже в 30-х годах прошлого века телекоммуникационная промышленность предложила разработчикам новые, электромеханические компоненты (реле), а в 40-х были созданы первые полностью электронные компьютеры, имевшие в своей основе вакуумные электронные лампы. В 50-х60-х годах на смену лампам пришли транзисторы, а в конце 60-х — начале 70-х годов - используемые и сегодня полупроводниковые интегральные схемы (кремниевые чипы).

Приведённый перечень технологий не является исчерпывающим; он описывает только основную тенденцию развития вычислительной техники. В разные периоды истории исследовалась возможность создания вычислительных машин на основе множества других, ныне позабытых и порою весьма экзотических технологий. Например, существовали планы создания гидравлических и пневматических компьютеров, между 1903 и 1909 годами некто Перси И. Луджет даже разрабатывал проект программируемой аналитической машины, работающей на базе пошивочных механизмов, (переменные этого вычислителя планировалось определять при помощи ниточных катушек).

В настоящее время ведутся серьёзные работы по созданию оптических компьютеров, использующих вместо традиционного электричества световые сигналы. Другое перспективное направление подразумевает использование достижений молекулярной биологии и исследований ДНК. И, наконец, один из самых новых подходов, способный привести к грандиозным изменениям в области вычислительной техники, основан на разработке квантовых компьютеров.

Впрочем, в большинстве случаев, технология исполнения компьютера является гораздо менее важной, чем заложенные в его основу конструкторские решения.

Конструктивные особенности

Современные компьютеры используют весь спектр конструкторских решений, разработанных за всё время развития вычислительной техники. Эти решения, как правило, не зависят от физической реализации компьютеров, а сами являются основой, на которую опираются разработчики. Ниже приведены наиболее важные вопросы, решаемые создателями компьютеров:

Цифровой или аналоговый

Фундаментальным решением при проектировании компьютера является выбор, будет ли он цифровой или аналоговой системой. Если, цифровые компьютеры работают с дискретными численными или символьными переменными, то аналоговые предназначены для обработки непрерывных потоков поступающих данных. Сегодня цифровые компьютеры имеют значительно более широкий диапазон применения, хотя их аналоговые собратья все еще используются для некоторых специальных целей. Следует также упомянуть, что здесь возможны и другие подходы, применяемые, к примеру, в импульсных и квантовых вычислениях, однако пока что, они являются либо узкоспециализированными либо экспериментальными решениями.

Примерами аналоговых вычислителей, от простого к сложному, являются: Логарифмическая линейка, Астролябия, Осциллоскоп, Телевизор, Аналоговый звуковой процессор, Автопилот, Мозг.

Среди наиболее простых дискретных вычислителей известен Абак или обыкновенные Счёты; наиболее сложным из такого рода систем является Суперкомпьютер.

Двоичный, десятичный или троичный

Важнейшим шагом в развитии вычислительной техники стал переход к внутреннему представлению чисел в двоичной форме. Это значительно упростило конструкции вычислительных устройств и периферийного оборудования. Принятие за основу двоичной системы счисления позволило более просто реализовывать арифметические функции и логические операции.

Тем не менее, переход к двоичной логике был не мгновенным и безоговорочным процессом. Многие конструкторы пытались разработать компьютеры на основе более привычной для человека десятичной системы счисления. Применялись и другие конструктивные решения. Так одна из ранних советских машин работала на базе троичной системы счисления, использование которой во многих отношениях более выгодно и удобно по сравнению с двоичной системой.

Примером компьютера на основе десятичной системы счисления является первая американская вычислительная машина Марк I.

Проект троичного компьютера Сетунь был разработан и реализован талантливым советским инженером Николаем Брусинцовым.

Программируемый

Способность машины к выполнению набора изменяемого набора инструкций (программы) без необходимости физической переконфигурации, является фундаментальной особенностью компьютеров. Дальнейшее развитие эта особенность получила, когда машины получили возможность динамически управлять процессом выполнения программы. Это позволяет компьютерам самостоятельно изменять порядок выполнения инструкций программы в зависимости от состояния полученных данных.

Хранящий программы и данные

Во время выполнения вычислений часто бывает необходимо сохранить промежуточные данные для их дальнейшего использования. Производительность многих компьютеров в значительной степени определяется скоростью, с которой они могут читать и писать значения из(в) памяти и её общей ёмкости. Первоначально компьютерная память использовалась только для хранения промежуточных значений, но вскоре было предложено сохранять код программы в той же самой памяти (архитектура Фон-Неймана) что и данные. Это удачное решение используется сегодня в большинстве компьютерных систем. Однако для управляющих контроллеров (Микро-ЭВМ) более удобной оказалась схема, при которой данные и программы хранятся в различных разделах памяти (Гарвардская архитектура).

Классификация по способностям

Одним из наиболее простых способов классифицировать различные типы вычислительных устройств является определение их способностей. Все вычислители могут, таким образом, быть отнесены к одному из трёх типов: специализированные устройства, умеющие выполнять только одну функцию (например, Антикитерский механизм 87 г. до н.э. или Ниточный предсказатель Вильяма Томсона 1876 г.), устройства, специального назначения которые могут выполнять ограниченный диапазон функций (первая Разностная машина Чарльза Беббиджа и разнообразные дифференциальные анализаторы) и устройства общего назначения, используемые сегодня. Название компьютер применяется, как правило, именно к машинам общего назначения.

Современный компьютер общего назначения

При рассмотрении современных компьютеров, наиболее важной особенностью, отличающей их от ранних вычислительных устройств, является то, что, при соответствующем программировании, любой компьютер может подражать поведению любого другого (хоть эта возможность и ограничена, к примеру, вместимостью средств хранения данных или различием в скорости). Таким образом, предполагается, что современные машины могут эмулировать любое вычислительное устройство будущего, которое когда-либо может быть создано. В некотором смысле, эта пороговая способность полезна для различия компьютеров общего назначения и устройств специального назначения. Определение «компьютер общего назначения» может быть формализовано в требовании, чтобы конкретный компьютер был способен подражать поведению универсальной машины Тьюринга.

Математические модели

Архитектура компьютеров

См. также