Мы поможем в написании ваших работ!
ЗНАЕТЕ ЛИ ВЫ?
|
Стандартные типы данных. Константы
К стандартным относятся целые, действительные, логические, символьный и адресный типы.
ЦЕЛЫЕ типы определяют константы, переменные и функции, значения которых реализуются множеством целых чисел, допустимых в данной ЭВМ.
тип диапазон значений требуемая память __________________________________________________________ Shortint -128.. 127 1 байт Integer -32768.. 32767 2 байта Longint -2147483648.. 2147483647 4 байта Byte 0.. 255 1 байт Word 0.. 65535 2 байта __________________________________________________________
Над целыми операндами можно выполнять следующие арифметические операции: сложение, вычитание, умножение, деление, получение остатка от деления. Знаки этих операций:
+ - * div mod
Результат арифметической операции над целыми операндами есть вели- чина целого типа. Результат выполнения операции деления целых величин есть целая часть частного. Результат выполнения операции получения остатка от деления - остаток от деления целых. Например:
17 div 2 = 8, 3 div 5 = 0. 17 mod 2 = 1, 3 mod 5 = 3.
Операции отношения, примененные к целым операндам, дают результат логического типа TRUE или FALSE (истина или ложь). В языке ПАСКАЛЬ имеются следующие операции отношения: равенство =, неравенство <>, больше или равно >=, меньше или равно <=, больше >, меньше <. К аргументам целого типа применимы следующие стандартные (встроен- ные) функции, результат выполнения которых имеет целый тип:
Abs(X), Sqr(X), Succ(X), Pred(X),
и которые определяют соответственно абсолютное значение Х, Х в квадрате, Х+1, Х-1. Следующая группа стандартных функций для аргумента целого типа дает действительный результат: Sin(X), Cos(X), ArcTan(X), Ln(X), Exp(X), Sqrt(X). Эти функции вычисляют синус, косинус и арктангенс угла, заданного в радианах, логарифм натуральный, экспоненту и корень квадратный соответственно. Результат выполнения функции проверки целой величины на нечетность Odd(X) имеет значение истина, если аргумент нечетный, и значение ложь, если аргумент четный: X=5 Odd(X)=TRUE, X=4 Odd(X)=FALSE. Для быстрой работы с целыми числами определены процедуры: Inc(X) X:=X+1 Inc(X,N) X:=X+N Dec(X) X:=X-1 Dec(X,N) X:=X-N
ДЕЙСТВИТЕЛЬНЫЕ типы определяет те данные, которые реализуются подмножеством действительных чисел, допустимых в данной ЭВМ. Тип Диапазон Количество цифр Требуемая значений мантиссы память (байт) --------------------------------------------------------------- Real 2.9e-39.. 1.7e+38 11 6 Single 1.5e-45.. 3.4e+38 7 4 Double 5.0e-324.. 1.7e+308 15 8 Extended 3.4e-4932.. 1.1e+4932 19 10 Comp -9.2e+18.. 9.2e+18 19 8 --------------------------------------------------------------- Тип Real определен в стандартном ПАСКАЛЕ и математическим сопроцессором не поддерживается. Остальные действительные типы определены стандартом IEEE 457 и ре- ализованы на всех современных компьютерах. Для их использования при наличии сопроцессора или при работе на ЭВМ типа 80486 необходимо компилировать программу с ключом {$ N+}, а при отсутствии сопроцессора - с ключами {$N-,E+}. Тип Comp хотя и относится к действительным типам, хранит только длинные целые значения. Над действительными операндами можно выполнять следующие арифметические операции, дающие действительный результат: сложение +, вычитание -, умножение *, деление /. К величинам действительного типа применимы все операции отношения, дающие булевский результат. Один из операндов, участвующих в этих операциях, может быть целым. К действительным аргументам применимы функции, дающие действительный результат: Abs(X), Sqr(X), Sin(X), Cos(X), ArcTan(X), Ln(X), Exp(X), Sqrt(X), Frac(X), Int(X), Pi. Функция Frac(X) возвращает дробную часть X, функция Int(X) - целую часть X. Безаргументная функция Pi возвращает значение числа Пи действительного типа. К аргументам действительного типа применимы также функции Trunc(X) и Round(X), дающие целый результат. Первая из них выделяет целую часть действительного аргумента путем отсечения дробной части, вторая округляет аргумент до ближайшего целого.
ЛОГИЧЕСКИЙ тип (Boolean) определяет те данные, которые могут при- нимать логические значения TRUE и FALSE. К булевским операндам применимы следующие логические операции:
not and or xor.
Логический тип определен таким образом, что FALSE < TRUE. Это поз- воляет применять к булевским операндам все операции отношения. В ТУРБО ПАСКАЛЬ введены еще разновидности логического типа: ByteBool, WordBool и LongBool, которые занимают в памяти ЭВМ один, два и четыре байта соответственно.
СИМВОЛЬНЫЙ тип (Char) определяет упорядоченную совокупность символов, допустимых в данной ЭВМ. Значение символьной переменной или константы - это один символ из допустимого набора. Символьная константа может записываться в тексте программы тремя способами: -как один символ, заключенный в апострофы, например: 'A' 'a' 'Ю' 'ю'; -с помощью конструкции вида #K, где K - код соответствующего символа, при этом значение K должно находиться в пределах 0..255; -с помощью конструкции вида ^C, где C - код соответствующего управляющего символа, при этом значение C должно быть на 64 больше кода управляющего символа. К величинам символьного типа применимы все операции отношения. Для величин символьного типа определены две функции преобразования Ord© Chr(K). Первая функция определяет порядковый номер символа С в наборе сим- волов, вторая определяет по порядковому номеру К символ, стоящий на К-ом месте в наборе символов. Порядковый номер имеет целый тип. К аргументам символьного типа применяются функции, которые определяют предыдущий и последующий символы: Pred© Succ©. Pred('F') = 'E'; Succ('Y') = 'Z'. При отсутствии предыдущего или последующего символов значение со- ответствующих функций не определено. Для литер из интервала 'a'..'z' применима функция UpCase©, которая переводит эти литеры в верхний регистр 'A'..'Z'. АДРЕСНЫЙ тип (Pointer) определяет переменные, которые могут содер- жать значения адресов данных или фрагментов программы. Для хранения адреса требуются два слова (4 байта), одно из них определяет сегмент, второе - смещение. Работа с адресными переменными (указателями) будет рассмотрена позже, сейчас отметим, что для получения значения адреса какой-либо переменной введена унарная операция @.
6. К О Н С Т А Н Т Ы Тип констант в языке ПАСКАЛЬ определяется по их виду: константы целого типа - это целые числа, не содержащие десятичной точки, константы действительного типа - действительные числа, логические константы - логические значения TRUE и FALSE, символьные константы - либо строки длиной в один символ, либо конструкции вида #K или ^K. Язык ПАСКАЛЬ допускает использовать синонимы для обозначения констант, в этом случае текст программы содержит раздел описания констант, например: {}
|