Типы данных | это... Что такое Типы данных? (original) (raw)
В этой статье перечисляются типы данных, о самом понятии см тип данных
В различных операционных системах, языках программирования, спецификациях форматов данных фигурируют различные символические обозначения для типов данных. Часть из них является синонимами, часть совпадает при определённой битности вычислительной системы (но начинает различаться при изменении битности).
Содержание
- 1 Абстрактные типы данных
- 2 Целочисленные типы
- 3 Типы с плавающей запятой
- 4 Строковые типы
- 5 Идентификационные типы
- 6 Сложносоставные типы
- 7 Источники
Абстрактные типы данных
Типы данных, которые рассматриваются независимо от контекста и реализации в конкретном языке программирования. Абстракция в математическом смысле означает, что алгебра данных рассматривается с точностью до изоморфизма. Абстрактные типы находят широкое применение в методологии программирования, основанной на пошаговой разработке программ. На этапе построения спецификации проектируемой программы алгебра данных моделирует объекты предметной области, в терминах решаемой задачи. В процессе пошагового уточнения данные конкретизируются путём перехода к промежуточным представлениям до тех пор, пока не будет найдена их реализация с помощью базовой алгебры данных используемого языка программирования. Существует несколько способов определения абстрактных типов: алгебраический, модельный и аксиоматический. При модельном подходе элементы данных определяются явным образом. При алгебраическом используются методы алгебраических отношений, а при аксиоматическом подходе используется логическая формализация.
Целочисленные типы
Целочисленные типы содержат в себе значения, интерпретируемые как числа (знаковые и беззнаковые).
BYTE
Cоответствует байту, 8 бит, беззнаковое.
- Используется в API Win32 (64), в основном в качестве указателя на блок двоичных данных (BYTE *).
- В спецификации Ogg Media используется для хранения однобайтных значений
Логические типы
Логические переменные, BOOL или boolean, содержат одно из двух значений (истина или ложь). В зависимости от реализации, истина может обозначаться как единица или «true», так и любым ненулевым числом (Си). Ложь, соответственно, обозначается инверсно к правде. Для реализации типа достаточно одного бита, однако на практике для ускорения размер bool равен размеру машинного слова.
Типы с плавающей запятой
Используются для представления вещественных (не обязательно целых) чисел. В этом случае число записывается в виде x=a*10^b. Где 0<=a<1, а b-некоторое целое число из определённого диапазона. a называют мантиссой, b - порядком. У мантиссы хранятся несколько цифр после запятой, а b - хранится полностью.
Строковые типы
Последовательность символов, которая рассматривается как единое целое в контексте переменой. В разных языках программирования накладываются разные ограничения на строковые переменные. Строки могут содержать управляющие последовательности.
Идентификационные типы
Идентификационные типы интерпретируются не как число, а как уникальный идентификатор объекта.
FOURCC
FOURCC - 32 бита, интерпретируется как идентификатор кодека для воспроизведения содержимого в файлах-медиаконтейнерах (RIFF (AVI), Ogg Media). В оригинальной спецификации [источник не указан 1306 дней] было указано ограничение на использование "псевдо ASCII" представления кода (при записи в little-endian порядке байт при побайтовом выводе данных должна была получаться ASCII строка).
ATOM
Atom (от греческого "неделимый") - общесистемный идентификатор строки в операционной системе Windows. Приложение может "поместить" (соответствующим вызовом) строку в таблицу (англ. atom table), вызов возвращает число. По указанному числу любое приложение может получить значение строки. Используется для межпроцессного взаимодействия и уникальных идентификаторов (напр., классов окон). [1]
Сложносоставные типы
COLORREF
В операционных системах Windows COLORREF служит для хранения значения трёх цветов (R, G, B — красный, зелёный, синий), размер 32 бита.
Источники
- Типы данных в Microsoft Windows [2]
![]() |
|
---|---|
Неинтерпретируемые | Бит • Ниббл • Байт • Трит • Трайт • Слово |
Числовые | Целый • С фиксированной запятой • С плавающей запятой • Рациональный • Комплексный • Длинный • Интервальный |
Текстовые | Символьный • Строковый |
Указатель | Адрес • Ссылка |
Композитные | Алгебраический тип данных (обобщённый) • Массив • Ассоциативный массив • Класс • Список • Кортеж • Объект • Option type • Product • Структура • Множество • Объединение (tagged) |
Другие | Логический • Низший тип • Коллекция • Перечисляемый тип • Исключение • First-class function • Opaque data type • Recursive data type • Семафор • Поток • Высший тип • Type class • Unit type • Void |
Связанные темы | Абстрактный тип данных • Структура данных • Интерфейс • Kind (type theory) • Примитивный тип • Subtyping • Шаблоны C++ • Конструктор типа • Parametric polymorphism |