Принципы фон Неймана построения ЭВМ
Автор: Пользователь скрыл имя, 28 Ноября 2015 в 19:59, контрольная работа
Краткое описание
Основы учения об архитектуре вычислительных машин заложил выдающийся американский математик Джон фон Нейман. Он подключился к созданию первой в мире ламповой ЭВМ ENIAC в 1944 г., когда ее конструкция была уже выбрана. В процессе работы во время многочисленных дискуссий со своими коллегами Г. Голдстайном и А. Берксом фон Нейман высказал идею принципиально новой ЭВМ. В 1946 г. ученые изложили свои принципы построения вычислительных машин в ставшей классической статье “Предварительное рассмотрение логической конструкции электронно-вычислительного устройства”.
Оглавление
Введение
Принципы фон Неймана построения ЭВМ
Заключение
Список используемой литературы
Файлы: 1 файл
Информатика.docx
— 39.96 Кб (Скачать)
Содержание
- Введение
- Принципы фон Неймана построения ЭВМ
- Заключение
- Список используемой литературы
Введение
Основы учения об архитектуре вычислительных машин заложил выдающийся американский математик Джон фон Нейман. Он подключился к созданию первой в мире ламповой ЭВМ ENIAC в 1944 г., когда ее конструкция была уже выбрана. В процессе работы во время многочисленных дискуссий со своими коллегами Г. Голдстайном и А. Берксом фон Нейман высказал идею принципиально новой ЭВМ. В 1946 г. ученые изложили свои принципы построения вычислительных машин в ставшей классической статье “Предварительное рассмотрение логической конструкции электронно-вычислительного устройства”.
2. Принципы фон Неймана построения ЭВМ
Авторство концепции, положенной в основу фон-неймановской архитектуры, в действительности принадлежит коллективу авторов (фон Нейман, Дж. Экерт, Дж. Макли), которые работали над созданием одной из первых ЭВМ общего назначения с возможностью перепрограммирования - ENIAC (1943, в частности фон Нейман был консультантом в этом проекте), а потом уже глубже реализована в машине EDVAC (1952). Сами принципы были сформулированы в нескольких публикациях, среди которых следует выделить такую как Burks, AW, Goldstine, HH, and von Neumann, J. Preliminary Discussion Of The Logical Design Of An Electronic Computing Instrument , 1945 («Предыдущая дискуссия о логическом устройстве электронного вычислительного инструмента ») и Von Neumann, J. First Draft Of A Report On The EDVAC , 1946 («Первый вариант доклада о EDVAC»).
Собственно, главной проблемой, которая стояла перед «пионерами» вычислительной техники была чрезвычайная сложность введения алгоритма вычислений в ЭВМ, для чего приходилось иметь дело с многочисленными переключателями, тумблерами, разъемами и другими коммутирующих элементов. Это затрудняло процесс, приводило к огромному количеству ошибок и отнюдь не прибавляло этим машинам универсальности.
Фон Нейман в своей «Предварительный дискуссии» предложил взамен хранить алгоритм вместе с данными для вычислений в памяти вычислительной машины, что бы давало возможность во-первых оперативно перепрограммировать систему, а во-вторых обращаться с командами как с данными, проводить над ними такие же вычислительные операции, то есть фактически открывало возможность для написания программ, которые сами себя модифицируют (и это было совсем не экзотикой на то время, а практической необходимостью). Таким образом предлагалась организация вычислений, которая действительно делала вычислительную машину универсальным инструментом.
Такая структура делала невозможным различение команд от данных в памяти машины по структуре представления, но фон-Нейманом было указано, что такое размещение возможно «при условии, если машина каким-то образом сможет различить их». Для того, чтобы указать машине на то, где есть команды, а где есть данные, была впоследствии предложена концепциясчетчика команд (program counter), в котором хранилась адрес текущей команды, а после ее выполнения заменялась адресу следующей. Адреса же самих операндов (данных) хранились непосредственно в команде.
Также в «Предварительный дискуссии» была достаточно подробно рассмотрена четырехкомпонентной структура вычислительного инструмента, которая сейчас считается классической структурой фон-неймановской машины, а именно: арифметическое устройство, устройство управления, память и пульт оператора.
Принципы фон Неймана построения ЭВМ:
- вычислительная машина конструктивно делится на ряд устройств: процессор, запоминающее устройство (для хранения программ и данных), устройство ввода–вывода и т.д.;
- наличие хранимой в памяти программы;
одинаковое представление чисел и команд в виде двоичных кодов;
принцип микропрограммного управления процессом вычислений;
естественный порядок выборки команд.
Согласно первому принципу ЭВМ состоит из ряда устройств, взаимодействующих друг с другом в процессе решения задачи. Рассмотрим кратко основные устройства и их функции (рис. 1).
Рис. 1. Структурная схема ЭВМ
Арифметико–логическое устройство (АЛУ) предназначено для выполнения предусмотренных в ЭВМ арифметических и логических операций. Участвующие в операциях данные выбираются из ОЗУ, результаты операций отсылаются в ОЗУ. Для ускорения выборки операндов (данных, участвующих в операциях) АЛУ может снабжаться собственной местной памятью (сверхоперативным запоминающим устройством – СОЗУ) на небольшое число данных (в сравнении с ОЗУ), но обладающей быстродействием, превышающим быстродействие ОЗУ. При этом результаты операций, если они участвуют в последующих операциях, могут не отсылаться в ОЗУ, а храниться в СОЗУ. Оперативная память вместе с СОЗУ представляет собой единый массив памяти, непосредственно доступный процессору для записи и чтения данных, а также считывания программного кода. К настоящему времени для оптимизации работы созданы процессоры с несколькими уровнями (от одного до трех) кэширования ОЗУ (несколькими СОЗУ).
Устройство управления (УУ) – координирует работу процессора, посылая в определенной временной последовательности управляющие сигналы в устройства ЭВМ, обеспечивая их соответствующее функционирование и взаимодействие друг с другом.
Оперативная память (ОЗУ) – реализуется, как правило, на модулях (микросхемах) динамической памяти. ОЗУ служит для хранения программы, исходных данных задачи, промежуточных и конечных результатов решения задачи.
Память ЭВМ к настоящему времени приобрела довольно сложную структуру и "расползлась" по многим компонентам. Кроме оперативной, память включает также и постоянную (ПЗУ), из которой можно только считывать команды и данные, и некоторые виды специальной памяти (например видеопамять графического адаптера). Вся эта память вместе с оперативной располагается в едином пространстве с линейной адресацией. В любом компьютере обязательно есть постоянная память, в которой хранится программа начального запуска компьютера и минимальный необходимый набор сервисов (например: ROM BIOS).
Все узлы ЭВМ не входящие в ядро называются периферийными. Они обеспечивают расширение возможностей ЭВМ, облегчают пользование ими. В состав периферийных (внешних) устройств могут входить следующие узлы.
Внешняя память (устройства хранения данных, например, дисковые) – память, имеющая относительно невысокое быстродействие, но по сравнению с ОЗУ существенно более высокую емкость. Внешняя память предназначена для записи данных с целью последующего считывания (возможно, и на другом компьютере). От рассмотренной выше памяти, называемой также внутренней, устройства хранения отличаются тем, что процессор не имеет непосредственного доступа к данным по линейному адресу. Доступ к данным на устройствах хранения выполняется с помощью специальных программ, обращающихся к контроллерам этих устройств. В силу того что быстродействие внешней памяти значительно ниже быстродействия АЛУ, последнее в процессе работы взаимодействует лишь с ОЗУ, получая из него команды и данные, отсылая в эту память результаты операций. Часто при решении сложных задач емкость ОЗУ оказывается недостаточной. В этих случаях в процессе решения задач данные определенными порциями могут пересылаться из внешней памяти в ОЗУ, откуда они затем выбираются для обработки в АЛУ.
Устройства ввода/вывода (УВВ) служат для преобразования информации из внутреннего представления в компьютере (биты и байты) в форму, доступную окружающим, и обратно. Под окружающими понимаем как людей, так и другие машины (например технологическое оборудование, которым управляет компьютер). К устройствам ввода относятся клавиатура, мышь, джойстик, микрофон, сканер, видеокамера, различные датчики; к устройствам вывода – дисплей, принтер, плоттер, акустические системы (наушники), исполнительные механизмы. Список устройств ввода/вывода безграничен – благодаря фантазии и техническому прогрессу в него входят все новые и новые устройства; так, например, шлем виртуальной реальности из области фантастики вышел в производственно–коммерческую. Устройства хранения к УВВ относить некорректно, поскольку здесь преобразования информации ради доступности внешнему миру не происходит. Устройства хранения вместе с УВВ можно объединить общим понятием периферийные устройства. Существует еще большой класс коммуникационных устройств, предназначенных для передачи информации между компьютерами и (или) их частями. Эти устройства обеспечивают, например, соединение компьютеров в локальные сети или подключение терминала (это УВВ) к компьютеру через пару модемов. Периферийные и коммуникационные устройства снабжаются контроллерами или адаптерами, которые доступны процессору.
2 принцип: наличие хранимой в памяти программы;
Другим важнейшим принципом является принцип хранимой в памяти программы. Согласно этому принципу команды программы, закодированные в цифровом виде, хранятся в памяти наравне с числами. В команде указываются не сами участвующие в операциях числа, а адреса ячеек ОП, в которых они находятся, и адрес ячейки, куда помещается результат операции.
Поскольку программа хранится в памяти, одни и те же команды могут нужное число раз извлекаться из памяти и выполняться. Более того, так как команды представляются в машине в форме чисел, то над командами как над числами машина может производить операции (“модификации команд”).
Команды выполняются в порядке, соответствующем их расположению в последовательных ячейках памяти, кроме команд безусловного и условного переходов, изменяющих этот порядок соответственно безусловно или только при выполнении некоторого условия, обычно задаваемого в виде равенства нулю, положительного или отрицательного результата предыдущей команды или отношения типа >, =, < для указываемых командой чисел. Именно благодаря наличию команд условного перехода ЭВМ может автоматически изменять соответствующим образом ход вычислительного процесса, решать сложные логические задачи.
Перед решением задачи на ЭВМ программа и исходные данные должны быть помещены в ее память. Предварительно эта информация обычно заносится во внешнюю память. Затем при помощи устройства ввода программа и исходные данные считываются в ОП.
3 принцип: одинаковое представление чисел и команд в виде двоичных кодов согласно этому принципу, вся информация, поступающая в ЭВМ, кодируется с помощью двоичных символов (сигналов);
Таким образом, в вычислительной технике используется система двоичного кодирования, основанная на представлении данных последовательностью всего двух знаков: 0 и 1. Эти знаки называются двоичными цифрами, по-английски — binary digit или сокращенно bit (бит). Одним битом могут быть выражены два понятия: 0 или 1 (да или нет, черное или белое, истина или ложь и т. п.). Если количество битов увеличить до двух, то уже можно выразить четыре различных понятия:
00 01 10 11
Тремя битами можно закодировать восемь различных значений: 000 001 010 011 100 101 110 111
Увеличивая на единицу количество разрядов в системе двоичного кодирования, мы увеличиваем в два раза количество значений, которое может быть выражено в данной системе, то есть общая формула имеет вид:
N=2m,
где N — количество независимых кодируемых значений;
т — разрядность двоичного кодирования, принятая в данной системе.
Кодирование целых и действительных чисел
Целые числа кодируются двоичным кодом достаточно просто — достаточно взять целое число и делить его пополам до тех пор, пока частное не будет равно единице. Совокупность остатков от каждого деления, записанная справа налево вместе с последним частным, и образует двоичный аналог десятичного числа.
19:2 = 9+1
9:2 = 4 + 1
4:2=2+0
2:2=1+0
Таким образом, 191() = 100112.
Для кодирования целых чисел от 0 до 255 достаточно иметь 8 разрядов двоичного кода (8 бит). Шестнадцать бит позволяют закодировать целые числа от 0 до 65 535, а 24 бита — уже более 16,5 миллионов разных значений.
Для кодирования действительных чисел используют 80-разрядное кодирование. При этом число предварительно преобразуется в нормализованную форму:
3,1415926 = 0,31415926×101
300 000 = 0,3 × 106
123 456 789 = 0,123456789×1010
Первая часть числа называется мантиссой, а вторая — характеристикой. Большую часть из 80 бит отводят для хранения мантиссы (вместе со знаком) и некоторое фиксированное количество разрядов отводят для хранения характеристики (тоже со знаком).
Кодирование текстовых данных
Если каждому символу алфавита сопоставить определенное целое число (например, порядковый номер), то с помощью двоичного кода можно кодировать и текстовую информацию. Восьми двоичных разрядов достаточно для кодирования 256 различных символов. Этого хватит, чтобы выразить различными комбинациями восьми битов все символы английского и русского языков, как строчные, так и прописные, а также знаки препинания, символы основных арифметических действий и некоторые общепринятые специальные символы, например символ "§".
Технически это выглядит очень просто, однако всегда существовали достаточно веские организационные сложности. В первые годы развития вычислительной техники они были связаны с отсутствием необходимых стандартов, а в настоящее время вызваны, наоборот, изобилием одновременно действующих и противоречивых стандартов. Для того чтобы весь мир одинаково кодировал текстовые данные, нужны единые таблицы кодирования, а это пока невозможно из-за противоречий между символами национальных алфавитов, а также противоречий корпоративного характера.
4 принцип: принцип микропрограммного управления процессом вычислений;
Любая машинная команда рассматривается, как некоторое сложное действие, которое состоит из последовательности элементарных действий над словами информации – микроопераций. Методы и приемы синтеза дискретных устройств (ДУ) использовали их представление в виде совокупности двух основных блоков: комбинационного логического и блока элементов памяти. Такой подход обладает универсальностью и обеспечивает хорошие результаты при построении относительно несложных ДУ. Однако полученные на его основе процедуры синтеза ДУ оказываются чрезмерно громоздкими и трудоемкими при построении устройств средней и большой сложности, имеющих важное практическое значение. Работа таких устройств обычно заключается в реализации некоторого алгоритма обработки информации, т.е. в выполнении упорядоченной последовательности определенных операций над поступающими данными. При построении таких ДУ целесообразно использовать принцип микропрограммного управления, состоящий в следующем: