![](/user_photo/2706_HbeT2.jpg)
- •Общие принципы построения современных эвм. Поколения эвм.
- •Основные характеристики эвм.
- •Состав центральных устройств пэвм.
- •Структурная схема пэвм.
- •Структура базового микропроцессора. Архитектура фон Неймана. Параллельная архитектура.
- •Конвейерная архитектура центрального процессора.
- •Суперскалярная архитектура процессора. Cisc-, risc-, misc- и многоядерные процессоры. Суперскалярная архитектура
- •Cisc-процессоры
- •Risc-процессоры
- •Misc-процессоры
- •Vliw-процессоры
- •Многоядерные процессоры
- •Особенности архитектуры mips.
- •Сегментно-страничная организация памяти.
- •Однопрограммный и многопрограммный режимы работы эвм. Виртуальная память.
- •11. Система прерываний.
- •12. Организация функционирования эвм с магистральной архитектурой.
- •13. Материнская плата.
- •14. Видеосистема. Мониторы.
- •Видеоадаптер
- •Монитор
- •Программные средства
- •Электронно-лучевая трубка
- •15. Видеосистема. Видеокарта.
- •16. Системы ввода-вывода.
- •17. Сканеры.
- •18. Принтеры.
- •19. Технология динамической трансляции адресов.
- •Недостатки
- •20. Состав, устройство и принцип действия основной памяти. Основные характеристики оперативного запоминающего устройства.
- •21.Постоянные запоминающие устройства. Сверхоперативные запоминающие устройства.
- •4.12. Постоянная память, общая информация
- •22.Внешние запоминающие устройства пэвм. Внешние запоминающие устройства пэвм. Накопители информации
- •24.Системы счисления. Представление числовой информации в эвм.
- •1.1 Непозиционные системы счисления
- •1.2 Позиционные системы счисления
- •5. Формы представления двоичных чисел в эвм
- •Машинные коды. Прямой код. Обратный код. Дополнительный код. Модифицированные обратные и дополнительные коды.
- •Представление числа в прямом коде
- •Двоичный пример
- •Представление числа в дополнительном коде
- •3.6.2. Модифицированные обратный и дополнительный коды
- •26. Отображение адресного пространства программы на основную память
- •27.Арифметические операции над числами с фиксированной точкой и над двоичными числами с плавающей точкой.
- •2.3.3. Арифметические операции над двоичными числами с плавающей точкой
- •2.3.4. Арифметические операции над двоично-десятичными кодами чисел
- •28.Оперативный контроль вычислительных операций по вычетам
- •8.1. Расчетные соотношения
- •8.2. Примеры решения задач
- •29.Адресная структура команд микропроцессора и планирование ресурсов
- •30.Организация работы эвм при выполнении задания пользователя
- •31.Арифме́тико-логи́ческое устро́йство
- •Организация и принципы действия
- •Операции в алу
- •Классификация алу
- •32.Устройство Управления
- •33.Режимы адресации 16-разрядного микропроцессора
- •34.Взаимодействие основных узлов и устройств персонального компьютера при автоматическом выполнении команды
2.3.4. Арифметические операции над двоично-десятичными кодами чисел
При обработке больших массивов экономической информации переводы чисел из десятичной системы в двоичную и обратно могут требовать значительного машинного времени. Некоторые образцы ЭВМ поэтому имеют или встроенные, или подключаемые блоки, которые обрабатывают десятичные целые числа в их двоично-десятичном представлении. Действия над ними также приводятся к операции алгебраического сложения отдельных цифр чисел, представленных дополнительными кодами в соответствии с табл. 2.3.
Приведем один из алгоритмов сложения, который получил довольно широкое распространение.
1. Сложение чисел начинается с младших цифр (тетрад) и производится с учетом возникающих переносов из младших разрядов в старшие.
2. Знак суммы формируется специальной логической схемой по знаку большего слагаемого.
3. Для того чтобы при сложении двоично-десятичных цифр возникали переносы, аналогичные при сложении чисел в десятичном представлении, необходимо проводить так называемую десятичную коррекцию. Для этого к каждой тетраде первого числа прибавляется дополнительно по цифре 610=01102, что позволяет исключить шесть неиспользуемых комбинаций (1010-1111)2, так как они кодируют шестнадцатеричные цифры A-F (числа 10-1510).
4. После операции суммирования осуществляется корректировка суммы. Из тех тетрад суммы, из которых не было переносов, изымаются ранее внесенные избытки 610=01102. Для этого проводится вторая коррекция. Операция вычитания заменяется, как и обычно, операцией сложения с числом -6,представленным дополнительным кодом 10102, но только в тех разрядах, в которых отсутствовали переносы. При этой второй коррекции переносы из тетрад блокируются.
5. Операция вычитания реализуется достаточно своеобразно. По общему правилу сложения (п.п.1-4) к тетрадам числа с большим модулем прибавляются дополнительные коды тетрад другого числа. В качестве знаке результата берется знак числа с большим модулем.
28.Оперативный контроль вычислительных операций по вычетам
8.1. Расчетные соотношения
Контроль по вычетам (или по модулю) применяется для проверки правильности выполнения ряда вычислительных операций (арифметических, логических, операций пересылки данных, сдвига, преобразования в обратный или дополнительный код и др).
В
принципе любые данные, записанные в
регистрах или ячейках памяти ЭВМ можно
интерпретировать как некоторое целое
число
,
имеющее вид
где
– разрядность кода;
-
разрядные коэффициенты;
-
вес i-го разряда (
-
основание кода);
При этом число A можно представить в виде:
где
³ 2 – некоторый целый
делитель числа
,
носящий название модуля (всегда
положительный);
- целое частное (положительное или
отрицательное);
- остаток (всегда неотрицательный):
носит
название вычета или числового вычета
числа
,
по модулю
.
Два
целых числа
и
называются сравнимыми по модулю
,
если их остатки при делении на
одинаковые, а сравнимость записывается
как
При
этом предполагается, что вычеты чисел,
записанных в регистрах (или в памяти),
формируются без ошибок. При выполнении
различных вычислительных операций над
числами
и
может возникнуть искаженный результат,
то есть вместо
получится
,
где * - некоторая машинная операция. Над
вычетами
и
также выполняются соответствующие
операции (может быть другие, но при
отсутствии ошибок приводящие к результату,
совпадающему с
).
Считается, что если результат операции
над остатками совпадает с
,
то операция
выполнена безошибочно. Отметим, что в
большинстве случаев так оно и есть. Но,
если
,
то есть ошибка
,
то она будет замаскирована и результат
сравнения приведет к неправильному
заключению. При увеличении выбранного
модуля
вероятность неправильного заключения
о результате операции уменьшается.
Увеличение
обычно связано с увеличением аппаратной
избыточности, поэтому чаще всего
выполняется контроль арифметических
операций по модулю 3. Наименьшая аппаратная
избыточность имеет место при контроле
по модулю 2 (по четности), который широко
используется для проверки операций
пересылок. Однако для проверки
арифметических операций он используется
реже из-за некоторых технических
трудностей.
Рассмотрим некоторые свойства вычетов и операций сравнения.
при любом целом
.
Если
, то
Если
(арифметическое умножение), то
Из
и
следует
и
.
Из сравнения следует сравнение
при любом целом (обратное соотношение не всегда верно).
Если
то
при условии, что и взаимно просты (то есть в этом случае сравнимость не нарушается).
Если , то
при любом целом положительном .
Если
, где
- любое целое число, а - любое простое число, то
(теорема Ферма).
Если - целое число, не делящееся на простое число , то
(следствие теоремы Ферма).
Рассмотренные свойства часто применяются для проверки правильности выполнения различных вычислительных операций.
В случае контроля с помощью встроенных аппаратных средств вместо числовых вычетов чаще используются цифровые вычеты (цифровой контроль по вычетам). При этом уменьшаются временные и аппаратные затраты. Цифровым вычетом числа называется вычет суммы цифр его разрядов:
Отметим,
что цифровой контроль, совпадающий с
контролем по числовым вычетам возможно
выполнять только в том случае, если
.
Это равенство выполняется при выборе
модуля
или основания
,
удовлетворяющих условию
(8.1)
где
.
Наиболее
удобно выполнять цифровой контроль по
модулям
(т.е.
=3,
7, 15 и т.д.). Отметим, что двоичный код
легко преобразуется в код с основанием
.
Например, для преобразования в восьмеричный
код двоичные разряды объединяются в
триады, для шестнадцатеричного кода
выполняется объединение в тетрады и
т.д., затем каждая группа представляется
в соответствующем коде.
Решаемые
задачи ориентированы на арифметические
операции сложения и умножения, для
которых справедливы приведенные выше
свойства вычетов, и на логические
операции «&», «Ú»
и «исключающее или» (Å).
При контроле арифметического деления
используется косвенный метод контроля,
так как в общем случае
Рассмотрим основные этапы контроля по
вычетам.
Контроль
арифметических операций
,
где
Если , то выполняются следующие действия.
Вычисляются и
.
Вычисляется (возможно с ошибкой)
Вычисляется
.
Независимо вычисляется
(штрих указывает на возможность ошибки).
Выполняется сравнение
и
. Если эти значения равны, то считается, что ошибка отсутствует, в противном случае вычисления повторяются.
Если
выполняется арифметическая операция
умножения
и результат округляется с обнулением
последних разрядов, то округленное
число
,
где
– число, записанное в
округляемых разрядах. В этом случае при
отсутствии ошибки вычисления остаток
.
При проверке находится реальное значение
,
затем остаток
сравнивается с величиной
.
Контроль арифметических операций деления.
Контроль
операции
осуществляется косвенным путем.
Представим делитель как
где
- целая часть частного, а
–
неотрицательный остаток. Тогда
При контроле выполняются следующие операции.
Рассчитываются и .
Определяется частное
и целое частное
(может быть с ошибкой).
Выделяется целый остаток от деления на :
.
Находится
.
Выполняется сравнение
и . При равенстве считается, что деление выполнено без ошибки.
Отметим, что при контроле деления ошибка обнаруживается только при искажении как частного, так и остатка.
Контроль
логических операций
,
где
.
Так как логические операции выполняются над двоичными числами, то их можно арифметизировать, используя следующие формулы (справедливость которых легко проверяется подстановкой вместо переменных значений 0 или 1):
.
Из первых двух равенств следует, что
.
Поэтому
Отсюда
Контроль осуществляют в следующем порядке
Выполняется логическая операция .
Вычисляется .
Вычисляется
: для операции логического сложения
,
для
операции сложения по модулю
;
для операции логического умножения
Находится остаток
.
Выполняется суммирование
.
Сравниваются полученные значения и .