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

Автор работы: Пользователь скрыл имя, 07 Сентября 2011 в 08:42, контрольная работа

Краткое описание

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

2. Сложение двоичных чисел…………….………………….………..….…...5

3. Умножение двоичных чисел……………….………………..…..…….……7

4. Деление двоичных чисел……………………..………………..…………..11

5. Сложение двоично-десятичных чисел………….………….……………..16

6. Умножение двоично-десятичных чисел………….…….………………...18

Список литературы…………………………………….…………….….…....21

Содержимое работы - 1 файл

курсач.doc

— 338.50 Кб (Скачать файл)

       РА = 1,0111

РВ - РА = 0,0001ДК = 0,0001ПК

РВА = 1, следовательно, мантиссу числа А надо денормализовать, сдвинув на 1 разряд вправо и увеличив порядок на 1.

А 0 01011110101000011100 0 1010
 

Сложение мантисс:

                                 0,0101111010100001110  

                                 0,1100110111101000111

                               01,0010110010001010101

В данном случае мы получили временное ПРС  мантиссы суммы, но в отличии от чисел  с ФЗ, здесь возможна коррекция: сдвиг  мантиссы суммы на один разряд вправо и увеличение  на «1» порядка суммы.

А+В =10010110010,001010101 =4В2,2А8 =1202,1659

  А+В 10010110010001010101 0 1011
 

Проверка:

А+В=823,64+378,53=1202,17 

                           

Умножение двоичных чисел.

Числа С и  Д перевести в 2СС и перемножить, изменяя форму представления, используя  различные способы и алгоритмы  умножения.

1. Знаки операндов: С>0, Д<0. Умножение числа с ФЗ в прямом коде, использование первого способа умножения.

С = 3810 = 1001102

Д = -8310 = -10100112

Спк=0,0100110

Дпк=1,1010011             М = 27

1: 0 1 = 1

2: 1 способ умножения

Спк – множитель

Дпк – множимое

Множитель Сумма ЧП Комментарии
0,0100110

0,0010011

 

0,0001001

 
 

0,0000100

0,0000010

0,0000001

 
 

0,0000000

0,0000000 0000000

0,1010011 0000000

0,1010011 0000000

0,0101001 1000000

0,1010011 0000000

0,1111100 1000000

0,0111110 0100000

0,0011111 0010000

0,0001111 1001000

0,1010011 0000000

0,1100010 1001000

0,0110001 0100100

0,0011000 1010010

Сдвиги

Сложение

Сдвиги

Сложение

 

Сдвиги

Сдвиги Сдвиги

Сложение

 

Сдвиги

Сдвиги

 

(С*Д)пк = 1,00110001010010      М=214

(С*Д) = -110001010010 (2) = -3154(10)

Проверка:

38*(-83)=-3154

 

2. Знаки операндов: С<0, Д>0. Умножение чисел с ФЗ в дополнительном коде, использование второго способа и алгоритма с автоматической коррекцией.

С = -3810 = -1001102

Д = 8310 = 10100112

Спк=1,0100110

Дпк=0,1010011             М = 27

1: 0 1 = 1

2: 2 способ умножения

Сдк=1,1011010 – множитель

Ддк=0,1010011 – множимое

Множитель              Множимое Сумма ЧП Комментарии
1,10110100

1,11011010

 

1,11101101

 

1,11110110

 

1,11111011

1,11111101

 

1,11111110

1,11111111

0,0000000 1010011

0,0000001 0100110

 

0,0000010 1001100

 

0,0000101 0011000

 

0,0001010 0110000

0,0010100 1100000

 

0,0101001 1000000

0,1001011 0000000

0,0000000 0000000

1,1111110 1011010

1,1111110 1011010

0,0000010 1001100

1,0000001 0100110

1,1111010 1101000

1,1111100 0001110

 

0,0010100 1100000

0,0010000 1101110

1,1010110 1000000

1,1100111 0101110

Сдвиги

Вычитание

Сдвиги

Сложение

Сдвиги

Вычитание

Сдвиги

Сдвиги

Сложение

Сдвиги

Вычитание

Сдвиги

 

(С*Д)пк = 1,00110001010010        М=214

(С*Д) = -110001010010 (2) = -3154(10)

Проверка:

(-38)*83=-3154

 

3. Знаки операндов: С<0, Д<0. Представление их в форме с ФЗ в дополнительном коде и умножение их третьим способом, используя алгоритм с простой коррекцией.

С = -3810 = -1001102

Д = -8310 = -10100112

Спк=1,0100110

Дпк=1,1010011             М = 27

1: 1 1 = 0

2: 3 способ умножения

Сдк=1,1011010 – множитель

Ддк=1,0101101 – множимое

Множитель Сумма ЧП Комментарии
0,1011010  
 

0,0110100

0,1101000

 
 

0,1010000

 
 

0,0100000

0,1000000

 
 

0,0000000

0,0000000 0000000

0,0000000 0101101

0,0000000 0101101

0,0000000 1011010

0,0000001 0110100

0,0000000 0101101

0,0000001 1100001

0,0000011 1000010

0,0000000 0101101

0,0000011 1101111

0,0000111 1011110

0,0001111 0111100

0,0000000 0101101

0,0001111 1101001

0,0011111 1010010

Сложение  

Сдвиги

Сдвиги

Сложение

 

Сдвиги

Сложение

 

Сдвиги

Сдвиги

Сложение

 

Сдвиги

 

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

К псевдопроизведению прибавляем дополнительные коды от модулей  дополнительных кодов обоих сомножителей, то есть их прямые коды, т.к. оба сомножителя отрицательны.

Коррекция:

   0,00111111010010

   0,01001100000000   сложение

   0,10001011010010

   0,10100110000000   сложение

   0,00110001010010

(С*Д)пк = 0,00110001010010        М=214

(С*Д) = 110001010010 (2) = 3154(10)

Проверка:

(-38)*(-83)=3154

 

4. Знаки операндов: С>0, Д>0. Представление чисел в форме с ПЗ, умножение мантисс 4 способом.

Сначала исходные данные изобразим в разрядной сетке условной машины.

С = 3810 = 1001102         М = 26  

Д = 8310 = 10100112      М = 27

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

0 1 0 0 1 1 0 0 0 0 1 1 0
0 1 0 1 0 0 1 1 0 0 1 1 1
 

1: 0 0 = 0

2: Умножение мантисс 4 способом

Множитель Множимое Сумма ЧП Комментарии
0,1001100  
 

0,0011000

0,0110000

0,1100000

 

0,1000000

 

0,0000000

0,0101001 1000000  
 

0,0010100 1100000

0,0001010 0110000

0,0000101 0011000

 

0,0000010 1001100

 

0,0000001 0100110

0,0000000 0000000

0,0101001 1000000

0,0101001 1000000

 
 

0,0000101 0011000

0,0101110 1011000

0,0000010 1001100

0,0110001 0100100

 
 
Сложение

Сдвиги

Сдвиги

Сдвиги

Сложение

Сдвиги

Сложение

Сдвиги

Сдвиги

 

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

Мантисса произведения:

(С*Д)пк = 0,0110001 0100100

 

Вычислим порядок:

         РС = 0,0110

         РD = 0,0111

  РC + РD = 0,1101

Нормализуем мантиссу результата, сдвинув её на один разряд влево, и вычтем из порядка единицу.

 
0 0 1 1 0 0 0 1 0 1 1 0 1
0 1 1 0 0 0 1 0 0 1 1 0 0
 
 
 

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

(С*Д) = 0,1100010(1)*212=110001010000(2)=3152(10)

Проверка:

(-38)*(-83)=3154

Ошибка округления: 2

 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Деление двоичных чисел.

1. Знаки операндов:  C>0 - делимое, D<0 - делитель. Представление чисел в форме с ФЗ в прямой коде,  деление I способом с восстановлением остатков с использованием ОК при вычитании. Оценка погрешности округления.

С = 3810 = 1001102        

Информация о работе Системы счисления