Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
АРХ. ИНФ. СИСТЕМ / ПОСОБИЕ .docx
Скачиваний:
24
Добавлен:
19.05.2015
Размер:
349.85 Кб
Скачать

6.1. Символьный формат «с»

Формат «С» – это формат переменной длины. Переменные, объявленные в данном формате, могут занимать поля ОП от 1 до 32 778 байтов. Каждый байт используется для внутри машинного представления одного из 196 символов кода ДКОИ. Макрокоманда DСL для переменной, которая должна быть объявлена в символьном формате, имеет следующий вид:

DСL [ Имя переменной ] CHARACTER (n),

где n – длина поля ОП, закрепленного за переменной, объявленной в символьном формате, в байтах, 1 ≤ n ≤ 32 778.

6.2. Десятичный формат «р»

Формат «Р» – это формат переменной длины, предназначен для записи в ОП целых десятичных чисел со знаком. Переменные, объявленные в данном формате, могут занимать поля от 1 до 8 байтов ОП. Макрокоманда DСL для переменной, за которой закрепляется десятичный формат «Р», имеет следующий вид:

DСL [ Имя переменной ] FIXED DECIMAL (n),

где n – длина поля ОП, закрепленного за переменной, объявленной в десятичном формате, в байтах, 1 ≤ n ≤ 8.

Запись числа в ОП в формате «Р» осуществляется следующим образом: знак числа записывается в правые четыре бита старшего байта поля ОП, закрепленного за переменной, в левые четыре бита записывается двоичное представление младшей цифры числа, остальные цифры записываются справа налево (в сторону возрастания весовых коэффициентов) по две в каждый байт. Незаполненные тетрады заполняются «0». Кодировка знака числа осуществляется 16-ричными цифрами: знак «+» кодируется цифрой «С», знак «–» – цифрой «D». Особенностью формата «Р» является тот факт, что старшие по весовым коэффициентам десятичные цифры, для которых не хватило места в байтах поля ОП, зарезервированного за данной переменной, отбрасываются. В результате при выполнении операции присваивания в ОП может быть записано совершенно не то число, которое находится справа от знака равенства. В связи с этим необходимо внимательно относиться к оценке значений переменных, объявленных в формате «Р», и правильно выбирать параметр формата «n».

6.3. Целые двоичные числа – форматы «н» и «f»

Форматы «Н» и «F» являются форматами постоянной длины. Формат «Н» имеет длину 2 байта, формат «F» – 4 байта (рис. 6.2). Для регистрации знака числа используется «0»-ой разряд. Знак числа «+»

0 1 7

8 15

a)

0 1 7 8 15 16 23 24 31

б)

Рис.6.2. Структура форматов данных «H» и «F»

кодируется значением «0», знак «–» – значением «1». Числа в форматах «Н» и «F» записываются в ОП в дополнительных кодах. В разрядах с 1-го по 15-й для формата «Н» и с 1-го по 31-й для формата «F» записывается цифровая часть дополнительного кода числа. Запись цифровой части числа осуществляется справа налево, начиная с разрядов 15-ого и 31-ого разрядов, в сторону возрастания их весовых коэффициентов. Нехватка разрядов цифровой части числа соответствует ситуации «переполнение разрядной сетки» – попытке зафиксировать в поле переменной, за которой закреплен формат «Н» или «F», числа, большего по значению верхнего значения диапазонов форматов «Н» или «F». В подобной ситуации необходимо выбрать для переменной другой «формат данных».