Вход/Регистрация
Учебное пособие по курсу «Нейроинформатика»
вернуться

Миркес Е. М.

Шрифт:

Отображаемый элемент. Переменные типа visual (отображаемый элемент) Служат для адресации отображаемых элементов в интерфейсных функциях. Тип значений зависит от реализации библиотеки интерфейсных функций и не может изменяться пользователем иначе, чем через вызов интерфейсной функции. Особо следует отметить, что библиотека интерфейсных функций не является частью ни одного из компонентов.

Переменные типа цвет и операции с цветами

Использование цветов позволяет гибко разбивать множества на подмножества. В нейрокомпьютере возникает необходимость в разбиении на подмножества (раскрашивании) задачника. В этом разделе описывается стандарт работы с переменными типа цвет.

Значение переменной типа цвет (color)

Переменная типа цвет представляет собой двухбайтовое беззнаковое целое. Однако основное использование предполагает работу не как с целым числом, а как с совокупностью однобитных флагов. При записи на диск используется символьное представление двоичной записи числа с ведущими нулями и разбиением на четверки символом «.» (точка), предваряемая заглавной буквой «B» латинского алфавита, или символьное представление шестнадцатеричной записи числа с ведущими нулями, предваряемая заглавной буквой «H» латинского алфавита. В табл. 2 приведена нумерация флагов (бит) переменной типа Color, их шестнадцатеричное, десятичное и дво ичное значение. При использовании в учителе или других компонентах может возникнуть необходимость в присвоении некоторым из флагов или их комбинаций имен. На такое именование не накладывается никаких ограничений, хотя возможно будет выработан стандарт и на названия часто используемых цветов (масок, совокупностей флагов).

Таблица 2. Нумерация флагов (бит) переменной типа Color

Номер Шестнадцатиричная запись Десятичная запись Двоичная запись
0 H0001 1 B.0000.0000.0000.0001
1 H0002 2 B.0000.0000.0000.0010
2 H0004 4 B.0000.0000.0000.0100
3 H0008 8 B.0000.0000.0000.1000
4 H0010 16 B.0000.0000.0001.0000
5 H0020 32 B.0000.0000.0010.0000
6 H0040 64 B.0000.0000.0100.0000
7 H0080 128 B.0000.0000.1000.0000
8 H0100 256 B.0000.0001.0000.0000
9 H0200 512 B.0000.0010.0000.0000
10 H0400 1024 B.0000.0100.0000.0000
11 H0800 2048 B.0000.1000.0000.0000
12 H1000 4096 B.0001.0000.0000.0000
13 H2000 8192 B.0010.0000.0000.0000
14 H4000 16384 B.0100.0000.0000.0000
15 H8000 32768 B.1000.0000.0000.0000
Операции с переменными типа цвет (color)

Таблица 3. Предопределенные константы операций с переменными типа Цвет (Color)

Код Обозначение Вычисляемое выражение Тип результата Пояснение
1 CEqual A=B Logic Полное совпадение.
2 CIn A And B = A Logic A содержится в В.
3 CInclude A And B = B Logic А содержит В.
4 CExclude A And B = 0 Logic A и В взаимоисключающие.
5 CIntersect A And B <> 0 Logic А и В пересекаются.
6 COr A Or B Сolor Побитное включающее или.
7 CAnd A And B Color Побитное и.
8 CXor A Xor B Color Побитное исключающее или
9 CNot Not A Color Побитное отрицание

В табл. 3 приведены операции с переменными типа Color. Первые пять операций могут использоваться только для сравнения переменных типа Color, а остальные четыре операции — для вычисления выражений типа Color.

В ряде запросов необходимо указать тип операции над цветом. Для передачи таких параметров используется переменная типа Integer. В качестве значений передается содержимое соответствующей ячейки столбца код табл. 3.

Приведение и преобразование типов

Есть два пути использовать переменную одного типа как переменную другого типа. Первый путь состоит в преобразовании значения к заданному типу. Так, для преобразования целочисленной переменной к действительному типу, достаточно просто присвоить переменной действительного типа целочисленное значение. С обратным преобразованием сложнее, поскольку не ясно что делать с дробной частью. В табл. 4 приведены все типы, которые можно преобразовать присваиванием переменной другого типа. В табл. 5 приведены все функции преобразования типов.

Таблица 4. Преобразование типов прямым присваиванием переменной значения выражения

Тип переменной Тип выражения Пояснение
Real Real, Integer, Long Значение преобразуется к плавающему виду. При преобразовании значения выражения типа Long возможна потеря точности.
Long Integer, Long При преобразовании типа Integer, действуют следующие правила. Значение переменной помещается в два младших байта. Если значение выражения больше либо равно нолю, то старшие байты равны H0000, в противном случае старшие байты равны HFFFF.
Integer Integer, Long При преобразовании выражения типа Long значение двух старших байт отбрасывается.

Таблица 5. Функции преобразования типов

Имя функции Тип аргумента Тип результата Описание
Real Real, Integer, Long Real Аналогично прямому присваиванию
Integer Integer, Long Integer Аналогично прямому присваиванию
Long Integer, Long Long Аналогично прямому присваиванию
Str Real, Long, Integer String Представляет числовой аргумент в виде символьной строки в десятичном виде
Round Real Long Округляет действительное значение до ближайшего длинного целого. Если значение действительного выражения выходит за диапазон длинного целого, то результат равен нулю.
Truncate Real Long Преобразует действительное значение в длинное целое путем отбрасывания дробной части. Если значение действительного выражения выходит за диапазон длинного целого, то результат равен нулю.
LVal String Long Преобразует длинное целое из символьного представления во внутреннее.
RVal String Real Преобразует действительное число из символьного представления во внутреннее.
StrColor Color String Преобразует внутреннее представление переменной типа Color в соответствии с разд. «Значение переменной типа цвет»
ValColor String Color Преобразует символьное представление переменной типа Color во внутреннее.
Color Integer Color Интерпретирует целое число как значение типа Color.
  • Читать дальше
  • 1
  • ...
  • 85
  • 86
  • 87
  • 88
  • 89
  • 90
  • 91
  • 92
  • 93
  • 94
  • 95
  • ...

Ебукер (ebooker) – онлайн-библиотека на русском языке. Книги доступны онлайн, без утомительной регистрации. Огромный выбор и удобный дизайн, позволяющий читать без проблем. Добавляйте сайт в закладки! Все произведения загружаются пользователями: если считаете, что ваши авторские права нарушены – используйте форму обратной связи.

Полезные ссылки

  • Моя полка

Контакты

  • chitat.ebooker@gmail.com

Подпишитесь на рассылку: