![]() Главная страница Случайная страница КАТЕГОРИИ: АвтомобилиАстрономияБиологияГеографияДом и садДругие языкиДругоеИнформатикаИсторияКультураЛитератураЛогикаМатематикаМедицинаМеталлургияМеханикаОбразованиеОхрана трудаПедагогикаПолитикаПравоПсихологияРелигияРиторикаСоциологияСпортСтроительствоТехнологияТуризмФизикаФилософияФинансыХимияЧерчениеЭкологияЭкономикаЭлектроника |
Директивы компилятора.
Сразу за заголовками подпрограммы может следовать одна из стандартных директив компилятора, которые уточняют его действия и распространяются на всю подпрограмму и только на нее: Assembler – тело подпрограммы написано на ассемблере; External – с помощью этой директивы объявляется внешняя подпрограмма; Far – компилятор должен создать код подпрограммы, рассчитанный на дальнюю модель вызова; Near – компилятор создает код подпрограммы, рассчитанный на ближнюю модель памяти (используется по умолчанию); Forward – используется при опережающем описании подпрограмм для сообщения компилятору, что описание подпрограммы следует дальше по тексту программы (но в пределах текущего программного модуля); Inline – тело подпрограммы реализуется с помощью встроенных машинных инструкций; Interrupt – используется при создании процедур обработки прерываний. В соответствии с архитектурой микропроцессора, в программе могут использоваться две модели памяти: ближняя и дальняя. Модель памяти определяет возможность вызова процедуры из различных частей программы: если используется ближняя модель, вызов возможен только в пределах 64 Кбайт (в пределах одного сегмента кода, который выделяется основной программе и каждому используемому в ней модулю); при дальней модели вызов возможен из любого сегмента. Структура программы на языке Pascal. Функции преобразования типов. Program имя_программы; {РАЗДЕЛ ОПИСАНИЙ} Uses {подключаемые модули} Label {объявление глобальных меток} Const {объявления констант} Type {объявления типов } Var {объявления переменных} Procedure {описание процедур } Function {описание функций} {РАЗДЕЛ ОПЕРАТОРОВ} Begin {операторы} End. Любой из разделов, кроме раздела операторов может отсутствовать. В любом месте программы могут содержаться комментарии, которые заключаются в { } или (* *). Функции преобразования типов: Round(x) – возвращает значение x, округленное до ближайшего целого числа, результат имеет целочисленный тип; Trunc(x) – возвращает ближайшее целое число меньшее или равное x, если x Chr(i) – возвращает символ стандартного кода обмена информацией с номером, равным значению i. Ord(s) – возвращает порядковый номер значения s во множестве, определенном типом s. Пример: Round(3.7); результат 4 Round(-46.317)результат –46 Trunc(3.7); результат 3 Стандартные процедуры и функции, применяемые к целым типам: Dec(i) – уменьшает значение переменной I на единицу (аналог оператора i: =i-1); Inc(i) – увеличивает значение переменной I на единицу (аналог оператора i: =i+1); Hi(i) – возвращает старший байт аргумента (тип аргумента byte или word); Lo(i) – возвращает младший байт аргумента (тип аргумента byte или word); Swap(i) – меняет местами байты в слове. Стандартные функции, применимые к символьному типу: Chr(I) – возвращает символ стандартного кода обмена информацией с номером, равным значению I; UpCase(ch) – функция меняет регистр латинских букв со строчной на прописную. Стандартные функции, поддерживающие работу с типами-диапазонами: High(x) – возвращает максимальное значение типа-диапазона, к которому принадлежит переменная x; Low(x) – возвращает минимальное значение типа-диапазона.
|