Особенности языка программирования Object Pascal

Типы данных

Некоторые простые типы делятся на физические (фундаментальные) и общие. Физические закладываются в язык при его разработке и не зависят от особенностей компилятора. Общие типы соответствуют одному (или нескольким) из физических типов и их использование считается предпочтительным, так как компилятор создает более эффективный код.

Программа на Object Pascal может оперировать различными типами данных: целыми и дробными числами, отдельными символами и строками символов, логическими величинами.

Целые типы

В табл.7.1 перечислены целые типы, используемые в Delphi 7.

Таблица 7.1. Целые типы в Delphi 7

ТИП ДИАПАЗОН КОЛИЧЕСТВО БАЙТ
integer —2147483648..2147483647  
cardinal 0..4294967295  
shortint —128..127  
smallint —32768..32767  
longint —2147483648..2147483647  
byte 0..255  
word 0..65535  
Int64 -2+63..2+63-1  
longword 0..4294967295  

Наибольшая производительность центрального процессора и ОС достигается при использовании общих типов integer и cardinal. Все остальные типы представляют подмножества этих двух типов. Если в выражении используются значения различных типов, то результат будет иметь тип integer.

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

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

В табл. 7.2 перечислены вещественные типы.

Таблица 2. Вещественные типы в Delphi 7

Тип Диапазон Кол-во цифр Кол-во байт
real 5,0*10-324..1,7*10+308 15—16  
геа148 2,9*10-39.. 1,7*10+38 11-12  
single 1,5*10-45..3,4*10+38 7—8  
double 5,0*10-324..1,7*10+308 15—16  
extended 3,6*10-4952.. 1,1*10+4932 19—20  
comp -2+63+1.. 2+63-1 19—20  
currency -922337203685477.5808.. 922337203685477.5808 19—20  

Наибольшая производительность центрального процессора и ОC достигается при использовании общих типов real и double. Real48 предназначен для совместимости с ранними версиями Delphi и пожирает массу времени на преобразование чисел. Тип extended позволяет производить расчеты с max точностью. Более того, арифметический сопроцессор выполняет операции с действительными числами, представленными в формате extended. Если же мы пользуемся real, double, single, то результат усекается до соответствующей точности. Но данные этого типа занимают в ОП больше всего места.


Понравилась статья? Добавь ее в закладку (CTRL+D) и не забудь поделиться с друзьями:  



double arrow
Сейчас читают про: