Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Лекции информатика - Семестр 2.doc
Скачиваний:
3
Добавлен:
01.04.2025
Размер:
516.1 Кб
Скачать

Лекция 5. Стандартные типы данных.

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

Группа

Подгруппа

Название

Идентификатор

Простой

Порядковый

Короткий целый

ShortInt

Байтовый

Byte

Слово

Word

Целый

Integer

Длинный целый

LongInt

Символьный

Char

Булев

Boolean

Вещественный

Вещественный

Real

С одинарной точностью

Single

С двойной точностью

Double

С повышенной точностью

Extended

Сложный

Comp

Строковый

String

Структурный

Массив

Array

Множество

Set

Файл

File

Запись

Record

Ссылочный

Pointer

Процедурный

Процедура

Procedure

Функция

Function

Объектный

Object

Рисунок 5.1 - Система типов языка Pascal.

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

5.1 Целые типы

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

Таблица 5.1.

Целый тип

Диапазон значений

Размер ячейки памяти

shortint

-128...127

1 байт

byte

0...255

1 байт

word

0...65535

2 байта

integer

-32728...32727

2 байта

longint

-2147*106...2147*106

4 байта

Для целых чисел присуще 4 операции: +, -, *, / и две: div -деление нацело и выделение остатка mod. Также inc(x) - увеличивает значение на единицу x:=x+1 и dec(x)-уменьшает значение на единицу x:=x-1. Синтаксическая диаграмма представления в общем виде целого числа представлена на рисунке 5.1.

Рисунок 5.1. Синтаксическая диаграмма.

Большинство компиляторов для представления знака используют дополнительный код (или дополнение до двух).

Для того, чтобы получить представление числа –n в двоичной системе B = b1b2…bw:

  • Берут логическое дополнение B, т. е. заменяют в каждом b значение на противоположное;

  • Прибавляют единицу.

Например:

1 = 00000001 11111110 11111111 = -1

2 = 00000010 11111101 11111110 = -2

1 27 = 01111111 10000000 10000001 = -127

У отрицательных значений в старшем бите 1.

Дополнение до двух удобно тем, что при выполнении над ними операций целочисленной двоичной арифметики получается правильное представление

(-1) – 1 = -2

11111111 – 00000001 = 11111110.

Отметим, что строку битов 10000000 нельзя получить из положительного значения (-128), а 128 7 битами представить невозможно! Это необходимо учитывать при работе с типом shortint.

Альтернативное представление чисел со знаком – дополнение до единицы (обратный код). Где –n – простое дополнение n, но зато в этом случае есть два значения нуля.