Главная | Обратная связь | Поможем написать вашу работу!
МегаЛекции

Типы данных. Операции и функции над данными разных типов

Основы языка Pascal

Историческая справка и основные свойства языка Pascal

ЯП Паскаль создан швейцарским ученым Никлаусом Виртом, профессором Цюрихского института информатики в 1968-1970г для учебных целей. Но оказался очень удачным и широко распространился среди профессиональных программистов. Его достоинства: простота, естественность, хорошая усваиваемость при обучении и эффективность при реализации программ.

За время его существования неоднократно делались попытки улучшить Паскаль за счет полезных нововведений. В результате для Паскаля, как и для других языков программирования, стала актуальной проблема приведения языка к единому стандарту, иначе терялось главное достоинство языка высокого уровня - универсальность и переносимость. Этот стандарт был создан в 1983г (стандарт ISO 7185 - 83). В этом стандарте зафиксированы те конструкции и термины Паскаля, которые должны присутствовать в любой реализации и не могут быть изменены. Язык имеет многочисленные диалекты, мы будем изучать Turbo Pascal.

Свойства Pascal:

1) Блочная организация программ.

2) Развитая система типов данных.

3) Строгая типизация:

a) фиксация типов переменных;

b) строгий контроль за преобразованием типов и доступом к данным в соответствии с их типом.

4) Отражение в управляющих структурах принципов структурного программирования.

5) Простой синтаксис.

Для изучения языка будем пользоваться средой Turbo Pascal 7.0 фирмы Borland.

Особенности создания исполняемой программы

Исходные тексты на Паскале (файлы.pas) переводится в машинные коды с помощью компилятора и редактора связей. При нахождении первой ошибки процесс компиляции прерывается и она выдается программисту. В случае отсутствия ошибки формируется объектный файл, который передается редактору связей. Он формирует ЕХЕ-файл.

Структура простейшей программы

Программа на Паскале состоит из заголовка программы, раздела используемых модулей, раздела описаний, операторов.

{1. Заголовок пограммы}

program Имя_программы;

{2. Раздел указания используемых модулей}

uses Список_используемых_модулей;

{3. Раздел описаний}

label описания_меток;

const описания_констант;

type описания_типов;

Var

procedure… Описания_процедур_

function… и_функций

exports описания_экспортируемых_имен;

{4. Раздел операторов (Операторный блок)}

Begin

операторы

end.

Первая строка - это заголовок программы, содержащий ее имя. Эта строка не является обязательной.

Второй раздел содержит указания компилятору подключить ту или иную библиотеку, содержащую набор процедур и функций. Этот раздел не является обязательным.

Раздел описаний

Содержит описания используемых структур данных (константы, типы, переменные) и элементов организации алгоритма (метки, функции, процедуры). Он может отсутствовать.

Описание меток

Пример: Label 5,361,017;

Метки необходимы при использовании оператора перехода Goto.
В качестве меток используются целые числа из диапазона 0 - 9999. Но данные конструкции не допустимы в структурированном программировании, и мы их использовать не будем.

Описание констант

Пример: Const a = -1.5;

b = True;

c = `pascal`;

Описание типов

Кроме стандартных типов языка Паскаль (см.ниже) в программе могут быть описаны собственные типы данных. Общий вид описания

Type <имя типа> = <определение типа>;

Пример: Type d = 1..100;

abc = 'a'.. 'z';

color = (red, yellow, green);

vektor = Array [1..d] Of Real;

Описание переменных.

Переменная – поименованная область памяти, хранящая данные определенного типа. Перед использованием она описывается. Описание переменной, кроме типа, явно или по умолчанию задает область действия переменной. Это та часть программы, в которой имеется доступ к переменной. Область действия идентификатора – это часть программы, в которой его можно использовать для доступа к связанной с ним области памяти. В зависимости от области действия переменные делятся на глобальные и локальные.

Общий вид описания переменных:

Var <список имен переменных>: <имя типа>;

Имя типа здесь - это имя какого-либо стандартного или описанного в данной программе типа данных. Например:

Var n,m: Integer;

a: Real;

b1,b2: Boolean;

pen: color;

x: vektor;

Описание процедур и функций

Этот вопрос рассматривается в отдельной теме.

Раздел операторов

Содержит список выполняемых операторов программы и является обязательным. Он начинается со служебного слова Begin и заканчивается служебным словом End. Весь текст программы завершается точкой.

Типы данных. Операции и функции над данными разных типов

Концепция типов данных

Каждая константа, переменная, выражение, результат вычисления в любой программе на Pascal должны иметь определенный тип. Этот тип определяет:

1. Внутренне представление данных в памяти компьютера (в том числе объем памяти, который выделяется для хранения величины).

2. Множество значений, которое могут принимать величины этого типа.

3. Операции и функции, которые можно применять к величинам этого типа.

Также от типа зависят машинные команды, которые будут использоваться для обработки данных.

 

Типы данных Pascal

Простые стандартные типы

К простым типам относятся порядковые и вещественные типы.

Порядковые типы

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

В Паскале 5 групп порядковых типов: целые, символьный, логические, перечислимый, тип-диапазон.

Целые числа

В системе программирования Турбо-Паскаль определено несколько простых типов данных для целых величин. Они различаются своими диапазонами значений и размером занимаемой памяти. Информация о них представлена в таблице:

Тип Диапазон Размер памяти в байтах
Integer Byte Shortint Word Longint -32768 …+32767 0... 255 -128... 127 0... 65535 -2147483648... 2147483647  

Символьный тип

Обозначается словом Char, служит для хранения 1 символа, занимает 1 байт. Символы кодируются согласно кодовой таблицы ASСII. Константа символьного типа – это один символ, взятый в апострофы, например ‘7’, ‘+’, ‘ F’. Более подробно данный тип мы рассмотрим позднее.

Логические типы

В системе программирования Турбо-Паскаль определено несколько простых типов данных для логических величин. Они различаются своими диапазонами значений и размером занимаемой памяти. Мы рассмотрим один из них:

Boolean - логический тип, определяет диапазон логических значений, который содержит два элемента False (ложь) и True (истина), занимает 1 байт.

Перечислимый тип

Задается перечислением тех значений, которые он может получать. Каждое значение именуется своим идентификатором и располагается в списке, заключенном в круглые скобки, например: Type colors = (red, white, blue, black);

Тип-диапазон

Является подмножеством своего базового типа, в качестве которого может быть любой порядковый тип, кроме типа-диапазон. Тип-диапазон задается границами своих значений внутри базового типа

<минимальное значение>..<максимальное значение>

Пример: Type month = 1..12;

lat = ’a’.. ’z’;

Вещественные числа

Количество возможных значений вещественного числа велико, что сопоставить с каждым из них целое число не представляется возможным.

Как и для целых, для вещественных величин в Турбо-Паскале определено несколько типов данных. Они также различаются своими диапазонами значений и размером занимаемой памяти:

Тип Диапазон Знач. цифры Размер в байтах
Real Single Double Extended 2.9Е-39 … 1.7Е+38 1.5E-45... 34E38 5E-324... 1.7E308 1.6E-4951...1.1E4932 11...12 7-8 15-16 19-20  

Остальные типы данных мы рассмотрим более подробно при изучении соответствующих тем.

Поделиться:





Воспользуйтесь поиском по сайту:



©2015 - 2024 megalektsii.ru Все авторские права принадлежат авторам лекционных материалов. Обратная связь с нами...