Главная страница Библиотека (скачать книги) Скачать софт Введение в программирование Стандарты для C++ Уроки по C# Уроки по Python HTML Веб-дизайн Ассемблер в среде Windows ActiveX Javascript Общее о Линукс Линукс - подробно Линукс - новое Delphi Паскаль для начинающих Турбопаскаль Новости Партнеры Наши предложения Архив новостей |
Переменные Переменная — программный объект, атрибутами которого являются имя и тип (следовательно, и атрибуты типа - множество значений и допустимые операции). Переменные описываются в разделе описания переменных, имеющем вид В описании переменной указывается ее имя и тип. Несколько однотипных переменных могут быть объединены (перечислены через ", ") в одном описании. Примеры:
Типы данных Тип данного - понятие, определяющее такие атрибуты данного, как
Тип данного как объект имеет имя и определяет класс данных, имеющих общие атрибуты. Он описывается в разделе описания типов, имеющем вид Описание объекта-типа состоит из имени типа и описания типа. Несколько объектов с одним и тем же описанием типа могут быть объединены (перечислены через ", ") в одном описании объекта-типа. Описание типа данного может быть дано как при описании именованного объекта-типа (в разделе описания типов), так и непосредственно при описании данных - переменной (в разделе описания переменных) и типизированной константы (в разделе описания констант). Описание типа представляет собой либо имя ранее определенного или предопределенного (стандартного) типа, либо некоторый "конструктор" типа. Примеры:
Типы данных делятся на две группы - скалярные и структурированные типы данных. Скалярный тип - тип данного, не имеющего структуры (состоящего из одного элемента). Скалярный тип определяет множество допустимых значений и некоторый набор операций над значениями этого типа. Турбо Паскаль предоставляет несколько "предопределенных" (стандартных, встроенных) скалярных типов данных. Кроме того, пользователь, с помощью некоторых специальных средств может определить свой собственный скалярный тип. Некоторые из скалярных типов являются порядковыми. Порядковый (упорядоченный) тип — такой скалярный тип, для любого из значений которого (кроме крайних значений диапазона этого типа) определены предыдущее и следующее значения. Данные, имеющие тот или иной порядковый тип, могут не просто использоваться в вычислениях. Они применяются в управляющих конструкциях - в качестве параметра оператора цикла, в выражении-селекторе оператора выбора. Структурированный (агрегатный, составной) тип данных — тип, характеристиками которого являются: множественность элементов, структура, способ доступа к элементам и операции над данными этого типа. Описание структурированного типа задается некоторым "конструктором" типа. Два типа являются тождественными, если они описаны вместе или определяются одним и тем же именем типа. Тождественность типов требуется только для переменных, являющихся фактическими и формальными параметрами при вызове процедур и функций. Примеры:
Понятие "совместимость типов" определяется по отношению к операциям, в которых операнды могут иметь разные типы, и будет определено ниже для каждой из таких операций.
Предопределенные скалярные типы 1. Целочисленные типы данных (скалярные, упорядоченные) представлены типами byte, shortint, word, integer и longint. Каждый из них характеризуется именем, размером памяти, требуемой для хранения этого типа, и диапазоном допустимых значений. Эти сведения приводятся ниже:
Наличие нескольких целочисленных типов позволяет выбирать подходящий тип для каждого из данных программы. Сделать такой выбор важно не только для экономного использования оперативной памяти, но, главным образом, для адекватного представления данных задачи. Выбор подходящего типа является одним из стимулов выполнения тщательного анализа задачи, создания ее правильной и надежной программной реализации. Внутреннее представление значений типов shortint, integer и longint: двоичный код длиной 1, 2 и 4 байта. Самый левый бит представляет знак числа (0 - "+", 1 - "-"). Остальная часть кода для неотрицательного числа - его двоичный код а для отрицательного числа - его дополнительный код (дополнение получается по формуле: maxtype + 1- abs(,Y), где maxtype - максимальное значение для данного целочисленного типа, а X - рассматриваемое число.
Примеры: Для типа byte код числа 1 = 0000 0001, код числа 255 = 11111111. Для типа shortint код числа 1 = 0000 0001, код числа '-1' =11111111, код числа 127 = 0111 1111, код числа'-128'= 1000 0000.
2. Вещественные типы (скалярные, неупорядоченные) представлены типами real, single, double, extended, сотр. Каждый из них характеризуется определенным числом байтов для представления их в памяти, точностью представления значения и диапазонами значений. Для всех этих типов допустимы два внешних представления значений: Вещественные типы single, double, extended, comp используются для представления значений с повышенной точностью и проведения вычислений в большом диапазоне значений. Они требуют арифметического сопроцессора для выполнения операций над ними. Для вещественных типов, помимо диапазона допустимых значений, существенными характеристиками являются точность (число значащих цифр) и минимальное число, представимое этим типом. Эти характеристики можно почерпнуть из нижеследующей таблицы.
Тип comp фактически является целым типом увеличенного диапазона, но не порядковым типом. Ни один из вещественных типов не является порядковым. Наличие нескольких вещественных типов позволяет выбирать для каждого из данных программы более подходящий тип. Представление вещественного данного требует большего пространства в оперативной памяти (следует помнить, что обычно в программах используются массивы вещественных данных). Поскольку оперативная память, выделяемая для данных программы, весьма ограничена, то выбор того или другого представления может существенно сказаться на допустимой длине используемых в программе массивов. Кроме того, очень существенно, что разные вещественные типы обеспечивают разную точность представления. На это нужно обращать особое внимание при работе с итерационными вычислительными методами.
3. Символьный (литерный) тип (скалярный, упорядоченный). Имя типа — char. Внешнее представление значений типа - символ кодовой таблицы ПЭВМ (ASCII код), заключенный в апострофы; внутреннее представление - код размером в 1 байт, определяемый кодовой таблицей. Примеры внешнего представления значений символьного типа: 'а', '9', '=', "" (сам символ апострофа повторяется дважды). 4. Булевский (логический) тип (скалярный, упорядоченный). Имя типа - boolean, требуемая память: 1 байт, имеет всего два значения - true и false (true > false). Объекты и выражения булевского типа чаще всего используются в условных операторах.
Конструируемые скалярные типы Пользователь может создать свой собственный скалярный тип, описав его с помощью одного из конструкторов, предлагаемых языком.
Синонимы названия этого типа - диапазон, отрезок. Применяется этот тип в основном в тех языковых конструкциях, где нужно ограничить множество допустимых значений, а именно:
|
||||||||||||||||||||
Библиотека программиста. 2009. |
|