Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Вариант_№6.doc
Скачиваний:
0
Добавлен:
01.07.2025
Размер:
1.81 Mб
Скачать

Введение

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

Рис.1.

Многоуровневое представление машины

  1. Прикладной уровень. На этом уровне реализованы различные пакеты прикладных программ (MS Office, MathCad, PhotoShop…), языки высокого уровня (C, C++, Pascal, Lisp…) и т.д. То есть этот уровень представляет собой проессиональную область, в которой решаются какие-то конкретные задачи.

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

  3. Традиционный машинный уровень. Он же ассемблерный уровень, он же уровень системы команд. Здесь решаются задачи управления на физическом уровне в реальном масштабе времени.

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

  2. Микроэлектронный уровень. Здесь работают физики.

Для определения вычислительной машины существует понятие «Архитектура вычислительной машины». Архитектура вычислительной машины – это определенный состав устройств, описание функций и взаимодействий между ними.

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

Первый этап – это формализация задачи. То есть конкретизация задачи, сроков исполнения и установленных ограничений. Этот этап занимает от 10 до 30 процентов всего времени разработки продукта.

Второй этап – разработка алгоритма реализации задачи. Этот процесс занимает от 20 до 40 процентов времени и является наиболее емким этапом.

Третий этап – кодирование. Этот этап представляет собой собственно претворение алгоритма в жизнь. Например, при написании программного продукта – реализация алгоритма, разработанного на предыдущем этапе в процедурах и функциях используемого языка программирования. Этот этап – это 5-10 процентов всего времени.

Четвертым этапом разработки продукта является тестирование (отладка) реализованного алгоритма и исправление ошибок. В общей сложности этот этап занимает примерно 7,5% времени. Из них 5% - исправление синтаксических ошибок и 2,5% - исправление семантических ошибок.

Последним этапом является сопровождение созданного продукта. То есть поддержка пользователей и создание сопровождающих продуктов. Так, например, если фирма создала принтер, то на этом этапе она будет создавать картриджи для этого принтера.

Основные понятия и определения

Если имеется некая задача, то для ее решения нужно разработать алгоритм решения. Конечный алгоритм – это описание решения задачи в виде последовательности действий приводящее к решению задачи за конечное число шагов. То есть создание алгоритма это в первую очередь определение последовательности действий.

Реализацией алгоритма можно назвать создание двух частей – операционной и управляющей. Операционная часть выполняет действия, а управляющая часть задает последовательность выбора действий. Именно такая система реализована в модели Глушкова (рис2).

Н

Yвн

а рисунке: D – действия. Y – управляющие воздействия. R – результат. X – влияет на порядок выполнения действий.

Допустим, нам нужно обрабатывать множество чисел (числовой вектор). Последовательной сменой значений числового вектора будет называться процесс вычисления. Который будет состоять из двух частей – отслеживание текущего состояния процесса (значения числового вектора) и изменение состояния процесса. Устройство, производящее этот процесс вычисления будет называться процессором. Процессор – это совокупность средств для реализации некоторого процесса. Если нам будет задан некий специализированный процесс, то и процессор для него будет тоже специализированный. В определении не сказано, что процессор – это обязательно какая-то микросхема, так что процессором может так же быть и программа, главное, чтобы она реализовывала некий процесс. Кстати, MSWord – это текстовый процессор, то есть набор средств для реализации процесса набирания документов.

### [КОММЕНТАРИЙ]

  1. Состояние меняется непрерывно во времени (аналоговое действие вычислительного устройства).

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

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

Метод декомпозиции для решения задачи.

  1. Последовательный

2. Параллельный

{A, x, W, , , a0}

где, A – множество состояний

x – множество входов

W – множество выходов

 - функции перехода A*XA

 - A*XW (автомат Мили (зависит от функций входа и текущего состояния))

AW (Автомат Мура)

a0 – начальное состояние

Похоже на конечный автомат.

Модель Глушкова (рис.2): совокупность операционного и управляющего автомата – операционное устройство (простейший процессор).

Комбинационные схемы – не содержит памяти, но выполняют некоторые преобразования. Значение на выходе зависит от значения на входе.

Схемы триггерного типа – используются для построения памяти.

Принципы программного управления Фон Неймана

  1. Информация кодируется в двоичном коде и разделяется на единицы, которые называются словами. Наилучшее соотношение длины разрядной сетки и основания системы счисления – это число «е». Ближайшие к ней числа – это число 2 и число 3. Троичная система счисления не технологична. Двоичная же система счисления более удобна, так как на ней легко реализуема булева алгебра.

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

  3. Слова информации хранятся в памяти в запоминающих ячейках и идентифицируются номерами (адресами). Номер ячейки есть ее адрес.

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

  5. Решение задачи сводится к последовательному выполнению команд по программе.

Существуют машины, управляемые не командами, а данными, то есть данные определяют последовательность выполнения команд.