Лекция: Числовые типы

Некоторые типы данных, стандартные для языка Pascal, немного изменились в сторону расширения диапазона возможных значений и, соответственно, увеличения занимаемого места. Это связано с тем, что создаваемые в Delphi приложения ориентированы на работу в операционной системе Windows, а не DOS, что накладывает на них некоторые требования. Программы, выполняемые в Windows, широко используют системные функции операционной системы, передавая им множество параметров. Таким образом, представление информации в Delphi должно соответствовать представлению аналогичной информации в Windows.

В табл. 2.1 и 2.2 приведены сравнительные таблицы типов данных в Pascal и Delphi, в которых указаны сведения о типах данных в Pascal и Delphi. В нижних частях таблиц приводятся сведения о новых типах данных, которых не было в языке Pascal.

Сравнительная таблица целочисленных типов данных в Pascal и Delphi Таблица 2.1

Название типа Pascal Delphi    
Диапазон Память, байт Диапазон   Память, байт  
ShortInt -128… 127 так же  
Integer -32768..32767 -2147483648. .2147483647  
LongInt -2147483648. .2147483647 так же  
Byte 0..255 так же  
Продолжение таблицы 2.1  
Word 0..65535 так же  
Cardinal   0..4294967295  
SmallInt -32768..32767  
Int64 -263 ..263 -1  
LongWord 0..4294967295  

 

Сравнительная таблица вещественных типов данных в Pascal и Delphi Таблица 2.2

Название типа Pascal Delphi
Диапазон Память, байт Точность, всего цифр Диапазон Память, байт Точность, всего цифр
Real ±2.9x10-39. .±1.7x1038 11.12.09 ±5.0x10-324. .±1.7x10308 15-16
Single ±1.5x10-45. ,±3.4x1038 07.08.09 так же
Double ±5.0x10 — 324 ..±1.7x10308   15-16 так же
Extended ±3.4x10 — 4932 ..±1.1x104932 19-20 ±3.6x10-4851 ..±1.1x104932 19-20
Comp -9.2x10l8. .9.2x10l8 19-20 -263 +1… 263-1 19-20
Real48   2.9x10-39. .1.7x1038 11.12.09
Currency -922337203685477.5808… 922337203685477.5807 19-20

Из сравнительных таблиц 2.1 и 2.2 видно, что среди целочисленных типов данных не произошло существенных изменений, за исключением увеличения диапазона типа Integer. Это связано с частым использованием данного типа при передаче параметров системным функциям Windows. Также добавлены новые типы Cardinal, Int64 и LongWord для более удобной организации структур данных в программе.

Новый целочисленный тип данных SmallInt соответствует типу Integer языка Pascal и добавлен в Delphi для упрощения переноса фрагментов текста из старых программ, работающих в операционной системе DOS, которые используют переменные типа Integer и чувствительны к возможному изменению размеров этих переменных. При переносе таких фрагментов ссылки на тип Integer следует заменять на SmallInt.

Среди вещественных типов данных изменены возможности типов Real, Extended и Comp, а также, для совместимости с программами, написанными на Turbo Pascal, добавлен новый тип Real48, совпадающий с типом Real языка Pascal.

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

еще рефераты
Еще работы по информатике