Компью́тер (англ. computer, МФА: [kəmˈpjuː.tə(ɹ)][1] — «вычислитель») — устройство или система, способное выполнять заданную, чётко определённую последовательность операций. Это чаще всего операции численных расчётов и манипулирования данными, однако сюда относятся и операции ввода-вывода. Описание последовательности операций называется программой.[2]
Электро́нная вычисли́тельная маши́на, ЭВМ — комплекс технических средств, предназначенных для автоматической обработки информации в процессе решения вычислительных и информационных задач.[3]
Название «ЭВМ», принятое в русскоязычной научной литературе, является синонимом компьютера. В настоящее время оно почти вытеснено из бытового употребления и в основном используется инженерами цифровой электроники, как правовой термин вюридических документах, а также в историческом смысле — для обозначения компьютерной техники 1940—1980-х годов и больших вычислительных устройств, в отличие от персональных.
Архитектура компьютеров может изменяться в зависимости от типа решаемых задач. Оптимизация архитектуры компьютера производится с целью максимально реалистично математически моделировать исследуемые физические (или другие) явления. Так, электронные потоки могут использоваться в качестве моделей потоков воды при компьютерном моделировании(симуляции) дамб, плотин или кровотока в человеческом мозгу. Подобным образом сконструированные аналоговые компьютеры были обычны в 1960-х годах, однако сегодня стали достаточно редким явлением.
Архитектура фон Неймана
Гарвардская архитектура
Шинная архитектура компьютера против канальной архитектуры
Архитектура персонального компьютера
Классификация параллельных вычислительных систем
Компьютерная память
Процессор
Результат выполненной задачи может быть представлен пользователю при помощи различных устройств ввода-вывода информации, таких как ламповые индикаторы, мониторы, принтеры, проекторы и т. п.
Цифровой или аналоговый
Фундаментальным решением при проектировании компьютера является выбор, будет ли он цифровой или аналоговой системой. Если цифровые компьютеры работают сдискретными численными или символьными переменными, то аналоговые предназначены для обработки непрерывных потоков поступающих данных. Сегодня цифровые компьютеры имеют значительно более широкий диапазон применения, хотя их аналоговые собратья все ещё используются для некоторых специальных целей. Следует также упомянуть, что здесь возможны и другие подходы, применяемые, к примеру, в импульсных и квантовых вычислениях, однако пока что они являются либо узкоспециализированными, либо экспериментальными решениями.
Примерами аналоговых вычислителей, от простого к сложному, являются: номограмма, логарифмическая линейка, астролябия,осциллограф, телевизор, аналоговый звуковой процессор, автопилот, мозг. [источник не указан 408 дней]
Среди наиболее простых дискретных вычислителей известен абак, или обыкновенные счёты; наиболее сложной из такого рода систем является суперкомпьютер.
Система счисления
Примером компьютера на основе десятичной системы счисления является первая американская вычислительная машина Марк I.
Важнейшим шагом в развитии вычислительной техники стал переход к внутреннему представлению чисел в двоичной форме.[9]Это значительно упростило конструкции вычислительных устройств и периферийного оборудования. Принятие за основу двоичной системы счисления позволило более просто реализовывать арифметические функции и логические операции.
Тем не менее, переход к двоичной логике был не мгновенным и безоговорочным процессом. Многие конструкторы пытались разработать компьютеры на основе более привычной для человека десятичной системы счисления. Применялись и другие конструктивные решения. Так, одна из ранних советских машин работала на основе троичной системы счисления, использование которой во многих отношениях более выгодно и удобно по сравнению с двоичной системой (проект троичного компьютера Сетунь был разработан и реализован талантливым советским инженером Н. П. Брусенцовым).
Под руководством академика Хетагурова Я. А. разработан «высоконадёжный и защищённый микропроцессор недвоичной системы кодирования для устройств реального времени», использующий систему кодирования 1 из 4 с активным нулём.
В целом, однако, выбор внутренней системы представления данных не меняет базовых принципов работы компьютера — любой компьютер может эмулировать любой другой.
Хранение программ и данных
Во время выполнения вычислений часто бывает необходимо сохранить промежуточные данные для их дальнейшего использования. Производительность многих компьютеров в значительной степени определяется скоростью, с которой они могут читать и писать значения в (из) памяти и её общей ёмкости. Первоначально компьютерная память использовалась только для хранения промежуточных значений, но вскоре было предложено сохранять код программы в той же самой памяти (архитектура фон Неймана, она же «принстонская»), что и данные. Это решение используется сегодня в большинстве компьютерных систем. Однако для управляющих контроллеров (микро-ЭВМ) и сигнальных процессоров более удобной оказалась схема, при которой данные и программы хранятся в различных разделах памяти (гарвардская архитектура).