Пред.
След.
Макеты страниц
Распознанный текст, спецсимволы и формулы могут содержать ошибки, поэтому с корректным вариантом рекомендуем ознакомиться на отсканированных изображениях учебника выше Также, советуем воспользоваться поиском по сайту, мы уверены, что вы сможете найти больше информации по нужной Вам тематике ДЛЯ СТУДЕНТОВ И ШКОЛЬНИКОВ ЕСТЬ
ZADANIA.TO
8.4. КОНТРОЛЬ АРИФМЕТИЧЕСКИХ ОПЕРАЦИЙКак известно, арифметические операции выполняются в ЭВМ в прямом, обратном и дополнительном кодах. Если изображения чисел хранятся в машине в соответствующем коде, то их можно рассматривать как единые кодовые комбинации, к которым можно применять все сформулированные выше правила получения свертки. При этом требуется обязательная кратность общего числа разрядов избранному модулю. При сложении в прямом коде складываются только цифровые части изображений чисел, а знаки обрабатываются отдельно. Поэтому в этом случае возможен контроль двумя способами: 1) раздельный контроль знаковой и цифровой частей изображений результата; 2) обобщенный контроль всего изображения. При раздельном способе контроль знаковых разрядов производят обычно с помощью схемы, выявляющей переполнения, так как в модифицированном коде появление одиночной ошибки в знаковых разрядах приводит к несовпадению информации в них. Для цифровых частей изображений имеем
При обобщенном способе контроля требуется коррекция контрольного кода результата вследствие того, что знак результата при сложении чисел с равными знаками повторяет знак слагаемых, т. е. контрольный код суммы будет равен
где Пример. Заданы Имеем: На основании (8.15) получим
Обобщенный способ может быть применен и для контроля выполнения операции сложения
Пример. Заданы Решений: Проверка:
При сложении чисел в дополнительном коде необходима коррекция контрольного кода результата в случае, если возникает единица переноса из знакового разряда, т. е. контрольный код суммы будет равен
где Пример. Заданы: Решение: Проверка:
В связи с алгебраическим сложением чисел в инверсных Кодах возникает вопрос о преобразовании контрольного кода при преобразовании прямого кода чисел в инверсный и обратно. Для конкретности будем считать, что отрицательные числа изображаются в обратном коде и Пусть до преобразования в регистре хранился код
т. е. в знаковом разряде была записана 1 (числа условно целые). После преобразования этого кода в обратный в регистре получится;
Выразив
При преобразовании прямого кода в обратный (или наоборот) необходимо выполнить такие же преобразования с контрольным кодом, т. е.
где Таким образом, при выполнении операции алгебраического сложения в обратном и дополнительном кодах обработка основных и контрольных кодов может производиться в двух разных сумматорах параллельно, что позволяет в значительной степени распараллелить процессы в основном и контрольном При использовании позиционной системы счисления все арифметические операции сводятся к последовательности сложений кодов. Поэтому достаточно проверять только правильность всех сумм, получаемых в машине (окончательных при алгебраическом сложении и промежуточных при умножении и делении). Если формируется Сравнимость основного и контрольного кодов проверяется только после окончания операции. При этом в конце операции проверяется сравнимость также основного и контрольного кодов операндов. Это обусловлено тем, что одиночная ошибка в операнде может оказаться источником многократных ошибок в результате операции. Например, ошибка, исказившая один разряд множимого при его сдвиге, вызовет серию неправильных его передач в сумматор. Суммарный эффект всех этих неправильных передач может не нарушить соответствия между основным и контрольным кодами произведения. Поэтому эту ошибку можно обнаружить либо только при проверке всех частных произведений, либо путем проверки соответствия основного и контрольного кодов множимого после окончания операции.
|
1 |
Оглавление
|