Реферат по предмету "Информатика"


Системы счисления 3

--PAGE_BREAK--Сложение чисел с фиксированной запятой


Алгебраическое сложение чисел с фиксированной запятой в цифровых машинах может производиться в одном из машинных кодов: прямом, дополнительном или обратном. Чаще всего используется либо дополнительный, либо обратный код. При этом знаковый разряд и цифровая часть числа рассматривается как единое целое, в результате чего с отрицательными числами машина оперирует как с положительными, независимо от того, представлены ли они в виде правильных дробей или в виде целых чисел. Главное достоинство дополнительного и обратного кодов заключается в том, что правильный знак суммы получается автоматически в процессе суммирования знаковых цифр операндов и цифры переноса из соседнего младшего разряда. В случае возникновения единицы переноса из знакового разряда суммы ее нужно отбросить при сложении в дополнительном коде и прибавить к младшему разряду суммы при сложении в обратном коде (т. е. произвести циклический перенос единицы переполнения).

Алгебраическое сложение много разрядных чисел обычно организуется как регулярный процесс, состоящий из n одинаковых операций поразрядного сложения вычитания, где n- количество разрядов в каждом из операндов).

При этом в зависимости от знаков слагаемых возможны четыре случая:

1) Х1 > 0,     Х2 > 0,      Х3  = Х1 + Х2  > 0;

2) Х1 > 0,     Х2 0;

3) Х1 > 0,     Х2

4) Х1

Примеры сложения чисел с фиксированной запятой были рассмотрены выше.
Сложение чисел с плавающей запятой


Если имеются два числа в нормальной форме: Х1 = m1 10p1 и Х2 = m2 10p2, то для того чтобы их можно было сложить, нужно предварительно привести их к одному и  тому же порядку Робщ, т. е. преобразовать одно из слагаемых, например, первое следующим образом:

Х1 = m1 10p1  = m1* 10p1 = m1* 10pобщ.

Далее можно вынести степень основания системы за скобки и произвести сложение мантисс: Х1 + Х2= m1* 10pобщ. + m2 10pобщ. = (m1* + m2 ) 10pобщ.

Преобразовывать всегда нужно меньше слагаемое, так как в противном случае произойдет переполнение разрядной сетки мантиссы преобразуемого числа.

Машинная операция сложения чисел в нормальной форме распадается таким образом, на 4 этапа:

1.  Уравниваются порядки слагаемых: меньший порядок увеличивается до большего, мантисса преобразуемого числа сдвигается вправо (число денормализуется) на соответствующее количество разрядов. Практически в машинах производится вычитание порядков операндов. Знак и модуль разности Р1 — Р2 определяют соответственно, какое из слагаемых нужно преобразовывать и на сколько единиц следует сдвигать мантиссу преобразуемого числа.

2.  Производится преобразование мантисс слагаемых в один из модифицированных кодов.

3.  Мантиссы слагаемых суммируются по правилам сложения дробных чисел с фиксированной запятой.

4.  В случае надобности мантисса суммы переводится в прямой код, производится нормализация суммы и округление ее мантиссы.

ПРИМЕР. Используя дополнительный код, сложить два числа:

[X1]пр  = 0  101;  1,10101     и   [X2]пр = 0  100 ;        1,11001

                                                             порядок       мантисса
РЕШЕНИЕ:
1.      [X2]пр = 0  101;  1,011001

2.                         [m1]мод= 11,01011;              [m1]мод= 11,100111.    

             доп                                                      доп

3.                            [m1]мод= 11,01011         

·                                       доп

[m2]мод= 11,01011        

          доп




[m3]мод= 110, 111101     

         доп




отбрасывается  запрещенная комбинация

4.  Комбинация знаковых цифр мантиссы показывает, что сумма денормализована влево (всегда только на один разряд)

Произведем нормализацию суммы вправо




[m3]мод= 10, 111101                 1,0111101

           доп

Робщ = 0,101 + 0,001 = 0,110

Далее переводим сумму в прямой код и производим округление ее мантиссы до пяти разрядов.

Ответ: [X3]пр = 0  110 ;        1,1000011   ~   0  100;   1, 10001

                                                                    порядок   мантисса
    продолжение
--PAGE_BREAK--Умножение чисел с фиксированной запятой


Наиболее просто умножение выполняется в прямом коде, независимо от того, являются ли операнды целыми или дробными числами. В машинах с фиксированной запятой оно реализуется в два этапа.

1.  Определяется знак произведения с помощью сложения знаковых цифр сомножителей по модулю два, где нуль соответствует плюсу, а единица — минусу:

0 + 0 = 0

0 + 1 = 1

1 + 0 = 1

1 + 1 = 0

Вручную это эквивалентно:

(+) (+)  = (+);   (+) (-) = (-);   (-) (+) = (-);    (-) (-) = (+).

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

Умножение производится по обычным правилам арифметики согласно двоичной таблицы умножения. Произведение модулей |Х3| = |Х1| * |Х2| двух (например дробных) чисел, где множитель Х2 = Х21 2-1 + Х22 2-2 +…+ Х2n2-n,      чаще всего вычисляется как сумма так называемых частичных произведений:

           n

/Х3/ = å/Х/ Х2i2-i

                i=1

В машинах может быть реализовано как умножение, начинающееся с младшей цифры множителя (наиболее привычный способ), так и умножение, начинающееся со старшей цифры множителя. При умножении вручную в первом случае частичные произведения сдвигаются влево, во втором — вправо.

ПРИМЕР. Перемножить числа [X1]пр  = 0,1010 и [X2]пр = 1,1101

Решение.

1.  Определяем знак произведения 0 + 1 = 1.

2.  Перемножим модули операндов, порядок перемножения определяется нумерацией цифр множителя:
1-й способ

         0,1010                                                                 0,1010

      х 0,1101                                                              х 0,1101

          4,3,2,1          номера цифр множителя            1,2,3,4

            1010                                                                    1010

          0000                                                                        1010

      +1010                                                                        + 0000

       1010                                                                                1010

0,10000010                                                                 0,10000010

После округления приписываем к модулю знак произведения, полученный на первом этапе умножения.

Ответ: [X3]пр  = 1,0000010     ~    1,10000.

Первый способ часто называют умножением младшими разрядами вперед, а второй — умножением старшими разрядами вперед.
Умножение чисел с плавающей запятой


Если имеем два сомножителя, заданные в нормальной форме Х1 = m1 10p1 и Х2 = m2 10p2, то их произведение определяется следующим образом:

Х1 Х2  = m1  m2  10p1+р2.

Анализ этого соотношения показывает, что умножение чисел в машинах с плавающей запятой производится в четыре этапа:

1.  Определение знака произведения путем сложения по модулю два знаковых цифр мантисс сомножителей.

2.  Перемножение модулей мантисс сомножителей по правилам для дробных чисел с фиксированной запятой.

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

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

Множимое [X1]пр  = 0  101;  1,10101      

Множитель [X2]пр = 0  100;  1,11001

Решение.

1.  Знак произведения 1 + 0 = 1.

2.  Перемножаем модули мантисс:

1-й шаг               ,0000  0000      — нулевая сумма

                          +,0000  1010      — 1-е частичное произведение

2-й шаг              ,0000    1010     — 2-я сумма

                        + ,0000    0000     — 2-е частичное произведение
3-й шаг              ,0000    1010     — 3-я сумма

                        + ,0010    1000     — 3-е частичное произведение
4-й шаг              ,0011    0010     — 4-я сумма

                        + ,0101    0000     — 4-е частичное произведение

                           , 1000    0010     — модуль произведения мантисс.

Находим порядок произведения:
    продолжение
--PAGE_BREAK--          [р1]мод= 00,101         
·                         доп

[р2]мод= 11,101        

     доп




[р3]мод= 100, 010     

         доп




теряется

Производим округление мантиссы произведения.

Ответ: [X3]пр  = [Х1 Х2]пр =  0   010 ;      1    100

                                                      порядок      мантисса  


Прямой, обратный и дополнительный коды. Модифицированный код.
Введем определение прямого, обратного и дополнительного кодов. Рассмотрим двоичное число  В соответствии с изложенным выше число Rкодируется следующим образом:

         0 

R=    1 

или, в более общем случае, если ,

     0          

R=                

Так как , эти соотношения можно переписать таким образом:

                  ,            

=        

Представление чисел в соответствии с данной формулой называется прямым кодом числа

Если , то формула  перепишется в таком виде:

                  ,            

=        

Аналогичным образом кодируются и числа, модуль которых не меньше единицы.

Пример: Записать числа в прямом коде:
        
Из равенства



следует, что операцию вычитания yиз xможно заменить операцией сложения S-yи х с последующим вычитанием из результата величины S
.
    продолжение
--PAGE_BREAK--


Не сдавайте скачаную работу преподавателю!
Данный реферат Вы можете использовать для подготовки курсовых проектов.

Поделись с друзьями, за репост + 100 мильонов к студенческой карме :

Пишем реферат самостоятельно:
! Как писать рефераты
Практические рекомендации по написанию студенческих рефератов.
! План реферата Краткий список разделов, отражающий структура и порядок работы над будующим рефератом.
! Введение реферата Вводная часть работы, в которой отражается цель и обозначается список задач.
! Заключение реферата В заключении подводятся итоги, описывается была ли достигнута поставленная цель, каковы результаты.
! Оформление рефератов Методические рекомендации по грамотному оформлению работы по ГОСТ.

Читайте также:
Виды рефератов Какими бывают рефераты по своему назначению и структуре.