Студопедия

Главная страница Случайная страница

Разделы сайта

АвтомобилиАстрономияБиологияГеографияДом и садДругие языкиДругоеИнформатикаИсторияКультураЛитератураЛогикаМатематикаМедицинаМеталлургияМеханикаОбразованиеОхрана трудаПедагогикаПолитикаПравоПсихологияРелигияРиторикаСоциологияСпортСтроительствоТехнологияТуризмФизикаФилософияФинансыХимияЧерчениеЭкологияЭкономикаЭлектроника






Директивы компилятора.






Сразу за заголовками подпрограммы может следовать одна из стандартных директив компилятора, которые уточняют его действия и распространяются на всю подпрограмму и только на нее:

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 0, большее или равное x, если x< 0. Результат имеет целочисленный тип;

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) – возвращает минимальное значение типа-диапазона.






© 2023 :: MyLektsii.ru :: Мои Лекции
Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав.
Копирование текстов разрешено только с указанием индексируемой ссылки на источник.