logo search
TurboProlog / Документация / TOM_2

Pieslicexy/6 Графика

Назначение Рисует и заполняет сектор эллипса

Обращение pieslicexy(X,Y,Начугол,Конугол,XРадиус,YРадиус)

Домены (integer,integer,integer,integer,integer,integer)

Шаблоны описания (вх,вх,вх,вх,вх,вх)

аргументов

Описание pieslicexy рисует сектор эллипса в центре (X,Y) с

XРадиус и YРадиус как горизонтальной и вертикальной

полуосями, соответственно. Сектор располагается в

углах от Начугол до Конугол. Сектор выводится текущим

шаблоном заполнения и цветом.

port_byte/2

Назначение Читает или записывает байт из или в порт

Обращение port_byte(НомПорта,Значение)

Домены (integer,integer)

Шаблоны описания (вх,вх) , (вых,вых)

аргументов

Описание (вх,вых)

port_byte связывает Значение со значением байта порта

ввода/вывода НомПорта.

(вх,вх)

Посылает Значение в порт ввода/вывода НомПорта.

Неудачное Никогда не дает.

завершение

Ошибки Нет ошибок.

Пример

/* Эта программа написана специально для Цветного

Графического Адаптера */

predicates

border(integer)

goal

border(0).

clauses

border(Color) :-

port_byte($3D9, Color),

Color<15,

readchar(_),

NewColor=Color+1,

border(NewColor).

ptr_dword/3

Назначение Устанавливает соответствие между указателем и его

физическим расположением (область:смещение)

Обращение ptr_dword(<указатель, определяющий переменную>,

Область,Смещение)

Домены (string,integer,integer)

Шаблоны описания (вх,вых,вых) , (вых,вх,вх)

аргументов

Описание Все переменные, исключая целые, вещественные числа и

символы, которые не были описаны как указатели,

определяются указателями.

Основное использование ptr_dword заключается в

обеспечении возможности производить операции с

байтами вместе с membyte.

(вх,вых,вых)

Когда переменная является связанной, ptr_dword

возвращает Область и Смещение адреса переменной.

(вых,вх,вх)

Когда Область и Смещение являются связанными,

Переменная будет направлена в указатель с адресом

((Область * 16) + Смещение).

Неудачное Никогда не дает.

завершение

Ошибки Нет ошибок.

Пример

Goal:ptr_dword("Добрый День",Seg,Off)

Seg=26786, Off=271

1 Solution

Goal: ptr_dword("Добрый День",Seg,Off),

Off1=Off+8,ptr_dword(S,Seg,Off1)

Seg=26786, Off=271, Off1=277, S=День

1 Solution