Л. Партыка, И. И. Попов системы управления базами данных


Для N = -1100, [N] доп = 1,0100



бет13/215
Дата29.01.2022
өлшемі4,64 Mb.
#115817
1   ...   9   10   11   12   13   14   15   16   ...   215
Байланысты:
Голицына О Л Партыка Т Л Попов И И Системы

Для N = -1100, [N] доп = 1,0100;

Для N = -0000, [N] доп = 10,0000= 0,0000 (1 исчезает)

 Неоднозначности в изображении 0 нет.

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

Типы, структуры, форматы данных и документов в информационных системах



Типы данных — это совокупность соглашений о программно-аппаратурной форме представления и обработки, а также ввода, контроля и вывода элементарных данных.

Структуры данных — способы композиции простых данных в агрегаты и операции над ними.

Форматы файлов — представление информации на уровне взаимодействия операционной системы с прикладными программами.

Типы данных (табл. 1.7). Ранние ЯП, а точнее, системы программирования (СП) — Фортран, Алгол, будучи ориентированными исключительно на вычисления, не поддерживали развитых систем типов и структур данных.

Таблица 1.7. Типы и структуры данных в некоторых системах программирования и управления данными

 

Система- язык программирования, СУБД, ИПС

Данные

Algol

Cobol

PL/1

FoxBase/ Clipper

Adabas/ Natural

Oracle/ SQL

STAIRS, IRBIS, ISIS

 

Целое короткое (2 байта)

-

-

-

-

-

Small-int

-

 























Целое норм. (4 байта)

Integer

Compu­tational

Int

N(x)

N(x)

Int

-

 























Целое длинн. (8 байт)

-

-

Double

-

-

-

-

 























Действительное норм. (4 байта)

Real

Compu­tational

Float

N(x.y)

N(x.y)

Float Real

-

 























Действ, двойное (8 байт)

-

-

-

-

-

Roat Double

-

 























Двоичное

-

-

Binary

-

B(xj

-

-

 























Десятичное упакованное (2 цифры на байт)

-

PIC(9)

Decimal

-

P(x)

-

-

 


























Десятичное распакован­ное (1 цифра на байт)

-

PIC(X)

-

N(x)

U(x)

-

-




 


























Логическое

Boolean

-

+

Logical

-

-

-




 


























Символьное

-

PIC(A)

Char

C(x)

A(x)

Char

+




 


























Длинный текстовый или бинарный объект (BLOB)

-

-

-

Memo

-

VarGrafic VarChar

-




 


























Дата

-

-

-

Date

-

Date

-




 


























Время

-

-

-

-

-

Time

-




 

Массивы

Array

-

Dim

Dimention

VAR(n)

-

-

 























Записи (структуры)

-

+

+

+

+

+

-

 























Множественные (вектор­ные) поля записи

-

-

-

-

MU

-

+

 























Групповые поля записи

-

+

+

-

GR

-

+




 


























Повторяющиеся группы в записи

-

-

-

-

PE

-

-































Текстовые поля (пара­графы, предложения, слова)

-

-   .

-

-

-

-

+




 

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

Типы числовых данных Алгола — integer (целое число), real (действительное) — различаются диапазонами изменения, внутренними представлениями и применяемыми командами процессора ЭВМ (соответственно арифметика с фиксированной и плавающей точкой). Нечисловые данные представлены типом boolean — логические, имеющие диапазон значений {true, false}.

Позже появившиеся ЯП (СП) Кобол, ПЛ/1, Паскаль предусматривают новые типы данных:



  • символьные (цифры, буквы, знаки препинания и пр.);

  • числовые символьные для вывода;

  • числовые двоичные для вычислений;

  • числовые десятичные (цифры 0—9) для вывода и вычислений.

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

Уместно привести пример представления числовой информации в различных перечисленных формах. Пусть задано число 13510 = 2078 = 87|16= 1000001112:



  • внутренняя стандартная форма — тип binary — представления для обработки в двоичной арифметике сохраняется (1000001112). Объем — 1 байт, 8 двоичных разрядов;

  • внутренняя форма двоично-десятичного — тип decimal —представления: каждый разряд десятичного числа представляется двоично-десятичной (4 бита) комбинацией. Представление 135 есть 001 011 1012. Объем — 2,5 байта, 12 двоичных разрядов;

  • символьное представление (для вывода)  — тип alphabetic — каждый разряд представляется байтом в соответствии с кодом ASCII.

Представление 135 есть 00110001 00110011 001101012. Объем — 3 байта.

Появление СУБД и СП для разработки ИС приводит к появлению новых типов данных:



Дата и время.

Бинарные (BLOB — Binary Large Object) и текстовые объекты без внутренней структуры (интерпретация возлагается на прикладные программы).

Понятие типа данных ассоциируется также с допустимыми значениями переменной и операциями над ними, например, данные типа время (чч:мм:сс) или дата (гт/мм/дд) предполагают определенные диапазоны значений каждого из разрядов, а также машинные или эмулируемые операции (сложение/вычитание дат и/или моментов времени). Основной причиной «проблемы 2000 года» являлась не столько двухразрядная запись года в базах данных, сколько встроенные в огромное количество программ (часто недокументированных) операции над данными типа date —гт/мм/дд.



Структуры данных. В языке Алгол определены два типа структур — элементарные данные и массивы (векторы, матрицы, тензоры, состоящие из арифметических или логических переменных (рис. 1.2, а, б, в)). Основным нововведением, появившимся первоначально в Коболе (затем ПЛ/1, Паскаль и пр.), являются агрегаты данных (структуры, записи), представляющие собой именованные комплексы переменных разного типа, описывающих некоторый объект или образующих некоторый достаточно сложный документ (рис. 1.2, г).

Термин запись подразумевает наличие множества аналогичных по структуре агрегатов, образующих файл (картотеку), содержащих данные по совокупности однородных объектов, элементы данных образуют поля, среди которых выделяются элементарные и групповые (агрегатные). В языках ПЛ/1, Паскаль появляются массивы записей (рис. 1.2, д).

С появление СУБД и ЛИПС возникают новые разновидности структур:


  • множественные поля данных (рис. 1.2, е);

  • периодические групповые поля (рис. 1.2, ж);

Текстовые объекты (документы), имеющие иерархическую структуру (документ, сегмент, предложение, слово)   — рис. 1.2,

Рис. 1.2. Структуры данных:



а. - одномерный массив (символическое изображение); б — графическое изображение; в — двумерный массив (матрица); г — запись (структура, агрегат данных); д - массив в записи (множественное поле записи); е — массив агрегатов; ж — массив агрегатов в записи (повторяющаяся группа); з — документ библиографической БД IN IS [10]

Рис. 1.2. Структуры данных (окончание)





Достарыңызбен бөлісу:
1   ...   9   10   11   12   13   14   15   16   ...   215




©engime.org 2024
әкімшілігінің қараңыз

    Басты бет