18979

ПРЕДСТАВЛЕНИЕ ИНФОРМАЦИИ В ЭВМ

Реферат

Информатика, кибернетика и программирование

ПРЕДСТАВЛЕНИЕ ИНФОРМАЦИИ В ЭВМ ПРЕДСТАВЛЕНИЕ СИМВОЛЬНОЙ ИНФОРМАЦИИ Поскольку байт имеет 256 различных состояний то с помощью 1 байта можно закодировать 256 различных символов. Состояние байта числа от 0 до 25510 или 0 до 3778 или от 0 до FF16 при этом будет представля

Русский

2013-07-10

188 KB

10 чел.

ПРЕДСТАВЛЕНИЕ ИНФОРМАЦИИ В ЭВМ

  1.  ПРЕДСТАВЛЕНИЕ СИМВОЛЬНОЙ ИНФОРМАЦИИ

Поскольку байт имеет 256 различных состояний, то с помощью 1 байта можно закодировать 256 различных символов. Состояние байта (числа от 0 до 25510 или 0 до 3778, или от 0 до FF16) при этом будет представлять код одного из символов. Как мы уже отмечали наиболее распространенным двоичным кодом как для передачи по каналам связи, так и для представления символов в ЭВМ является код ASCII (American Standard Code for Information Interchange - Американский стандартный код для обмена информацией).

Для возможности кодировки русского текста используется его расширение до 8 битов (КОИ-8)(табл. 3.2). Полная таблица кода разбита на 16 строк и 16 столбцов, имеющих 16-ричные номера от 0 до F. Код символа составляется из номера столбца, к которому приписывается номер строки. Основной стандарт для кодирования символов использует шестнадцатеричные коды 00-7F, расширение стандарта – 80-FF. Основной стандарт является международным и используется для кодирования управляющих символов, цифр и букв латинского алфавита; в расширении стандарта кодируются символы псевдографики и буквы национального алфавита (естественно, в разных странах разные).

Таблица 3.2.

Таблица кодов ASCII

  1.  ФОРМы ЗАПИСИ ЧИСЕЛ

В ЭВМ применяются две формы представления двоичных чисел:

  •  естественная форма или форма с фиксированной запятой (точкой);
  •  нормальная форма или форма с плавающей запятой (точкой).

2.1. Естественная форма 

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

Пример 3.12. В десятичной системе счисления имеются 5 разрядов в целой части числа (до запятой) и 5 разрядов в дробной части числа (после запятой); числа, записанные в такую разрядную сетку, имеют вид:

+00721,35500; +00000,00328; -10301,20260.

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

Пример 3.13. Диапазон значащих чисел (Q) в системе счисления с основанием m при наличии L разрядов в целой части и k разрядов в дробной части числа (без учета знака числа) будет:

m-kQmml m-k.

При m=2, l=10 и k = 6: 0,015 ≤ Q ≤ 1024.

В современных ЭВМ естественная форма представления используется как вспомогательная и только для целых чисел, при этом запятая строго устанавливается после младшего разряда.

2.2. Нормальная форма

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

Qm = ±M×m±p,    (3.12)

где М – мантисса числа (|М| < 1); p – порядок числа (p – целое число); m – основание системы счисления.

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

1/m ≤ |M| < 1

Ограничение справа требует, чтобы мантисса представлялась правильной дробью, ограничение слева — чтобы после запятой присутствовала значащая цифра (не 0).

Пример 3.14. Приведенные в примере 3.12 числа в нормальной форме запишутся так:

+0,721355×103; +0,328×10-3; -0,103012026×105.

Нормальная форма представления имеет огромный диапазон отображения чисел и является основной в современных ЭВМ.

Пример 3.15. Диапазон значащих чисел в системе счисления с основанием m при наличии n разрядов у мантиссы и k разрядов у порядка (без учета знаковых разрядов порядка и мантиссы) будет:

,

где pmax=mk-1. При m=2, n=10 и k=6 диапазон чисел простирается примерно от 10-22 (2-10 2-63 = 2-10 × (2-10)6 × 2-3≈ 10-3 × (10-3)6×10 -1) до 1019 ((1 – 2-10 )×263 ≈ (210)6 ×23 ≈ (103)6×10).

  1.  Форматы Представления чисел

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

Каждая из форм записи чисел имеет определенные форматы для каждого типа ЭВМ, составленные из целого количества байт. Длину формата данных измеряют в количестве двоичных разрядов (битах), байтах или в машинных словах. Машинным словом называется информационный объём двоичных данных, одновременно передаваемый внутри ЭВМ от одного узла к другому (по шине данных), и рассматриваемых аппаратной частью ЭВМ как единое целое. Например, в ЕС ЭВМ и в 32-разрядных ПЭВМ используются форматы: полуслово — 2 байта (16 бит), слово — 4 байта (32 бит), двойное слово — 8 байт (64 бит); в СМ ЭВМ и в 16-разрядных ПЭВМ: слово—2 байта, двойное слово — 4 байта.

3.1. Формат с фиксированной точкой

Форматы с фиксированной точкой применяется для представления целых чисел. Обычно используют 2 формата:

  •  с обычной точностью (2 байта, короткий формат, H);
  •  с двойной точностью (4 байта, длинный формат, F)

В первом случае для размещения двоичного кода используют 15 битов, во втором –31 бит. Во всех форматах знак числа занимает место перед старшим разрядом числа и кодируется двоичной цифрой, при этом код 0 означает знак "+", код 1 - знак "-". Это место разрядной сетки называется знаковым разрядом.

Рис. 3.1 Форматы чисел с фиксированной точкой

В IBM PC первые два формата называются целое слово (2 байта) и короткое целое (4 байта). Есть ещё один формат – длинное целое, который использует 8 байтов.

Рассмотрим диапазон представления чисел в коротком 2 байтовом формате (Н) и в длинном 4 байтовом (F) (рис 3.1). В разрядных сетках вместе указаны коды наименьшего и наибольшего значения чисел. Эти коды соответствуют следующим десятичным числам:

в формате Н:

|А|min = 1;

|A|max = 215 – 1 (32767) ≈ 215 = 210×25 ≈ 103×25 = 32×103;

в формате F:

|А|min = 1;

|A|max = 231 – 1 ≈ 231 = (210)3 ×2 ≈ (103)3×2= 2×109

Для сокращения записи двоичных чисел можно использовать шестнадцатеричную систему. Так, в формате Н код |А|min = 0001 ; |A|max = 7FFF, в формате F – |А|min = 00000001, |A|max = 7FFFFFFF.

Важное замечание. Положительные и отрицательные числа представляются в формате с фиксированной точкой в дополнительном коде.

Пример 3.16. В форматах Н и F представить числа A = 173, В - -173

АH = 0.0000000101011012; BH = 1.1111111010100112;

АH = 00AD16 ; BH = FF5316; АF = 000000AD16; BF = FFFFFF5316.

По первой шестнадцатеричной цифре можно определить знак числа Если первая цифра меньше 8, то число положительное, если ее значение oт 8 до F, то отрицательное.

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

3.2. Формат с плавающей точкой

Для представления чисел в нормальной форме используются форматы разной длины. В общем случае в разрядной сетке форматов должны отводиться места для знака мантиссы (старший 31 разряд), знака порядка (предшествующий 30 разряд), значения порядка (например, 6 разрядов как в ЕС ЭВМ, с 29-го по 24-ый), в остальные 24 разряда (с 23-го по 0-ой) записывается мантисса числа. На рис. 4.4 представлена разрядная сетка в формате 4 байта. 

  31 30 29         24 23                               1  0

Рис. 3.2. Примерный формат с плавающей точкой

В различных ЭВМ используются различные форматы с плавающей точкой.

В ЕС ЭВМ используются три формата: короткий Е (4 байта), длинный D (8 байт) и повышенной точности (16 байт). В СМ ЭВМ, а также в некоторых мини и микроЭВМ, например PDP-11, используются 2 формата: с обычной точностью (4 байта) и с двойной точностью (8 байт). Особенностями нормальной формы в ЕС и СМ ЭВМ являются следующие:

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

В ЕС ЭВМ во всех форматах 7 разрядов отводится под значение порядка и его знак. Следовательно, числовая ось порядков находится в диапазоне -26P ≤ 26-1 или -64 ≤ P ≤ 63.

Смещенный порядок, называемый характеристикой, определяется смещением порядка на +26 = 6410 = 4016, т.е. характеристика Рх = Р + 4016 не имеет знака.

Характеристика может принимать значения в диапазоне 0 ≤ Рх ≤ 12710 = 7F16, и под ее значение отводятся 7 разрядов (27-1 = 127). Очевидно, если Рх = 4016,то Р = 0, если Рх < 4016 ,то порядок отрицательный (Р < 0), при Рх > 4016 — порядок положительный (Р > 0).

Максимальное число в формате Е: |A|max = (1 – 2-24 )×263 ≈ (210)6 ×23 ≈ (103)6×23 = 8×1018

В СМ ЭВМ в разрядной сетке под порядок отводится 8 двоичных разрядов (-27P ≤ 27-1), под мантиссу — 23 (в формате двойной точности – 55 разрядов). Здесь также используется беззнаковый порядок, смещенный на 27=12810=2008=8016, который меняется в диапазоне 0 ≤ Pх ≤ 25510 = 3778 = FF16.

Максимальное число в СМ ЭВМ в формате обычной точности при Рmax =127 имеет значение:

|A|max = (1 – 2-23 )×2127 ≈ (210)12 ×27 ≈ (103)12×102 = 1038

Остальные форматы отличаются только разрядностью мантиссы.

2). В СМ ЭВМ есть еще одна особенность форматов с плавающей точкой. Так как старшая цифра нормализованной мантиссы должна быть 1, то это позволяет не хранить её, а только предполагать её наличие. Такое представление как бы увеличивает разрядность мантиссы (т.е. в операциях участвуют 24 (для чисел одинарной точности) и 56 разрядов (для чисел двойной точности)) а значит и точность расчетов.

Пример 3.17. Представим в разрядной сетке формата обычной точности два числа: А = 32008,510 = 7D08,8 и  В = -32008,510 = -7D08,8.

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

Для В ЕС ЭВМ: MA = 0,7D088, РхA =40 + 4 = 44;

MB = - 0,7D088, РxB = 40 + 4 = 44 (см. рис. 4.5).

Рис. 3.3. Представление чисел в формате Е

Для СМ ЭВМ: MA = 0,FA11, РA =80 + F = 8F;

                   MB = - 0,FA11, РA = 80 + F = 8F.

После учета скрытого разряда мантисса будет иметь вид:

MA = 0,F422, MB = - 0,F422.

В IBM PC (с процессором Intel 80x86) используется 3 формата с плавающей точкой:

  •  короткое вещественное (КВ, 4 байта, смещенный порядок занимает 8 бит, мантисса – 23 бита, single);
  •  длинное вещественное (ДВ, 8 байтов, смещенный порядок занимает 11 бит, мантисса – 52 бита, double);
  •  временное вещественное (ВВ, 10 байтов, смещенный порядок занимает 15 бит, мантисса – 64 бита, extended).

Особенностями нормальной формы в IBM PC являются следующие:

  1.  Мантисса всегда записывается в виде: 1,m1m2… Т.е. целая часть всегда равна 1 и в форматах КВ и ДВ прямо в мантиссе не представляется, а учитывается неявно при выполнении операций. В формате ВВ старший бит мантиссы представляется явно.
  2.  Порядок также записывается в смещенном виде, однако величина смещения в разных форматах разная:
    •  в КВ – 27-1=12710=1778=7F16,
    •  в ДВ – 210-1=102310=17778=3FF16,
    •  в ВВ – 214-1=1638310=377778=3FFF16.

Отсюда величина смещенного порядка лежит в пределах:

  •  в КВ – 0 ≤ Pх ≤ 25410 = 3768 = FE16,
  •  в ДВ – 0 ≤ Pх ≤ 204610 = 37768 = 7FE16,
  •  в ВВ – 0 ≤ Pх ≤ 3276610 = 777768 = 7FFE16.

Получается, что для представления вещественных чисел используется только часть значений порядка. Так например, в форматах КВ и ДВ значение порядка FF16 и 7FF16 используется для кодирования ±∞, при этом в поле мантиссы все нули (+∞, если бит знака 0, -∞, если бит знака 1) и для обозначения «не чисел» (NANnot a number), когда в поле мантиссы не нулевое значение.

Формат КВ (как и формат обычной точности в СМ ЭВМ) позволяет представить максимальное число ≈1038, формат ДВ уже – ≈10308, а формат ВВ – ≈104932. Точность представления чисел приближенно соответствует:

  •  в КВ – 7-8 значащих десятичных цифр,
  •  в ДВ – 15-16 значащих десятичных цифр,
  •  в ВВ – 19-20 значащих десятичных цифр.

Формат ВВ обеспечивает максимальный рабочий диапазон значений вещественных чисел и является основным: в нем выполняются все операции арифметическим сопроцессором.

3.3. Двоично-десятичный код

В двоично-десятичной (BCDBinary-Coded Decimal) или более точно двоично-кодированной десятичной системе (ДКДС) каждую цифру десятичного числа представляют в виде 4-х разрядного двоичного числа (тетрады) и в таком виде записывают последовательно друг за другом. Этот код может оказаться полезным, когда нужно преобразовать строку числовых знаков «3478» в число 3478, над которым затем будут производиться арифметические действия.

Пример 3.18. Десятичное число 9703 в двоично-десятичной системе выглядит так:

1001 0111 0000 0011.

Расширением двоично-десятичного кода является расширенный двоично-десятичный код обмена информацией (EBCDICExtended Binary-Coded Decimal Interchange Code), который преобразует как числовые, так и буквенные строки.

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

ЭВМ (в том числе семейства Intel 80x86) поддерживают работу с двумя форматами двоично-десятичных чисел - упакованным и неупакованным (распакованным) форматами.

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

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

Неупакованные двоично-десятичные числа, также как и упакованные, занимают один байт, однако в одном байте записывается одна десятичная цифра. Эта цифра записывается в младшей тетраде байта, значение старшей обычно не существенно (можно как в коде EBCDIC использовать 0011 или для удобства отладки, в старшую тетраду байта лучше записать нули). Это значит, что с помощью неупакованного формата можно записать в одном байте десятичное число от 0 до 9.

Распакованный формат используется в ПК при вводе-выводе информации в ПК, а также при выполнении операций умножения и деления двоично-десятичных чисел. Распакованный формат представления двоично-десятичных чисел (иногда его называют "зонный") является следствием использования в ПК ASCII-кода для представления символьной информации.

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

  1.  Выполнение арифметических операций с числами с фиксированной и плавающей запятой

Как вы уже знаете в ЭВМ все арифметические операции над числами сводятся к операциям арифметического сложения и сдвигу их кодов вправо или влево. При этом учитываются знаки чисел, автоматически определяется знак результата и признаки возможного переполнения разрядной сетки заданных форматов.

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

4.1. Действия над числами, представленными в естественной форме (с фиксированной запятой)

При сложении кодов чисел в естественной форме следует учитывать следующие положения:

1) числа хранятся в памяти в дополнительном коде;

2) в сумматоре числа складываются вместе со знаками, при этом образуется знак результата;

3) при сложении чисел с разными знаками единица переноса из знакового разряда стирается, то есть компенсируется одна константа образования дополнительного кода;

4) при сложении чисел с одинаковыми знаками возможно переполнение разрядной сетки, его признаками являются:

а) знак суммы не соответствует знакам слагаемых;

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

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

Пример 3.19. Дано А = 254, В = 175. Найти сумму чисел при разных знаках слагаемых в 16-ти разрядном формате (обычной точности).

Решение.

а) представим исходные числа в двоичной системе счисления A = 25410 = FE16 = 111111102                       В = 17510 = AF16 = 101011112.

б) составим машинные коды этих чисел с разными знаками

[А]пр  = 0.000000011111110;                   [В ]пр = 0.000000010101111.

[-A]доп= 1.111111100000010;                  [-B]доп= 1.111111101010001.

в) выполнение действий:

С1 = А + В                                    С2 = А - В

[А]пр = 0.000000011111110                     [А]пр =   0.000000011111110

[В]пр = 0.000000010101111                      [-B]доп= 1.111111101010001

[C1]пр = 0.000000110101101 > 0              [C2Jпр =10.000000001001111>0

Сз = В - А                                  С4 = -А-В

[В ]пр =  0.000000010101111              [-A]доп =  1.111111100000010

[-A]доп = 1.111111100000010              [-B]доп =  1.111111101010001

[-С3]доп =1.111111110110001<0         [-С4]доп =11.111111001010011<0

Из примера следует:

1) При получении сумм слагаемых с одинаковыми знаками (C1 и С4) переполнение разрядной сетки не произошло, т. к. знак суммы соответствует знакам слагаемых и переносы в знаковый и из знакового согласуются.

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

3) Суммы C1 и С2 — положительные, СЗ и С4 — отрицательные, т. е. знаки результатов получены автоматически при сложении чисел со знаками.

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

Проверка. Для этого следует перевести полученные суммы любым способом в десятичную систему и сравнить с заданием. С1 = 110101101 = 1 × 28+ 1 ×27 + 1 × 25+ 1 × 23+ 1 × 22+ 1 × 2° = 256 + 128 + 32 + 8 + 4 + 1= 429; (С =254+ 175 = 429).

С2= 1001111 =4F = 4 × 16+15 = 79; (С = 254 - 175 = 79).

С3 = -1001111 =-[(((((1 × 2 + 0)2 + 0)2 + 1)2 + 1)2 + 1)2 + 1] = -79.

С4 = -110101101 =-1AD = -[(1 × 16 +10) 16 +13] = -429.

Пример 3.20. Дано А = 25756, В = 7125. Найти суммы положительных и отрицательных значений в 16-ти разрядном формате.

Решение. А = 2575610 = 649C16 = 1100100100111002; В = 712510 = 1BD516 = 11011110101012.

С1=А+В                                    С2 =-А - В

[А]пр = 0.110010010011100                       [-A]доп = 1.001101101100100

[В]пр = 0.001101111010101                        [-B]доп =1.110010000101011

[C1]пр =1.000000001110001<О                   [C2Jпр =10.111111101001111>0

Полученные суммы не соответствуют ожидаемым результатам, т. к. произошло переполнение разрядной сетки за допустимые значения (32767). Переполнение разрядной сетки легко определить либо по первому признаку — знаки сумм C1 и С2 не соответствуют знакам слагаемых, либо по второму — переносы в знаковый и из знакового разряда в суммах C1 и С2 не согласуются. В этих случаях в больших ЭВМ вырабатывается запрос на прерывание программы, в некоторых типах малых ЭВМ производится автоматический переход к нормальной форме представления данных а в персональных обычно производится автоматическое ограничение числа.

Замечание. Операции умножения и деления производятся над абсолютными значениями чисел — в прямом коде, знак произведения определяется сложением по модулю 2 знаков сомножителей (0 + 0 = 0, 1+0 = 1, 1 + 1 = 0), знак частного — сложением по модулю 2 знаков делимого и делителя, а знаку остатка присваивается знак делимого.

4.2. Действия над числами, представленными в нормальной форме (c плавающей запятой)

При алгебраическом сложении чисел, представленных в нормальной форме, необходимо учитывать:

1. Числа в нормальной форме хранятся в памяти в прямом коде с нормализованными мантиссами и смещенными порядками.

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

Пусть ,  и РА > РB, тогда разность порядков ΔР= РА - РB и РB = РА - ΔР

где  – мантисса, приведенная к большему порядку путем ее сдвига вправо на ΔР разрядов основания m.

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

4. Результаты в прямом коде нормализуются.

5. Действия в сумматоре выполняются только над кодами мантисс, которые поступают из регистров в младшие 24 (0-23) разряда сумматора (для ЕС и СМ ЭВМ), знаки мантисс и значения порядков заносятся в специальные схемы, которые обеспечивают выравнивание порядков, нормализацию мантиссы результата, формирование знака и порядка суммы. В старшие 8 разрядов (31—24) сумматора записываются нули.

6. Алгоритмы операции алгебраического сложения после выравнивания порядков зависят от знаков слагаемых:

а) Если знаки слагаемых одинаковы (положительные или отрицательные), то модули мантисс (прямые коды) суммируются. Переполнение определяется наличием переноса 1 из старшего разряда мантиссы в поле характеристики (в 25-ый разряд сумматора для СМ ЭВМ), что вызывает нарушение нормализации мантиссы влево. Нормализация результата производится сдвигом мантиссы на один бит вправо, при этом порядок результата увеличивается на 1. После этого в регистре результата сумматора формируется результат операции: из схем анализа знаков и порядков заносятся в 31-ый разряд знак одного из слагаемых, в 30-23 разряды — порядок, а в 22—0 разрядах сохраняется мантисса суммы в прямом коде с учетом скрытой единицы.

б) Если знаки слагаемых различны, то отрицательная мантисса преобразуется в дополнительный код и мантиссы суммируются. Признаком положительного результата является перенос 1 из старшего разряда мантиссы в поле характеристики (25-ый разряд суммы), которая стирается. Признаком отрицательного результата является отсутствие переноса 1 в 25-ый разряд, при этом мантисса суммы представлена в дополнительном коде и должна быть преобразована в прямой код. При сложении кодов чисел с разными знаками может произойти нарушение нормализации мантиссы суммы вправо (старший бит мантиссы в прямом коде равна нулю).

Нормализация мантиссы суммы производится сдвигом ее влево на один биту и уменьшением порядка на единицу. После этого в регистре сумматора формируется результат: в 31-ый разряд заносится знак большего по модулю слагаемого, в 30—23 разряды — порядок и в 22—0 разряды мантисса результата в прямом коде с учетом скрытой единицы.

Реализацию этих положений рассмотрим на примерах.

Замечание. При действиях над кодами мантисс знаки не указываются, перед старшим разрядом мантиссы через запятую сверху записывается два шестнадцатеричных нуля вместо характеристики и знака мантиссы.

Пример 3.21. Дано: .  Найти С1 = А + В, С2 = -А - В.

Решение. А = F,Е16; В = 0,516 = 0,01012. Рассмотрим решение применительно к формату обычной точности СМ ЭВМ.

а) Нормализация мантисс (с учетом скрытых единиц) и определение смещенных порядков (характеристик): MA = 0,FD; PхA = 80 + 4 = 84;    MB = 0,4; РхB = 80 -1 = 7F.

б) Выравнивание характеристик ΔP = 84-7F=5;

.

в) Выполнение действий (при этом учитывается скрытая единица)

1) C1=A + B

[MA]пр=  00’FE0000;     РхA = 84

[M*B]пр=  00’050000;     РxB = 84

[MC1]пр= 01’030000;     РхC1 = 84

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

Нормализация мантиссы

[MC1]пр = 00’818000; РC1= 84 + 1 = 85

Проверка. =10000,00112

В разрядной сетке регистра сумматора формируется результат действия: заносятся знак результата (+), характеристика (85) и сохраняется мантисса в прямом коде c учетом скрытой единицы.

Ответ. C1  0 10000101 00000011000000000000000

                 Зн    PxC1                   MC1

или С1  42818000

2) С2 = -А - В

Так как числа А и В и результат С2 хранятся в прямом коде, то нет необходимости выполнять двойное преобразование: данных в дополнительный, а результата в прямой коды. Поэтому действие выполняется С2 = -(А + В), т. е. производится сложение прямых кодов мантисс, а результату приписывается знак одного из чисел (минус), то есть С2 = - С1.

Ответ. C2  1 10000101 00000011000000000000000

                 Зн    PxC2                   MC2

или С2  C2818000

Пример 3.22. Дано: .  Найти С3 = А - В, С4 = -B - A.

Решение. А = F,Е16; В = 0,516= 0,01012. Опять рассмотрим решение применительно к формату обычной точности СМ ЭВМ.

а) Нормализация мантисс и определение характеристик:

MA = 0,FD; PхA = 80 + 4 = 84;

MB =0,416;   РхB = 80 -1 = 7F.

б) Выравнивание характеристик ΔP = 84-7F=5;

.

в) Выполнение действий

1) C3=A - B

[MA]пр=  00’FE0000;     РхA = 84

[-M*B]доп=  1,00 - 0,05=0,FB = 00’FB0000;     РxB = 84

[MC3]пр= 00’F90000;     РхC1 = 84

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

Проверка. =1111,10012

В разрядной сетке регистра сумматора формируется результат действия: заносятся знак результата (+), характеристика (84) и сохраняется мантисса в прямом коде c учетом скрытой единицы.

Ответ. C3  0 10000100 11110010000000000000000

                 Зн    PxC3                   MC3

или С3 42790000

2) С4= В - A

[M*B]пр=   00’050000;     РxB = 84

[-MA]доп=  1,00 - 0,FE=0,02 = 00’020000;     РxA= 84

[MC4]доп = 00’070000<0;  РхC4 = 84

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

[MC4]пр = 1,00 – 0,07= 0,F9=00’F90000; РхC4 = 84.

Проверка. С4 = -F,9 = -.

Ответ (c учетом скрытой единицы): С4 1 10000100 11110010000000000000000

или С4 С2790000.

Пример 3.23. Дано А = 129, В = . Найти C1 = A – B, C2 = B - A.

Решение. А = 8116, В = 73,С16

Будем выполнять действия применительно к IBM PC.

а) Нормализация мантисс и определение характеристик

MA = 1,02;  PхA = 7F + 7 = 86; c учетом скрытой единицы MA = 0,02

MB = 1,CF;  РхB = 7F + 6 = 85, c учетом скрытой единицы MB = 0,CF

б) Выравнивание характеристик ΔP = 86-85=1;

.

в) Выполнение действий

1) С1 = А - В

[MA]пр=  01’020000;     РхA = 86

[-MB]доп=  2,000 - 0,E78=1,188 = 01’188000;     РxB = 86

[MC1]доп= 021A8000 > 0    РхC1 = 86

Единица переноса стирается, результат положительный, но произошло нарушение нормализации вправо.

Нормализация мантиссы

[MC1]доп= 01’A80000     РхC1 = 86 - 4 = 82

Проверка. C1= D,4 = =1101,012

Ответ (c учетом скрытой единицы): C1  0 10000010 10101000000000000000000 или C1 = 41540000.

2) С2 = В - А

[M*B]пр=   00’E78000;     РxB = 86

[-MA]доп=  2,00 - 1,02 = 00’FE0000;     РxA= 86

[MC2]доп = 01E58000 <0;  РхC2 = 86 

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

[MC2]пр = 2,000 – 1,E58= 0,1A8 = 00’1A8000; РхC2= 86.

Старший бит мантиссы равно нулю — нарушение нормализации вправо.

Нормализация мантиссы [MC2]пр = 01’А80000; РхC2= 86-4 = 82.

Ответ. С2  1 10000010 10101000000000000000000 или С2 = C1540000.

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


 

А также другие работы, которые могут Вас заинтересовать

79968. ОСНОВНЫЕ ДЕТАЛИ И СБОРОЧНЫЕ ЕДИНИЦЫ МАШИН И ОБОРУДОВАНИЯ 270 KB
  Механическими передачами или просто передачами называют механизмы для передачи энергии от машины – двигателя к машинеорудию как правило с преобразованием скоростей моментов а иногда с преобразованием видов движения. Передачи между машинойдвигателем и машинойорудием вводят по следующим причинам: скорость исполнительного органа в процессе работы машиныорудия необходимо изменять например у автомобиля грузоподъемного крана токарного станка а скорость машиныдвигателя чаще постоянна например у электродвигателей; нередко от...
79969. Основні завдання, які необхідно вирішувати в технологічній частині дипломної роботи магістра і бакалавра 369 KB
  Студент вивчає виробничий і технологічний процеси цеху заводу для чого використовує технологічні регламенти виробництва деталей будівельних матеріалів хімічних продуктів маршрутні і операційні карти обробки деталей. При описі технологічної частини проектів виконуваних за даними машинобудівних підприємств розробка технологічного заходу супроводжується необхідними розрахунками складанням маршрутних карт поопераційних карт визначенням штучного часу обробки заготовок деталей штучнокалькуляційного часу. Методичні рекомендації до...
79970. Общие принципы построения технологий 146.5 KB
  Общие принципы построения технологий Введение Обычно под производством понимают процессы создания чеголибо материального или духовного для удовлетворения потребностей. Общим для технологий всех видов есть то что они являются продуктом умственной деятельности человека. Неоценимо значение технологий так как им принадлежит определяющая роль в обеспечении качества и конкурентоспособности продукции они являются важнейшим фактором в развитии общества. Проведение глубоких качественных преобразований в экономике возможно лишь на базе современных...
79971. Технологические системы и современное производство 145.5 KB
  Технологические системы и современное производство Понятие ldquo;технологическая системаrdquo; Следствием НТП является интенсификация всех сфер производства и формирование высоко эффективных технологических систем на основе новой техники. Такие системы не изолированы они включают также людей участвующих в процессе взаимодействуют с окружающей средой гео био атмосферой и другими внешними системами. Отношение между элементами определяется целью то есть результатом действия системы в виде объекта предмета энергии информации...
79972. Основы создания ресурсосберегающих и безотходных технологий 55 KB
  Основы создания ресурсосберегающих и безотходных технологий Значение материальных ресурсов в жизнедеятельности человека Для производства требуемого продукта необходимо взаимодействие трех составных частей: рабочей силы предметов труда сырье материалы полуфабрикаты комплектующие энергоресурсы информация и др. Отсутствие или ограниченное наличие какогонибудь из перечисленных ресурсов создает общенациональную или даже глобальную проблему связанную с экономической независимостью государства и нации. Решение экономических социальных и...
79973. Основы технологий машиностроительного производства 112 KB
  С технологической точки зрения сборочная единица собирается отдельно независимо от других элементов и в дальнейшем в процессе сборки выступает как одно целое. Производственный и технологический процессы Производственный процесс – это совокупность взаимосвязанных действий человека и оборудования направленных на превращение исходных сырья материалов полуфабрикатов в готовое изделие соответствующее определенному служебному назначению. В производственный процесс входят основной и вспомогательный процессы. Основные процессы – это те...
79974. Качество продукции машиностроения 464 KB
  При изготовлении заготовок при механической обработке контроле сборке возникают различного рода погрешности как отклонения параметров от требуемых. В зависимости от причин их вызывающих погрешности можно разделить на следующие виды: систематические постоянные и изменяемые закономерно и случайные. Систематические постоянные погрешности не изменяются при обработке заготовок в одной партии. Они возникают под воздействием постоянно действующих факторов погрешности оборудования оснастки управляющих программ станков с ЧПУ.
79975. Технологические средства повышения конкурентоспособности машиностроительной продукции 499.5 KB
  Базы поверхности заготовки ориентирующие ее при установке на станке. Технологические базы – поверхности определяющие положение заготовки в процессе обработки. Черновые технологические базы – это поверхности заготовки которые применяются на первых операциях при первом установе когда нет обработанных поверхностей. При установке заготовки в приспособлении для выполнения технологической операции должно обеспечиваться ориентирование осуществляемое базированием и неподвижность достигаемая закреплением заготовки.
79976. Основы проектирования технологических процессов материального производства 63.5 KB
  Разрабатываемый технологический процесс должен оптимально сочетать наиболее полные возможности оборудования режущего инструмента приспособления и другой технологической оснастки при оптимальных режимах обработки минимальных затратах то есть при наименьшей технологической себестоимости. Технологический процесс должен использовать прогрессивные методы обработки удовлетворять требованиям чертежей и техническим условиям должен быть гибким обеспечивать повышение производительности культуры производства экологической безопасности....