Компьютер – это многофункциональное электронное автоматическое устройство для накопления, обработки и передачи информации.
Приведем его структурную схему, где стрелками обозначим направление информационного потока
Работа компьютера имитирует (моделирует) информационную деятельность человека.
Но компьютер – техническое устройство, поэтому для того, чтобы он выполнял определенные действия, им нужно управлять.
Компьютер действует как автоматический, формальный исполнитель алгоритмов обработки информации. Это его главное свойство. Автоматизм в его работе означает, что некоторые действия он выполняет без вмешательства человека в соответствии со следующими общими принципами:
ü Двоичное кодирование информации
ü Программное управление работой компьютера (идея Чарльза Беббиджа)
ü Хранимая программа (по предложению американского математика Джона фон Неймана (1903 – 1957) наряду с данными каждая команда программы работы компьютера, кодируемая определенной последовательностью нулей и единиц, помещается как число в одной из ячеек оперативной памяти)
Как в действительности происходит реализация этих принципов и осуществляется формальная автоматическая работа компьютера?
Современный компьютер – это единство аппаратных средств (Hardware) и программного обеспечения (Software).
Компьютерная программа – это закодированная информация о действиях, которые предписывается выполнить компьютеру, алгоритм для исполнения компьютером, записанный на языке двоичных кодов, или на специальном языке программирования.
Чтобы на компьютере можно было решать задачи, нужна совокупность программ – программное обеспечение, классификацию которого отражает схема.
Средства контроля и диагностики | ||||
Системное | ||||
Операционные системы | ||||
Программное обеспечение (ПО) | Система программирования | Трансляторы | ||
Языки программирования | ||||
Пакеты прикладных программ | ||||
Уникальное | Прикладное | |||
Библиотеки стандартных программ |
Пользователь вводит с клавиатуры команды компьютерной программы, написанной на языке программирования. Команды накапливаются в оперативной памяти, автоматически переводясь в машинные коды, благодаря программе – переводчику – транслятору с языка программирования на язык машинных кодов.
Устройство управления (УУ) процессора воспринимает, считывая из оперативной памяти, команду за командой, анализирует, а затем организует ее выполнение, используя соответствующие устройства компьютера. Эти устройства произведут действия: напечатают на бумаге, выведут на экран, воспримут с клавиатуры, занесут на магнитный диск и т.д.
Для выполнения команд самим процессором, в нем предусмотрено арифметико – логическое устройство (АЛУ). Выполнив одну команду из оперативной памяти, компьютер переходит к другой команде и так, пока не встретит команду на окончание работы или команду, которую не сможет выполнить. Он не сможет выполнить команду, если она предназначается устройству, не подключенному к компьютеру, или отсутствует в его системе команд, или содержит синтаксическую ошибку. Если программа составлена правильно, то компьютер выполнит программу за конечное число шагов и выдаст человеку результат решения задачи.
Выполнение команд компьютером осуществляется с помощью электронных схем, реализующих логические функции формальной, булевой алгебры, например логическое умножение, сложение, отрицание.
Кроме того, программы составляются программистами по алгоритмам решения определенных задач. Человек не объясняет исполнителю – компьютеру свои цели и смысл команд программы. Очевидно, что компьютер и не сможет понять смысла совершаемых им действий. Более того, компьютер не обладает способностью к анализу результатов, например, относительно их соответствия постановке задачи. Компьютер не может обойтись без программы и исходных данных, подготовить которые под силу только человеку. Таким образом, и с этой точки зрения решение задачи компьютером – также формальное исполнение алгоритма ее решения, закодированного и хранимого вместе с данными в оперативной памяти.
Человек, принимая во внимание этот факт, должен понимать ограниченность возможностей компьютера как исполнителя и предусматривать точность в задании команд, поручаемых компьютеру для исполнения, так как вся ответственность за использование компьютера лежит только на людях (пользователях).