
лекции / Лекция 6 по ИТ Проблемы реализации машинной арифметики. Архитектура ЭВМ по фон Нейману
.docx
|
Курс лекций по дисциплине «Информационные технологии» для студентов очной формы обучения |
||||
Лекция № 6 |
Блок 2: «Аппаратная реализация арифметических операций над числами, представленными в машинных кодах» |
||||
Тема 2.1: «Проблемы и решения компьютерная реализации методов машинной арифметики» |
|||||
Курс – 34 акад. часа |
Выпуск 1 |
Изменение 0 |
Экземпляр № 1 |
Лист |
6.1 Проблемы и особенности компьютерной реализации методов машинной арифметики
До сих пор все рассмотренные нами методы выполнения арифметических операций относились к ручной реализации в различных ПСС, т.е. так, как это удобно и привычно человеку (*, +, – в столбик и деление уголком).
Компьютерная реализация методов выполнения арифметических операций – машинная арифметика или арифметика в машинных кодах – отличается от ручной реализации и имеет достаточно много особенностей, описание которых является предметом изучения нескольких курсов.
Компьютерная реализации методов машинной арифметики должна решать несколько базовых проблем:
Проблема хранения чисел включает в себя: определение разрядной сетки для хранения чисел, как с плавающей запятой, так и с фиксированной, количество её разрядов, регистры для хранения всего числа или его части, память различных видов, как устройства для хранения большого массива двоичных чисел, которые можно адресовать и т.п.
Проблема реализации арифметических операций включает в себя: выбор устройств и их оптимизацию, например, нужно ли для каждой арифметической операции использовать специальное устройство, такое как сумматор, вычитатель, умножитель и делитель или можно ограничиться меньшим их количеством, скажем для всех операций использовать только одно – сумматор.
Проблема представления чисел (кодирование) включает в себя: форму представления чисел с фиксированной или с плавающей запятой, тип кода: прямой, обратный, дополнительный и их модифицированные разновидности.
Проблема коммутации и организации взаимодействия устройств для хранения чисел и устройств для реализации операций и управляющих устройств включает в себя различные интерфейсные компоненты и шины для передачи сигналов.
Проблема программной реализации.
Перечисленные задачи обуславливают, по сути, функциональное устройство компьютера, как многофункционального и многозадачного электронного устройства, предназначенного для накопления, обработки и передачи информации.
6.2 Архитектура ЭВМ по принципу фон Неймана
П
од
архитектурой
персонального компьютера
понимается
его логическая организация, структура
и ресурсы, т. е. средства вычислительной
системы, которые могут быть выделены
процессу обработки данных на определенный
интервал времени.
В основу построения большинства компьютеров положены принципы, сформулированные Джоном фон Нейманом (28 декабря 1903 — 8 февраля 1957) ещё в середине 20 века, вот три основных из них:
Принцип программного управления – программа состоит из набора команд, которые выполняются процессором автоматически друг за другом в определенной последовательности.
Принцип однородности памяти – совместное хранение данных и команд в памяти компьютера; над командами можно выполнять те же действия, что и над данными.
Принцип адресности – основная память структурно состоит из пронумерованных ячеек.
Простейшая архитектура ЭВМ была предложена фон Нейманом (рисунок 6.2), она реализует принцип совместного хранения данных и команд в памяти компьютера.








Шины, интерфейсы
Рисунок 6.2 – Архитектура ЭВМ по принципу фон Неймана
Обозначения на схеме:
АЛУ – арифметико-логическое устройство;
УУ – устройство управления;
УВВ – устройства ввода-вывода (периферийные устройства);
ОЗУ – оперативное запоминающее устройство;
СОЗУ – сверхоперативное запоминающее устройство.
Память (ОЗУ) хранит числа и программы, программы состоят из команд, а те, в свою очередь, указывают какую операцию над числами следует выполнить.
В АЛУ тоже имеются регистры памяти для хранения чисел и промежуточных результатов, так называемые РОНы – регистры общего назначения, они составляют память процессора, по сути это и есть сверхоперативное ЗУ (СОЗУ). Объем СОЗУ значительно меньше ОЗУ, но быстродействие его гораздо выше, тут приходится расплачиваться объемом за скорость, так как эти показатели находятся в обратной зависимости друг по отношению к другу.
Устройство управления (УУ) при выполнении программы считывает очередную программу из памяти (ОЗУ), далее декодирует её, определяя и затем реализуя порядок действий.
Если команда предполагает арифметическую или логическую операцию над числами, то для её реализации используется АЛУ. Наряду с этим существует множество команд других типов, при выполнении которых АЛУ не задействуется, к примеру, это могут быть команды пересылки.
Как уже упоминалось, рассмотрение указанных устройств, это предмет изучения целого ряда курсов, которые будут читаться в процессе обучения, еще большее внимание будет уделено программированию, которое, как говорится, вдохнет жизнь в «железо». Предмет же изучения данного курса находится «в самом низу» – на микроуровне, образно говоря, на уровне атомов.
Итак, рассматривать мы будем некоторые аспекты, связанные с устройствами компьютера, относящимися к его простейшим арифметическим основам. Речь идет об изучении проблемы реализации арифметических операций (п.2 в списке из 5 основных проблем). И главный вопрос здесь заключается в целесообразности использовании множества специализированных устройств для реализации арифметических операций, или же, пожертвовав быстродействием, но при этом, сэкономив на оборудовании, минимизировав разрастание схем и загромождение кристалла, отказаться от этого и использовать только одно устройство – сумматор для реализации всех арифметических операций.
В вычислительных устройствах применяют и сумматоры и вычитатели. Для упрощения схемной реализации вычислительных устройств целесообразно иметь одно универсальное устройство. Оказывается, что использование простых специальных математических приёмов позволяет приспособить сумматоры для выполнения операции вычитания (а также умножения и деления!).
Такие приёмы – сложение в системе с обратным или дополнительным кодом.
И надо сказать, что вычислительная техника пошла по пути оптимизации и, в итоге, АЛУ содержит минимальный состав оборудования, который позволяет реализовать все арифметические и логические операции. При этом естественно возрастают временные и алгоритмические затраты, т.к. вместо того, чтобы произвести умножение за один такт работы АЛУ на специализированном устройстве (в данном случае умножителе), выполняется множество операций сложения и сдвигов, используя при этом только сумматор.