Студентам > Рефераты > Вычислительные машины и системы
Вычислительные машины и системыСтраница: 4/12
- для образования обратного кода отрицательного числа
необ-
ходимо в знаковом разряде поставить единицу, а все
цифровые раз-
ряды инвертировать.
Примечание: при данных преобразованиях нужно
учитывать раз-
мер разрядной сетки.
Прямой код можно получить из дополнительного и
обратного по
тем же правилам, которые служат для нахождения
дополнительного и
обратного кодов.
Замена вычитания двоичных чисел A 41
0- 4 0A 42 0 сложением с дополне-
ниями [A 41 0] 4пр 0+ 4
0[-A 42 0] 4доп 0 или [A 41 0] 4пр
0+ 4 0[-A 42 0] 4обр 0 позволяет опериро-
вать со знаковыми разрядами так же, как и с цифровыми.
При этом
перенос из старшего знакового разряда, если он
возникает, учиты-
вается по разному для обратного и дополнительного кодов:
- при использовании дополнительного кода единица
переноса из
- 5 -
знакового разряда отбрасывается;
- при использовании обратного кода единица переноса
из зна-
кового разряда прибавляется к младшему разряду суммы
(осуществля-
ется так называемый циклический перенос).
Пример: складываем числа A 41 0=0,10010001
и A 42 0=-0,01100110
При использовании обратного кода получим:
[A 41 0] 4пр 0 = 0,10010001
+
[A 42 0] 4обр 0 = 1,10011001
───────────
10,00101010
└─────── +1
───────────
Результат: 0,00101011
При использовании дополнительного кода получим:
[A 41 0] 4пр 0 = 0,10010001
+
[A 42 0] 4доп 0 = 1,10011010
───────────
Результат: 0,00101011
Если знаковый разряд результата равен нулю, то в
получено
положительное число, которое представлено в прямом
коде. Если в
знаковом разряде единица, то результат отрицательный и
представ-
лен в обратном или дополнительном коде.
Для того, чтобы избежать ошибок при выполнении
бинарных опе-
раций, перед переводом чисел в обратные и дополнительные
коды не-
обходимо выравнивать количество разрядов прямого кода
операндов.
При сложении чисел, меньших единицы, в машине быть
получены
числа, по абсолютной величине большие единицы. Для
обнаружения
переполнения разрядной сетки в ЭВМ применяются 2
модифицированные
прямой, обратный и дополнительный коды. В этих кодах знак
кодиру-
ется двумя разрядами, причем знаку "плюс"
соответствует комбина-
ция 00, а знаку "минус" - комбинация 11.
Правила сложения для модифицированных кодов те же,
что и для
обычных. Единица переноса из старшего знакового разряда в
модифи-
цированном дополнительном коде отбрасывается, а в
модифицирован-
ном обратном коде передается в младший цифровой разряд.
Признаком переполнения служит появление в знаковом
разряде
суммы комбинации 01 при сложении положительных чисел
(положитель-
ное переполнение) или 10 при сложении отрицательных
чисел (отри-
цательное переполнение). Старший знаковый разряд в этих
случаях
- 6 -
содержит истинное значение знака суммы, а младший
является стар-
шей значащей цифрой числа. Для коррекции переполнения
число нужно
сдвинуть в разрядной сетке на один разряд вправо, а в
освободив-
шийся старший знаковый разряд поместить цифру, равную
новому зна-
чению младшего знакового разряда. После корректировки
переполне-
ния мантиссы результата необходимо увеличить на единицу
порядок
результата.
ПЕРВЫЙ СЕМЕСТР
ЛЕКЦИЯ N 3
2ОСНОВЫ МАШИННОЙ АРИФМЕТИКИ
2Формы представления чисел в
ЭВМ 0
2(продолжение)
Система вещественных чисел, применяемая при ручных
вычисле-
ниях, предполагается бесконечной и непрерывной, т.е. не
существу-
ет никаких ограничений на диапазон используемых чисел и
точность
их представления.
Однако в компьютерах реализация такой системы на
аппаратном
уровне была бы нецелесообразной, хотя программно может
быть реа-
лизована любая точность вычислений. Нецелесообразность
аппаратной
реализации вычислений с произвольной точностью вызвана
тем, что
такие вычисления требуют неоправданно большого расхода
основных
машинных ресурсов: памяти и процессорного времени.
Во всех компьютерах размеры регистров и ячеек
памяти фикси-
рованы, что ограничивает систему представления чисел.
Ограничения
касаются как диапазона, так и точности представления
чисел, т.е.
система машинных чисел оказывается конечной и дискретной.
В любой универсальной ЭВМ существует несколько
различных
форматов представления как для чисел с фиксированной,
так и для
чисел с плавающей запятой. На некоторые из форматов
имеются меж-
дународные стандарты, и поэтому такие форматы являются
общими для
ЭВМ, построенных различными фирмами на различной
элементной базе.
Следует отметить, что нестандартные форматы обычно
являются неяв-
но специализированными для определенных областей
применения, при-
чем разработчики аппаратуры могут не указать в
документации, для
чего был предназначен тот или иной формат.
С точки зрения программиста важно, какие из
форматов данных
обрабатываются аппаратными средствами данной ЭВМ, а какие
- толь-
ко программными средствами. Операции над данными любого
формата,
который не поддерживается аппаратурой, выполняются очень
медлен-
но. Любой формат данных, который превышает размер
регистров про-
цессора, не пригоден для быстрых вычислений.
Для представления 2целых чисел 0 в ЭВМ
обычно применяются 8-,
16-, 32- и 64-битовый стандартные форматы, причем
интерпретация
чисел как знаковых или беззнаковых обычно возлагается на
програм-
миста или на компиллятор с языка высокого уровня.
.
- 2 -
Для представления 2 чисел с плавающей
запятой 0 также существует
несколько стандартных форматов, различающихся по
точности, но
имеющих одинаковую структуру следующего вида:
n-1 n-2 0
┌───╥───┬───┬─────┬───╥───┬───┬─────┬───┐
│ ║ │ │ ...
│ ║ │ │ ... │ │
└───╨───┴───┴─────┴───╨───┴───┴─────┴───┘
│
└────────╥────────┘└────────╥───────┘
│ смещенный модуль
знак порядок мантиссы
мантиссы
Порядок p задается в так называемой смещенной
форме: если
для задания порядка выделено k разрядов, то к истинному
значению
порядка прибавляют смещение, равное
(2 5k-1 0 - 1). Использование
|