Поможем написать учебную работу
Если у вас возникли сложности с курсовой, контрольной, дипломной, рефератом, отчетом по практике, научно-исследовательской и любой другой работой - мы готовы помочь.
Если у вас возникли сложности с курсовой, контрольной, дипломной, рефератом, отчетом по практике, научно-исследовательской и любой другой работой - мы готовы помочь.
71.Особ-ти выполнения операций в двоично-десятич коде. Примеры. По аналогии с операциями вычитания в двоичном коде, операцию X-Y можно представить как X + (-Y). При этом отрицательное число представляется в дополнительном коде. Этот код используется только для выполнения операций вычитания. Алгоритм: 1)Модуль положительного числа представляется в прямом двоично-десятичном коде (8421).Модуль отрицательного числа - в дополнительном коде (ДК) с избытком 6.Для получения ДК необходимо: - инвертировать значения разрядов всех тетрад числа;- к младшему разряду младшей тетрады прибавить 1. 2) Произвести сложение операндов (X) в ПК и (Y) в ДК. 3) Если при сложении тетрад возник перенос из старшей тетрады, то он отбрасывается, а результату присваивается знак "+", т.е. результат получается в прямом избыточном коде. 4) Если при сложении тетрад возник перенос из старшей тетрады, то он отбрасывается, а результату присваивается знак "+", т.е. результат получается в прямом избыточном коде.5) Полученный в этом случае результат в ПК корректируется. Для этого к тем тетрадам, из которых возникал перенос при выполнении пункта 2 (при суммировании) необходимо добавить 10(10) или 1010(2).ПримерПредставим |Y| в ДК с избытком 6: Выполним сложение: Отсутствие переноса из старшей тетрады является признаком того, что результат получился в ДК (т.еотрицательный).Перейдем к нескорректированному избыточному ПК. Особенности вычитания двоично-десятичных чисел (прдлж). Произведем коррекцию результата в соответствии с пунктом 5 алгоритма. Поскольку ранее результат получался в ДК, т.е. отрицательный, необходимо добавить знак (-). Окончательный результат будет следующий: Умножение модулей двоично-десятичных чисел. Операция умножения сводится к образованию и многократному сложению частичных двоично-десятичных произведений. Алгоритм умножения: 1)Сумма частичных произведений полагается равной нулю. 2)Анализируется очередная тетрада множителя и множимое прибавляется к сумме частичных произведений столько раз, какова цифра, определяемая этой тетрадой. 3)Сумма частичных произведений сдвигается на одну тетраду и повторяются действия, указанные в пункте 2, пока все цифры (тетрады) множителя не будут обработаны. Направление сдвига зависит от того, какой вариант перемножения выбран - "старшие разряды вперед" или "младшие разряды вперед".4)Каждая операция суммирования завершается десятичной коррекцией, соответствующей случаю суммирования двоично-десятичных чисел без избытка 6 (т.е. необходимо добавить 0110 к тем тетрадам, из которых был перенос или в которых f=1). Пример: Z = X * Y = 25(10) * 13(10) = 325(10) X=25(10)= 0010 0101(2-10); Y=13(10)= 0001 0011(2-10) выберем вариант перемножения "старшие разряды вперед". В соответствии с пунктом 1 алгоритма, полагаем сумму частичных произведений P0=0. (Частичные произведения будем обозначать Pi). 75.Систематические коды. Примеры.Систематический код - код, содержащий в себе кроме информационных контрольные разряды. В контрольные разряды записывается некоторая информация об исходном числе. Поэтому можно говорить, что систематический код обладает избыточностью. При этом абсолютная избыточность будет выражаться количеством контрольных разрядов k, а относительная избыточность - отношением k/n, где n=m+k - общее количество разрядов в кодовом слове (m - количество информационных разрядов). Кодовое расстояние d(A,B) кодовых комбинаций А и В определяется как вес такой третьей кодовой комбинации, которая получается сложением исходных комбинаций по модулю 2. 77. Код Хэмминга. Примеры. Коды, предложенные американским ученым Р. Хэммингом, обладают способностью не только обнаружить, но и исправить одиночные ошибки. Эти коды - систематические. Предложим, что имеется код, содержащий m информационных разрядов и k контрольных разрядов. Запись на k позиций определяется при проверке на четность каждой из проверяемых k групп информационных символов. Пусть было произведено k проверок. Если результат проверки свидетельствует об ошибке, запишем 0, если ошибка - запишем 1. Запись полученной последо-вательности символов образует двоичное число. Свойство кодов Хэмминга таково, что контрольное число указывает номер позиции, где произошла ошибка. При отсутствии ошибок в данной позиции последовательность будет содержать только нули. Полученное число таким образом описывает n=(m+k+1) событий. (4.1.) В таблице, ниже, представлены примеры кодирования информации по ме-тоду Хэмминга для семизарядного кода. Как видно из таблицы в этом случае n=7, m=4, k=3 и контрольными будут разряды 1,2,4. |
72. Особенности применения модифицированных кодов. Модифицированные коды.Важная особенность рассмотренных кодов состоит в том, что в процессе выполнения операции сложения-вычитания не происходит переполнения цифровой части числа и переноса в знаковый разряд. Переполнение возникает лишь в знаковом разряде. Так бывает потому, что сумма двух слагаемых по модулю меньше единицы.При решении реальных задач часто трудно определить заранее, будет ли сумма двух слагаемых меньше единицы. Рассмотрим такой пример: X = -0,101 Дополнительный код 1.011 = [X]дк Y= -0,111 0.001 = [Y]дкS- = X- + Y- 0.100 = [S]дк То есть получаем неправильный результат как по знаку, так и в цифровой части.Рассмотрим ещё один пример:X = +0,101 В любом из ранее рассмотренных 0.101 = [X]дк,окY = +0,111 кодов имеем 0.111 = [Y]дк,окS+ = X+ + Y+ 1.100 = [S]дк,ок То есть и в этом случае происходящее переполнение в цифровой части искажает результат операции.Можно заметить, что переполнение числовой сетки происходит в случае одинаковых знаков слагаемых, так как именно в этом случае модуль результата превосходит модули каждого из слагаемых, сам факт переполнения может быть зафиксирован изменением знака результата.Таким образом, одним из способов фиксации переполнения является автоматическое определение перехода от одинаковых знаков слагаемых к противоположному знаку результата.Однако такой способ фиксации переполнения неудобен, так как предварительно знаки слагаемых должны быть запомнены, сравнены между собой и после получения результата.Существует другой принцип фиксации переполнения. Этот принцип основан на применении так называемых модифицированных кодов. Существо модифицированных кодов состоит в том, что к знаковому разряду добавляется ещё один разряд:"+" ставится в соответствие 00, "" ставится в соответствие 11 Возникающий в знаковых разрядах перенос теряется. Аналогично, по определению, обратным кодом является: Как и в случае простого обратного кода, возникающая единица переноса в знаковых разрядах по цепи циклического переноса добавляется в младший разряд цифровой части числа.Так как в сложении по-прежнему участвуют только числа меньше единицы, тоS = X + Y < 2Поэтому старший знаковый разряд не может быть искажён переносом из цифровой части числа, с другой стороны, перенос, возникающий при сложении чисел в случае, когдаS = X + Y > 1искажает младший знаковый разряд.Несовпадение знаковых разрядов после выполнения операции указывает на факт наличия переполнения.При этом различают два типа переполнения:"01" положительное,"10" - отрицательное. Первому ставится в соответствие комбинация 01 в знаковых разрядах, а второму 10. 74. Умножение. Методы ускорения умножения. Выполнение операции умножения в ЭВМОперация умножения является наиболее частой после сложения. Умножение может выполняться суммированием сдвинутых на один или несколько разрядов частичных произведений, каждое из которых является результатом умножения множимого на соответствующий разряд (разряды) множителя. Наиболее просто операция умножения выполняется в прямом коде. При этом на первом этапе определяется знак произведения путем сложения знаковых разрядов сомножителей по модулю 2, затем производится перемножение модулей сомножителей согласно двоичной таблице умножения. Результату присваивается полученный знак.Так как умножение производится в двоичной системе счисления, частные произведения либо равны 0 (при умножении на 0), либо самому сомножителю (при умножении на 1), сдвинутому на соответствующее количество разрядов.Произведение можно получить двумя путями:1) сдвигом множимого на требуемое количество разрядов и прибавлением полученного очередного частичного произведения к ранее накопленной сумме частичных произведений;2) сдвигом суммы ранее полученных частичных произведений на каждом шаге на 1 разряд и последующим прибавлением к сдвинутой сумме неподвижного множимого либо 0. Методы ускорения операции умноженияЛюбое ускорение операции умножения даже ценой усложнения арифметических и логических схем позволяет существенно повысить производительность ЭВМ, т.к. примерно 70% машинного времени затрачивается на выполнение этой операции.Известны способы ускорения умножения, направленные на сокращение общего количества и времени выполнения операций сложения, необходимых для образования произведения. Эти способы делятся на логические и аппаратные.Под аппаратными понимают такие способы, которые требуют для своей реализации введения дополнительного оборудования в основные арифметические цепи, благодаря чему достигается совмещение во времени отдельных составных частей процесса умножения. Они подразделяются на способы 1-го порядка (необходимо количество оборудования, пропорциональное числу разрядов машинного слова n) 2-го порядка (требуется объем оборудования, пропорциональный n2.)Под логическими понимают такие способы ускорения, при реализации которых сохраняется основная структура арифметических цепей умножителя, а ускорение достигается только за счет усложнения схемы управления.Простейшим логическим способом является пропуск тактов суммирования в тех случаях, когда очередная цифра множителя равна 0. 78,79. Асинхронный RS-триггер на элементах ИЛИ-НЕ (с прямыми входами), И-НЕ(с инверсными входами). Асинхронный RS-триггерИмеет два входа “R” и “S” и два выхода, как правило это “Q” и “не Q” (т.е. инверсный) . Лично я запомнил, какой вход для чего, после того, когда узнал, что R это “RESET” (что означает “сброс”) и “S” это “SET” (что означает установка). Принимая во внимание изложенную информацию можно указать, что при подаче сигнала (единица) на вход “S” на выходе “Q” устанавливается единица, а при подаче сигнала (единица) на вход “R” приводит к сбросу единицы на выходе “Q” и установки на нем нуля. Рассмотрим работу на базе элементов “2ИЛИ-НЕ” и “2И-НЕ”. Для этого используем графическое изображение этих элементов. Итак, разберем принцип работы на базе элементов “2ИЛИ-НЕ”. В начальном положении, когда на входах R и S отсутствуют сигналы (логический “0”), на выходе “Q” присутствует также “0” или “1” это исходное состояние. Выглядит это так: Далее подадим на “S” логическую единицу и получим на выходе “Q” также единицу. Будет выглядеть это так. Следующим шагом подадим логическую единицу на “R” и уже на выходе “Q” получим “0”. Изобразим это на рисунке. Более наглядную работу RS-триггера на элементах 2ИЛИ-НЕ можно продемонстрировать, изобразив таблицу истинности. Асинхронным триггерам свойственно такое явление как присутствие “гонок вызвано это разным временем быстродействия элементов, через которые проходит сигнал прежде чем попасть на вход триггера, в данном случае на вход “R” или “S”. Покажем это явление на диаграмме. Чтобы избавиться от этого явления, был придуман вариант подачи синхросигнала и асинхронный RSтриггер превратился в синхронный. |
73. Арифметика повышенной точности. Арифметика повышенной точности 1 байт 2 байт 3 байт 4 байт \------мантисса (23 разряда)-----/ \-----знак мантиссы \---- порядок (7 разрядов) \------ знак порядка Числа представленные в таком виде имеют достаточный диапазон, приемлемый для решения широкого круга задач по вычислениям и управлению объектами. Но, за все надо платить, в данном случае платить за точность приходится быстродействием.Плавающее число, представленное с двойной точностью, занимает 8 байт Диапазон представляемых значений Тип переменной//положительного числа//числа со знаком символьная 1 байт//0 ÷ 255//128 ÷ 127 целая 2 байта//0 ÷ 65,535//32,768 ÷ 32,767 длинная целая 4 байта//0 ÷ 4,294,967,295//2,147,483,648 ÷ 2,147,483,647 “Плавающая” 4 байта//3.4 10 -38 ÷ 3.4 10 38 “длинная плавающая” 8 байт//1.7 10 -308 ÷ 1.7 10 308 76. Обнаружение и исправление ошибок. Корректирующие коды. Примеры. Система контроля - совокупность методов и средств, обеспечивающих определение правильности работы автомата в целом или его отдельных узлов, а также автоматическое исправление ошибки. Ошибки в работе цифрового автомата могут быть вызваны либо выходом из строя какой-то детали, либо отклонением от нормы параметров (например, изменение напряжения питания) или воздействием внешних помех. Постоянные ошибки легче обнаружить и выявить. Случайные ошибки, обусловленные кратковременными изменениями параметров, наиболее опасны и их труднее обнаружить. Надо различать следующие виды ошибок результата: 1)возникающие из-за погрешностей в исходных данных; 2)обусловленные методическимипогрешностями; 3)появляющиеся из-за возникновения неисправностей в работе машины.Первые два вида ошибок не являются объектом для работы системы контроля. Проверка правильности функционирования отдельных устройств машины и выявление неисправностей может осуществляться по двум направлениям: 80. Синхронный RS-триггер на элементах И-НЕ. Если незадействованные входы элементов И-НЕ 1 и 2 соединить вместе (рис. 36), получится синхронный RS - триггер со статическим управлением (синхронизируемый уровнем). Схема и условное обозначение приведены на рис.39. Нетрудно убедиться,что при C=0 сигнал Q=~(~Q*1)=Q, а ~Q=~(Q*1)=~Q, т.е. независимо от значений S и R, выходы сохраняют старые значения и триггер находится в режиме памяти. При C=1 он функционирует, как асинхронный RS-триггер. Триггеры со статическим управлением называют, также "прозрачными", т.к. при активном уровне синхросигнала C, информация с входов беспрепятственно проходит на выходы. Временные диаграммы приведены на рис.40. До момента времени t4 сигнал C = 1 и выходное значение определяется комбинациями сигналов R и S. В течение интервала времени t0...t1 на входе R действует 1, а сигнал S = 0, поэтому Q тоже равно 0. Начиная с момента t1 и до момента t2 R = S = 0 и действует режим памяти (Q не изменяется). В момент t2 R = 0,а S = 1 и триггер устанавливается (Q = 1). С момента окончания импульса S и до момента t3 триггер хранит эту единицу, а в момент t3 сбрасывается, т.к.R = 0, а S = 1. Аналогично можно проанализировать и все остальные состояния выхода. Табл.истинности Недостатком схемы остается наличие недопустимой комбинации на входе, при которой получается неустойчивое состояние схемы. |