Главная Описание Функции Вакансии Контакты Заказ функции

Функции AI (Artificial Intelligence).

Ассоциативные списки Ddar.

Текст 32 бит (юникод UTF-32LE).

Графика.

Пиксельная графика.

Пиксельный процессор 128 бит.

Графика сложная.

Видео.

Звук.

Интернет.

Служебные.

Специальные.

Время и дата.

Математические.

Контроллы.

Файлы.

Ресурсы, буфер обмена.

Переменные.

Пазлы (динамические базы данных).

Списки Arr (одномерные массивы).

Списки2 Dar (двумерные массивы).

Списки высоких измерений.

Макросы.

Функции VendorPint.

Функции PintLang.

Функции TulkoPint.

Функции VideoPint.

Функции PhotoPint.

Функции VardPint.

Функции SmartPint.

Функции WavePint.

Функции DataBase.

Списки2 Dar (двумерные массивы).


АртикулНаименованиеЦена, от
ToDar Добавление в конец списка2 Dar1 копии списка-32bit Arr1 с копией фильтра MsF1, EAX - новая строка Dar1, JL - ошибка. Портит EAX, EBX.
ToDar, Dar1, Arr1
ToDarMs Добавление в конец списка2 Dar1 копии списка-32bit Arr1 с копией фильтров MsF1 и MsF2, EAX - новая строка Dar1, JL - ошибка. Портит EAX, EBX.
ToDarMs, Dar1, Arr1
Дополненный вариант функции ToDar
GumDar Помещает в EAX ячейку-переменную, в EBX= адрес ячейки "резинового" списка2 по [Ind1, Ind2].
GumDar Dar1, Ind1, Ind2
На основе функции GumArr.
GumDarDat Добавляет Dat32 в ячейку "резинового" списка2 по [Ind1, Ind2].
GumDarDat Dar1, Ind1, Ind2, Dat32
На основе функции GumDar и макроса VarDat32.
GumDarCopyVar Копирование (вставка) переменной в "резиновый" список Dar1 по индексам Ind1, Ind1 (0,1,...N). Если индексы превышают размеры списка Dar1, то он дополняется пустыми строками/ячейками.
GumDarCopyVar, Dar1, Ind1, Ind2, Var1
На основе функции GumDar и макроса VarCopy.
ResizeToDar Добавление в конец списка2 Dar1 копии списка-32bit Arr1 c изменением размера на HSize, VSize при отношении пропорций, большем Kpr1 [16.16], JL - ошибка. Портит EAX, EBX.
ResizeToDar, Dar1, Arr1, Kpr1, HSize, VSize
DarResizeDar Добавление в конец списка2 Dar2 копии списка2 Dar1 c изменением размера элемента на HSize, VSize при отношении пропорций, большем Kpr1 [16.16], JL - ошибка.
DarResizeDar, Dar2, Dar1, Kpr1, HSize, VSize
StretchDar Создание в EAX копии списка2 Dar1 c изменением размера элемента на HSize, VSize при отношении пропорций, большем Kpr1 [16.16], JL - ошибка. Портит EAX, EBX.
StretchDar, Dar1, HSize, VSize, Kpr1
На основе функции ResizeToDar.
DarRemMsVar Заменяет в активной ячейке Dar1 по индексу Ind1 вхождение Var1 на Var2. Вых. EAX - количество обработанных строк Dar1/0/-1, EBX - последняя обработанная строка, JL - ошибка, JZ - нет совпадения. Портит EAX, EBX.
DarRemMsVar, Dar1, Ind1, Var1, Var2
На основе функции VarRepVar32.
DarMsDel Удаляет пассивные MsF1=0 строки Dar1. Вых. EAX - количество удалённых строк. Портит EAX, EBX. JL - ошибка.
DarMsDel, Dar1
DarMovInd Копирование ячейки Ind2 в Ind1 в каждой строке Dar1. Вых.EAX - число замен. JL - ошибка. Портит EAX, EBX.
DarMovInd, Dar1, Ind1, Ind2
На основе функции ArrMovInd.
DarMsMovInd Копирование ячейки Ind2 в Ind1 в активных строках Dar1. Вых.EAX - число замен. JL - ошибка.
DarMsMovInd, Dar1, Ind1, Ind2
Сходен с DarMovInd, но учитывает MsF1.
DarExch Обмен активных ячеек Dar1 0 и 1. Вых. EAX - количество активных строк, JL - ошибка, JZ - нет строк. Портит EAX, EBX.
DarExch, Dar1
Простейшая функция, просто меняет значения без контроля коррекции адресов.
DarPlusDar Добавление в конец списка2 Dar2 копии списка2 Dar1 с копией фильтра MsF1
DarPlusDar, Dar2, Dar1
На основе функции ToDar.
DarPlusDarMs Добавление в конец списка2 Dar2 копии списка2 Dar1 с копией фильтров MsF1 и MsF2, JL - ошибка.
DarPlusDarMs, Dar2, Dar1
На основе функции ToDarMs.
DarMsF1Dar Добавление в конец списка2 Dar2 копии списка2 Dar1 при MsF1>0, JL - ошибка.
DarMsF1Dar Dar2, Dar1
DarSeaVar Ищет первое равенство Var1 с строками Dar1 по индексу Ind1. Вых. EAX - подлинник списка Arr1/0 - строка поиска Dar1, EBX - найденный (последний) индекс, JZ - нет совпадения. Портит EAX, EBX.
DarSeaVar Dar1, Var1, Ind1
На основе макроса VarEqu32. Относительно быстрая - в случае находки просто отдаёт подлинник столбца Dar.
VarInDarMsF1 При вхождении активных MsF1=1 строк Dar1 по индексу Ind1 с переменной Var1 опускает или оставляет их, устанавливая MsF1=Flg1, а в остальных - "инверсию" Flg1 (0/1). Вых. EAX - количество обработанных строк Dar1/0/-1, , JL - ошибка, JZ - нет совпадения. Портит EAX, EBX.
VarInDarMsF1, Dar1, Var1, Ind1, Flg1
На основе VarInVar32. Может оставить или опустить активные строки при вхождении.
DarSeaMsF1Var Ищет равенство всех строк Dar1 по индексу Ind1 с переменной Var1. При Flg1=1 в найденных строках, Flg1=0 кроме найденных строк устанавливает MsF1=Ms01. Вых. EAX - количество обработанных строк Dar1/0/-1, EBX - последняя обработанная строка, JL - ошибка, JZ - нет совпадения. Портит EAX, EBX.
DarSeaMsF1Var, Dar1, Var1, Ind1, Flg1, Ms01
На основе макросов VarVal и VarEqu32. Если искомая строка - единственная, может использоваться для поиска строки.
DarSeaVarInd Ищет равенство переменной Var1 со строкой Dar1 по индексу Ind2 и отдает ячейку-переменную по индексу Ind1 из найденной строки-списка. Вых. EAX - найденная переменная. JL - ошибка, нет строки. Портит EAX.
DarSeaVarInd, Dar1, Ind1, Var1, Ind2
На основе функций DarSeaVar и VarVal.
DarSeaDatInd Ищет равенство текстового значения Dat32 со строкой Dar1 по индексу Ind2 и отдает ячейку-переменную по индексу Ind1 из найденной строки-списка. Вых. EAX - найденная переменная.
DarSeaDatInd, Dar1, Ind1, Dat32, Ind2
На основе функции DarSeaVarInd.
DarSeaQDar Ищет равенство всех строк Dar1 по индексу Ind1 с переменной Var1 и дописывает их в квазидар QVar1. Вых. EAX - найденный квазидар QVar1/0, EBX - количество найденных строк, EBX=-1/JL ошибка, EBX=0/JZ - нет совпадения. Портит EAX, EBX.
DarSeaQDar, Dar1, QVar1, Var1, Ind1
DarIdDar Для первого элемента каждой строки Dar2 находит совпадение с первым элементом строки Dar1 и вызывает функцию обработки по адресу AdrFn1/0 с тремя параметрами Arr1 и Arr2 и внешним VarCn1. Прибавляет 1 к MsF2 строки Dar1 при совпадении ее 1-й ячейки списка с 1-й ячейкой в Dar2. Прибавляет 1 к MsF2 строки Dar2 при несовпадении ее 1-го элемента списка с соответствующим 1-м элементом в Dar1. При пустом Dar1, отмечается весь Dar2. Вых. EAX - число совпадений, JZ - нет совпадений.
DarIdDar Dar1, Dar2, AdrFn1
При AdrFn1=0 обработчик не вызывается. Поскольку, к MsF2 Dar2 за весь цикл прибавляется только единица, можно запускать функцию каскадно, последовательно исключая несколько параметров.
SizeDar Определяет размер списка2: EСX=число кадров, EAX=число строк, EBX=число элементов, JL- ошибка. Портит EAX, EBX, ECX.
SizeDar, Dar1
ResDar Сброс фильтров MsF1=0, MsF2=0 в Dar1. Вых. EAX - число сброшенных строк, JZ - нет сброшенных строк.
ResDar Dar1
Next2Dar Круговой шаг цикла Dar1 и Dar2 по максимальному количеству кадров. Инициализация автоматическая, хранится в фильтрах MsFx Dar1. Выход: EAX = строка Dar1, EBX = строка Dar2. Портит EAX, EBX.
Next2Dar Dar1, Dar2
На основе функции Circle8Pn. При первом вызове инициализируется автоматически. Проходит максимальное количество кадров. По окончании цикла деинициализируется.
DarToFrame Выделение 1 кадра в EAX с последующей очисткой Dar1. JL - ошибка/пустой Dar1.
DarToFrame, Dar1
DarToDar Замена с сохранением адреса Dar1: CleDar, Dar1=Dar1+Dar2; KillVar Dar2.
DarToDar, Dar1, Dar2
DarGridArr Дописывает в Dar1 списки из частей строк Arr1 между номеров (0,1,2,..), указанных в VarN подряд, как числа-32, вхождения в них Var2.
DarGridArr Dar1, Arr1, Var2, VarN
VarFromDar Дописывает в строку Var1 элементы строк Dar1 через разделители элементов Var2/0 и строк Var3/0. Вых. EAX-количество строк, JL- нет строк.
VarFromDar Var1, Dar1, Var2, Var3
VarMsF1Dar Дописывает в Var1 активные строки MsF1=1 из Dar1 по индексу Ind1 с добавлением разделителя VarDel1. Вых. EAX - количество новых строк, JL - ошибка, JZ - нет строк. Портит EBX, EAX.
VarMsF1Dar, Var1, Dar1, Ind1, VarDel1
На основе функции VarPlusIndArr.
QArrMsF1IndDar Дописывает в переменную-квазисписок QArr1/0 переменные по индексу активных (MsF1>0) строк Dar. Если QArr1=0/не сущесвует - создает новую. Вых. EAX - QArr1, EBX - число вставок, JL - нет вставок.
QArrMsF1IndDar, QArr1, Dar1, Ind1
На основе функции VarVal.
ArrFromDar Дописывает в строки Arr1 элементы строк Dar1 через разделитель Var1/0. Вых. EAX-количество строк, JL- нет строк.
ArrFromDar Arr1, Dar1, Var1
На основе функции VarFromArr32.
ArrIndDar Дописывает в Arr1 строки из Dar1 по индексу Ind1. Вых. EAX - количество новых строк, JL - ошибка, JZ - нет строк. Портит EBX, EAX.
ArrIndDar Arr1, Dar1, Ind1
На основе медленной функции VarPlusIndArr.
ArrFromPsDar Дописывает в Arr1 строки из Dar1 по индексам из VarPs (i0, i1, i2, ...) с разделителем Delim32. Вых. EAX - количество новых строк, JL - ошибка, JZ - нет строк. Портит EBX, EAX.
ArrFromPsDar, Arr1, Delim32, Dar1, VarPs
На основе функции VarPsFromArr.
ArrIndMsDar Дописывает в Arr1 все строки из Dar1 по индексу Ind1 с копиями MsF1, MsF2. Вых. EAX - количество новых строк, JL - ошибка, JZ - нет строк. Портит EBX, EAX.
ArrIndMsDar, Arr1, Dar1, Ind1
На основе функции VarPsFromArr.
DarFromVar Дописывает в конец Dar1 новый список из частей строки Var1 по разделителю Delim32. Портит EAX, EBX.
DarFromVar, Dar1, Var1, Delim32
На основе макроса ArrNewEl и функции ArrFromVar.
DarFromArr Дописывает в Dar1 строки-списки из частей строк Arr1 по разделителю Delim32. EAX - число строк. Портит EAX, EBX.
DarFromArr Dar1, Arr1, Delim32
На основе функции DarFromVar.
DarGroup Преобразует линейный Dar1, нарезая данные блоками шириной Wd1 и высотой Hg1.
DarGroup, , Dar1, Wd1, Hg1
Полезен для создания таблиц.
DarMsF1GridPzl Добавление (копирование) в Dar1 с учетом MsF1 элементов списка строки пазла Pzl1. Вых. EAX - число записанных строк. JZ - нет записи.
DarMsF1GridPzl Dar1, Pzl1
На основе цикла пазла и функции ToDar. Аналогична DarMsGridPzl, но не копирует MsF2.
DarMsGridPzl Добавление (копирование) в Dar1 с учётом MsF1 элементов списка строки пазла Pzl1 с записью MsF2. Вых. EAX - число записанных строк. JZ - нет записи.
DarMsGridPzl Dar1, Pzl1
На основе цикла пазла и функции ToDar. Аналогична DarMsF1GridPzl, но ещё копирует MsF2.
OpenDar Открываем файл в список-2 по строкам по разделителю элементов Delim32.
OpenDar, Dar1, VarName32, CodePage, Delim32
На основе функции DarFromArr.
DarVal EAX= ячейка-переменная, EBX= адрес ячейки списка2 по [строка Ind1, столбец Ind2]. JL - ошибка.
DarVal, Dar1, Ind1, Ind2
На основе функции VarVal.
DarGridDar Замена (копирование) "резиновых" ячеек строк Dar1 на ячейки строк Dar2, заданные парами индексов-32 (приемник, источник,..) в VarPs1.
DarGridDar, Dar1, Dar2, VarPs1
FixDar Поиск вхождения первого элемента Dar1 в Var1 по адресу Adr1. Вых: EAX: Адрес за вхождением (Var1); 0= Нет вхождения/JZ - Нет вхождения. EBX: Длина Var2 (байт!). ECX: 0= Достижение стоп-адреса. ESI: строка Dar1. EDI: Индекс входжения (0,1,2...).
FixDar Var1, Dar1, Adr1
Модификация кода функции FixArr.
DarEditInd Применение функции VarEdit[Fun1, Var2, Var3, Arr1/0] к строкам Dar1 по индексу Ind1. Вых. EAX - число обработанных переменных (0,1..). JL - ошибка, JZ - нет обработки. Портит EAX.
DarEditInd, Dar1, Ind1, Fun1, Var2, Var3, Arr1
На основе функций VarVal и VarEdit.
LowDar Заменяет заглавные буквы на прописные в юникоде-32 (в латинице, кириллице и латышском).
LowDar, Dar1
На основе функции LowArr.
DarFill32 Заливает список Dar1 числом Num32
DarFill32, Dar1, Num32
Цикл на StartPN с использованием функцииArrFill32.
SimpleDar Заменяет некоторые национальные символы на упрощенные (в латинице, кириллице и латышском) в самом Dar1.
SimpleDar, Dar1
На основе функции SimpleArr.
DarDarRemVar Модифицирует Var1 заменой вхождения элементов строк Dar1 на 1-й элемент и производит замену этой переменной на 2-й при её равенстве с 1-м столбцом Dar2. Результат в EAX - промежуточная переменная, которая подверглась замене Dar2, JL - ошибка, пустая строка, JZ - нет вхождения.
DarDarRemVar, Dar1, Dar2, Var1
На основе функций ArrRemFirstVar и DarSeaVarInd. Приводит реальное слово к начальной форме и находит перевод в словаре. Начальная форма, как лишняя переменная - в EAX.
VarRepDar Добавляет в Var2 (при Var2=0 заменяет саму Var1) комплексную замену вхождений в Var1 первого элемента строки Dar1 на второй. Портит EAX, EBX. При Var2=0 результат в EAX, EBX - число вхождений. EBX=0, JZ - нет вхождения, EBX=-1, JL - ошибка.
VarRepDar, Var2, Var1, Dar1
На основе функции FixDar.
DarRepDarMsInd Производит комплексную замену вхождений в переменную активной строки Dar1 с по индексу Ind1 первого элемента строки Dar2 на второй. Вых. EAX - число вхождений (0,1..). JL - ошибка, JZ - нет обработки. Портит EAX.
DarRepDarMsInd, Dar1, Dar2, Ind1
На основе функции VarRepDar.
StriSortDar Сортировка всех строк столбца по ячейкам индекса Ind1 списка Dar1 как чисел Fl1=0 по возрастанию, Fl1=1 по убыванию. Вых. EAX -число строк JL -ошибка. Не портит регисты совсем!
StriSortDar, Dar1, Ind1, Fl1
Цикл на NextPn, StartPN с использованием функции StriComVar.
AlfSortDar Сортировка строк-32 списка Dar1 как чисел Fl1=0 по возрастанию, Fl1=1 по убыванию по нормировочной таблице AlfSrt. Портит EAX. EAX - число строк.
AlfSortDar, Dar1, Dar2, Ind1, Fl1
Первый вариант функции AlfNewSortDar. На основе функции StriComVar с заменой символов на номера по AlfSrt (из ресурса). Максимально быстрая функция, но не сохраняет исходный порядок строк, т.е., исходную сортировку второго порядка, содержимого строк.
AlfNewSortDar Сортировка строк-32 списка Dar1 как чисел Fl1=0 по возрастанию, Fl1=1 по убыванию по нормировочной таблице AlfSrt. Портит EAX. EAX - число строк.
AlfNewSortDar, Dar1, Dar2, Ind1, Fl1
На основе функции StriComVar с заменой символов на номера по AlfSrt (из ресурса). Сохраняет исходный порядок строк, т.е., исходную сортировку второго порядка, содержимого строк.
DarMsF2Sum Подсчёт суммы значений активных MsF2 Dar1. Вых. EAX - число строк, EBX - сумма активных MsF2, ECX - исло активных, JL - ошибка, JZ - нет строк. Портит ECX, EBX, EAX.
DarMsF2Sum, Dar1
DarLimitMsF2 -
DarLimitMsF2, Dar1, Per1
Удаляет малоповторяемые строки.
DarSortSqueeze Оставляет только активные строки Dar1 с максимальным MsF2 при общей его сумме меньше Per1 процентов от общей суммы MsF2. Вых. EAX - число новых строк, JL - ошибка, JZ - нет строк. Портит ECX, EBX, EAX.
DarSortSqueeze, Dar1, Per1
Удаляет малоповторяемые строки.
DarRoundDar Вписывание Dar1 в Dar2 с прозрачностью Trans1 по максимальному количеству кадров. Выход EAX= новый Dar.
DarRoundDar, Dar2, Dar1, Lft1, Tp1, Trans1
На основе функции RoundPic.
DarShadowDar Вписывание и наложение плоской тени Dar1 на Dar2 с прозрачностью Trans1 по максимальному количеству кадров. Выход EAX= новый Dar.
DarShadowDar Dar2, Dar1, Lft1, Tp1, Trans1
На основе функции RoundPic и PlShadow.
RoundCropDar Создание в EAX нового списка2 из Dar1, вписанного с обрезкой в размеры Ver1, Hor1, JL - ошибка. Портит EAX, EBX.
RoundCropDar Dar1, Ver1, Hor1
На основе функции RoundCropPic.
RectScaleDar Перенос в начало Dar1 участка картинки Dar2 со смещением Lft16, Tp16, размерами Hs16, Vs16 и в масштабе (шаге) Scale16.
RectScaleDar, Dar2, Dar1, Lft16, Tp16, Hs16, Vs16, Scale16
На основе функции RectScalePic.
DarLine Рисует раз в 5 кадров прямую линию цвета RGB1 по координатам на картинке Dar1.
DarLine, Dar1, H16_0, V16_0, H16_1, V16_1, RGB1


Страница "Списки2 Dar (двумерные массивы)." обновлена -

Бесплатная консультация:

Позвоните нам по телефону: +7 499 677-1694
или введите короткое сообщение
Списки2 Dar (двумерные массивы). | © 2008-2015 | Все права защищены. | Создание сайта WebOptimal |
При полном или частичном использовании материалов сайта ссылка на http://PowerIntellect.com обязательна.