Представление чисел в ЭВМ

Автор работы: Пользователь скрыл имя, 24 Марта 2011 в 17:14, курсовая работа

Описание работы

Чтобы перевести целое число в новую СС, его необходимо последовательно делить на основание новой СС до тех пор, пока не получится частное, у которого целая часть равна 0. Число в новой СС записывают из остатков от последовательного деления, причем последний остаток будет старшей цифрой нового числа.

Содержание работы

Задание 1. Перевод чисел из одной позиционной системы в другую……………………….…3

1.Перевод чисел из десятичной системы счисления в двоичную…………………....3
2.Изображение чисел в форме с фиксированной запятой (ФЗ).…….………………..5
3.Изображение чисел в форме с плавающей запятой (ПЗ)…………………..……….6
Задание 2. Сложение двоичных чисел…………………………………………………....….…..7

2.1 Сложение чисел в форме с ФЗ в обратном коде (ОК)………………………………7

2.2 Сложение чисел в форме с ФЗ в дополнительном коде (ДК)………………………8

2.3 Сложение чисел в форме с ФЗ в модифицированном коде………………...………8

2.4 Сложение чисел в форме с ПЗ………………………………………………….….…9

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

3.1 Умножение чисел с ФЗ в ПК, используя первый способ умножения…………....11

3.2 Умножение чисел с ФЗ в ДК, используя второй способ умножения………….....13

3.3 Умножение чисел с ФЗ в ДК, используя третий способ умножения……...……...15

3.4 Умножение чисел с ПЗ, используя четвертый способ умножения……..……...…16

Задание 4. Деление двоичных чисел………………………………………………..…………..19

4.1 Деление чисел с ФЗ в ПК первым способом, применяя алгоритм с восстановлением остатков (ВО) и ОК при вычитании………………………………………………………………………………..……….19

4.2 Деление чисел с ФЗ в ПК вторым способом, применяя алгоритм без ВО и ДК

при вычитании………………………………………………………….…………….………….21

4.3 Деление чисел с ФЗ в ДК вторым способом, применяя алгоритм с автоматической коррекцией…………………………………………………………………………………..……23

4.4 Деление чисел с ПЗ первым способом…………………………………...…………24

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

5.1 Сложение двоично-десятичных чисел в коде 8-4-2-1………………………..……27

5.2 Сложение двоично-десятичных чисел в коде с избытком три………………..….28

5.3 Сложение двоично-десятичных чисел в коде 2-4-2-1………………………..……30

5.4 Сложение двоично-десятичных чисел в коде 3а+2………………………..………31

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

6.1 Умножение старорусским методом удвоения – деления пополам……...………..32

6.2 Умножение методом десятично-двоичного разложения множителя………….....34

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

Файлы: 1 файл

курсач 2009 год.doc

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

 
 
 
 

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

А =-356,3110 = -101100100,01001111

B = 723,5410 = 1011010011,1000101000112    

      Апк = 1, 01011001000100111100002  

  Впк  = 0, 10110100111000101000112

   Аок = 1, 10100110111011000011112  

Вок = 0, 10110100111000101000112                                         М = 210 
 

Сложение: 

  1, 1010011011101100001111   

  0, 1011010011100010100011

10, 0101101111001110110010

                                                1

  0, 0101101111001110110011 

0, 0101101111001110110011ок = 101101111, 001110110011пк                 

101101111, 0011101100112 = 367,2310

Проверка:

(-356,31) 10 + 723,5410 = 367,2310 
 
 
 
 
 
 
 
 

 
 
 
 

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

А=356,3110 =   101100100,010011112

B =-723,5410 = -1011010011,1000101000112    

Апк = 0, 01011001000100111100002

Bпк = 1, 10110100111000101000112    

Адк = 0, 01011001000100111100002

Вдк = 1, 01001011000111010111012

                                                      М = 210 
 

Сложение:

 0, 0101100100010011110000

 1, 0100101100011101011101

1, 1010010000110001001101    

1, 1010010000110001001101дк = 1,0101101111001110110011пк            

-101101111, 001110110011=-367,2310 

Проверка:

356,3110 + (-723,54) 10 = -367,2310 
 
 
 
 

 
 
 
 
 
 

 Модифицированные  обратный и дополнительный коды (МОК и МДК) имеют для изображения знака два соседних разряда: « + » – «00», « - » – «11». Эти коды используются для обнаружения ситуации ПРС - переполнения разрядной сетки. ПРС возникает при сложении чисел с ФЗ одинакового знака, когда результат операции выходит за верхнюю границу диапазона представления чисел, это приводит к потере старших разрядов.

 Формальным  признаком ПРС при использовании  МОК и МДК является появление  запрещенных комбинаций в знаковых разрядах – «01» или «10».

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

А=-356,3110 = -101100100,010011112

B =-723,5410 = -1011010011,1000101000112    

Апк = 1, 0101100100010011112

Bпк = 1, 10110100111000101000112    

Амдк = 11, 1010011011101100012  

Вмдк = 11,01001011000111010111012                      М = 210 

Сложение:

  11,1010011011101100010000  

  11,0100101100011101011101                     

  1 10,1111001000001001101101

 10 - запрещенная комбинация. Увеличиваем масштаб результата, сдвинув его вправо на один разряд, а в освободившийся старший знаковый разряд помещаем значение младшего знакового разряда: 

1, 01111001000001001101101дк = -10000110111110110010011пк

-10000110111,1101100100112 = -1079,84810 

Проверка:

-356,3110 + (-723,54)10 = -1079,8510 
 
 
 
 

 
 
 

 Сложение  чисел в форме  с ПЗ выполняется в несколько этапов. Числа с ПЗ изображаются двумя частями: мантиссой и порядком.

 

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

  1. Выравнивание порядков слагаемых: меньший порядок увеличивается до большего, при этом мантисса меньшего преобразуемого числа денормализуется. В машине выполняется вычитание порядков операндов. Знак и модуль разности порядков определяет, мантиссу какого из слагаемых надо сдвигать вправо и на сколько разрядов.
  2. Сложение мантисс операндов по правилам сложения чисел с ФЗ.
  3. Нормализация результата, если необходимо.  При этом денормализация вправо, т.е. ситуация, когда  в старшем разряде двоичной мантиссы «0», требует сдвига мантиссы влево и уменьшения порядка на соответствующее количество единиц.  Денормализация влево означает временное ПРС мантиссы суммы, но в отличие от чисел с ФЗ, здесь возможна коррекция: сдвиг мантиссы на один разряд вправо и увеличение на «1» порядка суммы.

 При больших величинах порядков возможно возникновении истинного ПРС числа с ПЗ, хотя вероятность этого невелика.

 Смещенные порядки используются в большинстве современных ЭВМ для упрощения процесса выравнивания порядков и их сравнения.

 При этом для представления порядка  применяется специальный дополнительный код с инверсным кодированием знака: « + » – «1», « - » – «0». В результате порядки чисел увеличиваются (в ЕС ЭВМ на 26=64, в СМ ЭВМ на 27=128), что приводит к смещению всех порядков по числовой оси в положительном направлении. Такие смещенные порядки называют характеристиками, и так как они все оказываются целыми положительными числами, то алгебраическое сложение можно производить без предварительного анализа знаков. 

А=356,31 =  101100100,010011112

B =723,54 =  1011010011,1000101000112      

А

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

В

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

 

Сложение:

       1)  Выравниваем порядки, для  чего выполняем их вычитание  с использованием ДК

            РА     =  0,1001

           (Рв )дк = 1,0110

                    1,1111

                      

А- РВ)дк=1,1111

А- РВ)пк=1,0001

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

А

0 0 1 0 1 1 0 0 1 0 0 0 1 0 0 1 1 1 1 0 01 0 1 0
 
 

           

2)    Складываем  мантиссы

                       0, 0101100100010011110000

                       0, 1011010011100010100011

                       1, 0000110111110110010011

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

0, 10000110111110110010011

А+В

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

Проверка:

10000110111, 1101100100112 =  1079,84710  

356,31+723,54 = 1079,85 
 
 

 

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

 Процесс умножения чисел в двоичной системе  счисления прост, так как разрядами  множителя могут быть либо «0», либо «1», и, следовательно, частичным произведением в каждом такте цикла умножения будет либо «0», либо множимое. Поэтому в цикле умножения двоичных чисел три элементарных операции:

  1. анализ цифры очередного разряда множителя; 
  2. суммирование  множимого с накопленной суммой частичных произведений,   если цифра      множителя «1»; 
  3. сдвиги в каждом такте умножения.

 Умножение можно выполнять как с младших, так и со старших разрядов множителя, со сдвигом, как частичной суммы, так и множимого в процессе умножения. Этим объясняется существование четырех способов умножения чисел.

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

 
 
 
 

 I способ - умножение с младших разрядов множителя со сдвигом суммы частичных произведений вправо.

 Устройства, которые хранят операнды, регистры, имеют следующую разрядность:

  1. регистры множителя и множимого – n-разрядные;
  2. регистр частичных произведений – 2n-разрядный.

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

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

 Алгоритм  умножения двоичных чисел в прямом коде:

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

C = 2310

D = -5710 

С =   101112

D = -1110012

С пк = 0,010111  М = 26

D пк = 1,111001 

D = 0,111001 – модуль множимого

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

Множитель

                n

Сумма ЧП

              2n

Примечания
,010111 0,000000 000000  
 
 
0,111001

0,111001 000000

Сложение

Сдвиг

,001011 
0,011100 100000

0,111001

1,010101 100000

Сложение 

Сдвиг

,000101 
0,101010 110000

0,111001

1,100011 110000

Сложение 

Сдвиг

,000010 0,110001 111000

0,011000 111100

Сдвиг

Сдвиг

,000001 0,111001

1,010001 111100                    

Сложение

Сдвиг

,000000 0,101000 111110

0,010100 011111

Сдвиг

Информация о работе Представление чисел в ЭВМ