- •Вычислительные машины (конспект лекций) однопроцессорные эвм
- •Часть 1
- •1.1. Два класса эвм 5
- •1.1. Два класса эвм
- •1.2. Немного истории
- •1.3. Принципы действия эвм
- •1.4. Понятие о системе программного (математического) обеспечения эвм
- •1.5. Поколения эвм
- •1.6. Большие эвм общего назначения
- •1.6.1. Каналы
- •1.6.2. Интерфейс
- •1.7. Малые эвм
- •Вопросы для самопроверки
- •2. Представление информации в эвм
- •2.1. Позиционные системы счисления
- •2.2. Двоичная система счисления
- •2.2.1. Преобразование двоичных чисел в десятичные
- •2.2.2. Преобразование десятичных чисел в двоичные
- •2.2.3. Двоично-десятичная система счисления
- •2.3. Восьмеричная система счисления
- •2.4. Шестнадцатеричная система счисления
- •2.5. Двоичная арифметика
- •2.5.1. Сложение
- •2.5.2. Вычитание
- •2.5.3. Умножение
- •2.5.4. Деление
- •2.6. Прямой, обратный и дополнительный коды
- •2.6.1. Прямой код
- •2.6.2. Обратный код
- •2.6.3. Дополнительный код
- •2.6.4. Сложение и вычитание в дополнительном коде
- •2.6.5. Признак переполнения разрядной сетки
- •2.6.6. Деление в дополнительном коде
- •2.6.7. Правило перевода из дополнительного кода в десятичную систему
- •2.6.8. Модифицированные коды
- •2.6.9. Арифметика повышенной точности
- •2.7. Представление дробных чисел в эвм. Числа с фиксированной и плавающей запятой
- •2.7.1. Числа с фиксированной запятой
- •2.7.2. Числа с плавающей запятой
- •2.7.3. Сложение (вычитание) чпз
- •2.7.4. Умножение чпз
- •2.7.5. Методы ускорения умножения
- •2.7.6. Деление чисел с плавающей запятой
- •2.8. Десятичная арифметика
- •2.8.1. Сложение двоично-десятичных чисел
- •2.8.2. Вычитание модулей двоично-десятичных чисел
- •2.8.3. Умножение модулей двоично-десятичных чисел
- •2.8.4. Деление модулей двоично-десятичных чисел
- •2.9. Нарушение ограничений эвм
- •2.10. Представление буквенно-цифровой информации
- •2.11. Заключительные замечания
- •Вопросы для самопроверки
- •Контрольные задания к теме 2
- •Форма 1. Ответы на вопросы
- •Форма 2. Выполнение арифметических операций над числами
- •Пример выполнения контрольного задания (форма 2)
- •3. Принципы построения элементарного процессора
- •3.1. Операционные устройства (алу)
- •3.2. Управляющие устройства
- •3.2.1. Уу с жесткой логикой
- •3.2.2. Уу с хранимой в памяти логикой
- •3.2.2.1. Выборка и выполнение мк
- •3.2.2.3. Кодирование мк
- •3.2.2.4. Синхронизация мк
- •Вопросы для самопроверки
- •Контрольные задания к теме 3
1.3. Принципы действия эвм
Рассмотрим вначале вычисления с помощью калькулятора. Предварительно на листе бумаги выписываются формулы и исходные данные, а часто и таблицы для занесения промежуточных и конечных результатов. В процессе вычисления числа с листа заносятся в регистр микрокалькулятора, а затем включается нужная по формуле операция. Полученные результаты переписываются с регистра (индикатора микрокалькулятора) на лист бумаги (в таблицу).
Таким образом, микрокалькулятор выполняет арифметические операции над числами, которые в него вводит человек. Лист бумаги выполняет в данном случае роль запоминающего устройства, хранящего программу (расчетную формулу), исходные, промежуточные и конечные результаты. Человек управляет процессом вычисления, включая перенос чисел с листа в микрокалькулятор и обратно, а также выбирает нужный вариант продолжения процесса вычисления в соответствии с полученным результатом. Интересно, что в данном случае быстродействие устройства, выполняющего арифметические операции (механического или электронного), практически не влияет на скорость вычислительного процесса, так как остальные операции выполняются очень медленно.
Принципиальный эффект достигается, если к быстродействующему арифметическому устройству добавить быстродействующую память, а также быстродействующее устройство, производящее все необходимые операции по реализации программы вычислений и пересылке чисел между арифметическим устройством и памятью. Если добавить к такому комплексу аппаратуры устройства связи с внешним миром, т.е. устройства ввода исходных данных и программы и вывода результата, то придем к классической пятиблочной структуре Неймана, несколько модифицированный вид которой показан на рис. 1.1 (первоначально устройство ввода и вывода изображалось одним блоком, а память не разделялась на основную и внешнюю).
Рассмотрим основные функции устройств, входящих в состав неймановской модели ЭВМ.
АЛУ– производит арифметические и логические преобразования над поступающими в негомашинными словами, т.е. двоичными кодами определенной длины, представляющими собой числа или другой вид информации.
Память– хранит информацию, передаваемую из других устройств, в том числе поступающую извне через устройство ввода, и выдает во все другие устройства информацию, необходимую для протекания вычислительного процесса. В ЭВМ первых поколений память состояла только из двух существенно отличных по своим характеристикам частей – быстродействующейосновной,илиоперативной(внутренней), памяти (ОП) и значительно более медленнойвнешнейпамяти (ВП), способной хранить очень большие объемы информации. Память современных ЭВМ имеет более сложную структуру, поскольку внутренняя память ЭВМ разделилась на ряд иерархических уровней, обладающих различным объемом и быстродействием – ОП, кэш-память, сверхоперативная память, память каналов и т.д. Однако при первоначальном рассмотрении многоуровневость памяти можно не учитывать и считать, что внутренняя память состоит из одной ОП. Внутренняя память состоит из ячеек, каждая из которых служит для хранения одного машинного слова. Номер ячейки называетсяадресом. В запоминающем устройстве (ЗУ) ЭВМ, реализующем функцию памяти, выполняются операции считывания и записи информации. Причем при считывании информация не разрушается и может считываться любое число раз. При записи прежнее содержимое ячейки стирается.
Непосредственно в вычислительном процессе участвует только ОП. Обмен информацией между ОП и ВП происходит только после окончания отдельных этапов вычислений. Физическая реализация ОП и ВП будет рассмотрена в последующих разделах данного курса.
Устройство управления (УУ)– автоматически, без участия человека, управляет вычислительным процессом, посылая всем другим устройствам сигналы, предписывающие те или иные действия, в частности заставляет ОП пересылать необходимые данные, включать АЛУ на выполнение необходимой операции, перемещать полученный результат в необходимую ячейку ОП. Следует иметь в виду, что в современных ЭВМ АЛУ и УУ всегда объединены в одно устройство, которое называетсяпроцессор.
Пульт управления– позволяет оператору вмешиваться в процесс решения задачи, т.е. давать директивы устройству управления.
Устройство ввода– позволяет ввести программу решения задачи и исходные данные в ЭВМ и поместить их в ОП. В зависимости от типа устройства ввода исходные данные для решения задачи вводятся непосредственно с клавиатуры (дисплей, пишущая машинка) либо должны быть предварительно помещены на какой-либо носитель – перфокарты, перфоленты, магнитные карты, магнитные ленты, магнитные и оптические диски и т.д. В системах САПР осуществляется ввод графической информации.
Устройство вывода– служит для вывода из ЭВМ результатов обработки исходной информации. Чаще всего это символьная информация, которая выводится с помощью печатающих устройств (ПчУ) или на экран дисплея. В ряде случаев это графическая информация в виде чертежей и рисунков, которые могут быть выведены с помощью графических дисплеев, графопостроителей, принтеров, и т.д.
Теперь необходимо определить понятия алгоритмипрограмма. Понятие алгоритма не замыкается только областью вычислительной техники (ВТ). По интуитивному определению:
Алгоритм– это совокупность правил, строго следуя которым можно перейти от исходных данных к конечному результату.
В ВТ под "совокупностью правил" понимается последовательность арифметических и логических операций. (Утверждают, что слово алгоритмпроизошло от имени Мухаммед аль Хорезми, написавшем в IX веке трактат по арифметике десятичных чисел.)
Программа– это запись алгоритма в форме, воспринимаемой ЭВМ. Любая программа состоит из отдельныхкоманд. Каждая команда предписывает определенное действие и указывает, над какими операндами это действие производится. Программа представляет собойсовокупностькоманд, записанных в определенной последовательности, обеспечивающих решение задачи на ЭВМ. Для того,чтобы УУ могло воспринять команды, они должны быть закодированы в цифровой форме (во всех современных ЭВМ – это двоичный код).
Автоматическое управление процессом решения задачи достигается на основе принципа программного управления, являющегося основной особенностью ЭВМ. (Без программного управления ЭВМ превратится в обычный быстродействующий арифмометр или калькулятор.).
Другим важнейшим принципом является принцип хранимой в памяти программы. Согласно этому принципу программа, закодированная в цифровом виде, хранится в памяти наравне с числами. Поскольку программа хранится в памяти, одни и те же команды можно извлекать и выполнять необходимое количество раз. Более того, над кодами команд можно выполнять некоторые арифметические операции и тем самыммодифицироватьадреса обращения к ОП.
Команды программы выполняются в порядке, соответствующем их расположению в последовательных ячейках памяти. Однако команды безусловногоиусловного переходовмогут изменять этот порядок соответственно безусловно или при выполнении некоторого условия, задаваемого отношениями типа больше, меньше или равно. В большинстве случаев сравниваются результаты выполнения предыдущей операции и некоторое число, указанное в команде условного перехода. Именно команды условного перехода позволяют строить не только линейные, но также ветвящиеся и циклические программы.