Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Лекции2семестр.doc
Скачиваний:
57
Добавлен:
15.04.2015
Размер:
228.35 Кб
Скачать
    1. Целочисленные типы

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

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

2. Тип результата совпадает с типом операндов (кроме вещественного деления целых чисел). Если результат не помещается в отведенное место, старшие разряды теряются. Таким образом, множество целых чисел в ЭВМ представляет собой замкнутое кольцо – за самым большим значением следует самое малое.

3. Потеря информации при переполнении, для арифметических операций с целочисленными значениями выполняется без сообщения об ошибках.

В Turbo Pascal предусмотрено 5 разных стандартных описаний целых чисел, в зависимости от возможных диапазонов их изменения (соответственно выделяемой на числовое значение места в оперативной памяти). Их характеристики приведены в таблице.

Таблица 1. Описатели переменных целочисленных типов.

тип

р в байтах

формат

диапазон

shortint

integer

longint

byte

word

1

2

4

1

2

знак.

знак.

знак.

б/зн.

б/зн.

-128 .. 127

-32768 .. 32767

-2147483648 .. 2147483647

0 .. 255

0 .. 65535

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

Значения целочисленных данных могут записываться в 10- и 16-тиричной форме, причем в последнем случае константе должен предшествовать знак $.

Примеры записи целочисленных констант:

534, -1, 21000000, $1С07, $7fffffff, $ABCD и др.

Существует стандартная константа MAXINT=32767, которую можно использовать не объявляя.

Обычно в разделе VAR для знаковых переменных используют тип integer, а для беззнаковых - word, например:

VAR

I,J,MaxI,Period : integer;

Number,NegativCount : word;

При описании целочисленных переменных, следует иметь ввиду, что этот тип используется в абстрактных математических задачах, а в физических - только для объектов задачи, про которых можно спросить: "Какой он по порядку?" и "Сколько их всего штук?".

    1. Вещественные типы

Для объектов, описывающих любую физическую измеряемую величину в программе должны заводиться переменные вещественного типа. В памяти значения вещественных чисел хранятся в нормализованной экспоненциальной форме в 3-х полях: знаковом, поле для порядка числа и поле для цифр мантиссы. В зависимости от размеров выделяемых полей меняется как диапазон возможных чисел, так и точность их представления. В Turbo Pascal предусмотрены следующие стандартные описатели для вещественных переменных:

Таблица 2. Описатели переменных вещественных типов.

тип

размер (байт)

цифр

диапазон возможных значений

real

single

double

6

4

8

11-12

7-8

15-16

2.9e-39..1.7e38

1.5e-45..3.4e38

5.0e-324..1.7e308

Обычно используют тип real, два других типа можно использовать только при специальной настройке. Важно помнить, что другие языки (фортран, C) используют 4-х или 8-ми байтовые представления вещественных чисел, поэтому, если нужна совместимость по данным, Паскаль-программа должна использовать описатели single или double.

Для вещественных данных определены операции сложения, вычитания, умножения и деления (кроме деления на 0), причем результатом любой операции является вещественное число.

Вещественные константы записывают в двух формах: с фиксированной точкой и с плавающей точкой (последняя форма еще называется экспоненциальной). Примеры первой формы записи:

3.1416, 0.0735, -21.0

Вторая форма получается из первой дописыванием десятичного порядка, отделяя его от мантиссы символом "Е" или "е", например:

0.5e7, -4.57e-3, 1E10 и т.д.

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]