Cтраница 1
Упакованный формат используется, в основном, в командах, выполняющих арифметические операции: сложение, вычитание, умножение, деление л сравнение. Зонный формат удобен для представления десятичных чисел, вводимых с перфокарт, перфолент и др. Для перевода чисел из зонного формата в упакованный и наоборот в десятичной арифметике предусмотрены специальные команды. [1]
Упакованный формат применяется обычно в ЭВМ при выполнении арифметических операций сложения, вычитания, умножения, деления и сравнения. [2]
Упакованный формат позволяет значительно сократить объем памяти для хранения чисел. [3]
Упакованный формат представления десятичных чисел позволяет эффективно использовать ОП, уменьшить процесс выполнения арифметических операций и ускорить процесс обмена информацией между ОП и периферийными устройствами. [4]
![]() |
Коды десятичных цифр и знаков. [5] |
Десятичный упакованный формат позволяет рационально использовать память машины при экономических расчетах и дает возможность выполнять арифметические операции без предварительного преобразования чисел в двоичный формат с фиксированной или плавающей запятой. Упакованный формат показан на рис. 3.4. Допускается переменная длина поля, но не более 16 байтов, что эквивалентно 31 десятичной цифре и знаку. Числа рассматриваются как целые числа со знаком; отрицательные целые числа представляются в прямом коде. [6]
Использование упакованного формата приводит к более эффективному использованию памяти, уменьшению времени выполнения арифметических операций и к ускорению процесса обмена информацией между памятью и внешними устройствами. Десятичное число всегда занимает целое число байтов. Если левые четыре разряда старшего байта свободны, они заполняются нулями. [7]
В упакованном формате десятичное число может иметь длину от 1 до 16 байтов. [8]
![]() |
Структуры распакованного ( а и упакованного ( б форматов для представления многоразрядных десятичных чисел. [9] |
В упакованном формате десятичное число занимает целое число байтов и может иметь длину 1 - 16 байтов. Знак числа кодируется в правой тетраде младшего байта формата. [10]
В упакованном формате в каждом байте располагаются две десятичные цифры. Исключение составляет самый правый байт, в котором справа от цифры помещен знак. [11]
![]() |
Представление десятичных чисел. [12] |
В упакованном формате каждый байт содержит код двух десятичных цифр. Десятичное число должно занимать целое число байтов. Если это условие не выполняется, то левая тетрада левого байта заполняется нулями. Для представления десятичных чисел в памяти используется прямой код. [13]
В упакованном формате младшие, правые крайние, байты операндов содержат знаковые тетрады. Эти тетрады ( крайние правые в младших байтах) перед началом сложения или вычитания сравниваются. Если знаки одинаковые, то по команде СЛОЖИТЬ десятичные числа складываются в прямом коде. Результату присваивается знак операндов. При несовпадающих знаках в различных моделях ЭВМ действия выполняются по-разному. Например, в модели ЕС-1030 операнды перед сложением сравниваются друг с другом по абсолютной величине, затем из большего вычитается меньший, и результату присваивается знак большего операнда. Результат всегда получается в прямом коде. В модели ЕС-1050 предварительное сравнение операндов не производится, а всегда при разных знаках из первого операнда вычитается второй, для чего первый операнд в прямом коде складывается с дополнительным кодом второго. Код результата устанавливается по наличию или отсутствию переноса из его старшего байта. Если при разных знаках операндов есть перенос, то это означает, что результат получился в прямом коде, в противном случае - В дополнительном. [14]
![]() |
Пример кодирования на перфокарте. [15] |