Piet — Википедия

Piet — Википедия

Piet — Википедия

Рады приветствовать Вас!

К Вашим услугам - качественный товар различных ценовых категорий.

Качественная поддержка 24 часа в сутки!

Мы ответим на любой ваш вопрос и подскажем в выборе товара и района!

Наши контакты:

Telegram:

https://t.me/happystuff


ВНИМАНИЕ!!! В Телеграмм переходить только по ссылке, в поиске много Фейков!


Внимание! Роскомнадзор заблокировал Telegram ! Как обойти блокировку:

http://telegra.ph/Kak-obojti-blokirovku-Telegram-04-13-15

















Piet назван в честь художника Пита Мондриана Piet Mondrian — один из известнейших эзотерических языков программирования, использующих изображения в качестве исходного кода. В языке используется 20 цветов, и команды задаются переходами между цветами. Piet был создан Дейвидом Морган-Маром David Morgan-Mar с целью создания языка, код на котором выглядел бы как абстрактные картины. Язык не породил диалектов; существует ряд реализаций, несколько отличающихся в нюансах обработки цветов. Доказательство Тьюринг-полноты не проводилось. Движение указателя инструкций по программе и ее интерпретация выполняются следующим образом. Для текущего блока находится его край в направлении DP этот край может не быть непрерывным, если блок сложной формы. Из всех пикселей, образующих этот край, выбирается крайний в направлении, указанном CC либо самый левый, либо самый правый относительно DP. Из этого пикселя указатель инструкций переходит в соседний в направлении DP. Смена цветов при смене текущего блока определяет следующую команду. В общем случае при смене блока направление указателей не меняется. Меняется оно, когда очередной блок оказывается черным. Черные блоки являются ограничителями программы и управляющими структурами, перейти в них невозможно. Если следующий блок — черный, то переход в него не выполняется, вместо этого меняется направление указателей — сначала CC, потом DP, и так до тех пор, пока переход не будет в цветной блок. Кроме того, выполнение команд pointer и switch меняет направление указателей. В этом примере используются только две команды — push и out char. Для того, чтобы вывести на печать один символ, нужно сначала создать блок произвольного цвета из количества пикселей, равного ASCII-коду символа, затем справа от него создать блок цвета, на один темнее, из произвольного количества пикселей команда push , и наконец, справа от него создать блок цвета, на один левее исходного, из произвольного количества символов команда out char. После этого цикл повторяется. Для того, чтобы закончить работу программы, используется петля — блок одного цвета, окруженный черными пикселями. Когда указатель инструкций попадает в этот блок, он не может его покинуть ни в каком направлении. Декоративная версия примера демонстрирует, что форма блоков может быть любой, даже с пикселями других цветов внутри. Этот пример сгенерирован автоматически, при помощи транслятора , написанного Сергеем Льюисом Sergei Lewis. В комплект входят транслятор с C -подобного языка на ассемблер и с ассемблера — в изображение Piet. Так, в данном случае исходная программа выглядела следующим образом:. Этот пример сгенерирован автоматически. Ниже приведена исходная программа, из которой он был получен. Используется итеративное вычисление факториала. Факториал на Piet увеличение 4x. Используется итеративное вычисление чисел Фибоначчи. Числа Фибоначчи на Piet. Числа Фибоначчи на Piet увеличение 4x. Язык использует модель, состоящую из следующих элементов: Пиксели могут быть любых цветов, но элементами программы являются только 20 из них: Связные группы пикселей одного цвета называются блоками и являются минимальными единицами конструирования программ. Отметим, что программы на Piet часто рассматриваются в увеличенном виде; в таком случае группа пикселей, соответствующая одному пикселю исходной программы, называется кодел. Единственным типом данных в Piet являются целые числа. В отличие от более простых языков, в Piet указатель инструкций имеет сложную структуру и состоит из указателя на текущий блок понятия текущего пикселя в блоке нет , указателя направления Direction Pointer — может указывать влево, вправо, вверх или вниз и указателя выбора коделов Codel Chooser — может указывать только влево или вправо, причем направление отсчитывается относительно DP. Таблица соответствия переходов между цветами и команд. Смена Смена яркости оттенка Нет -1 -2 0 push pop 1 add subtract multiply 2 divide mod not 3 greater pointer switch 4 duplicate roll in int 5 in char out int out char Список команд: Отрицательные и нулевые значения в стек могут попасть только как результат арифметических операций. Первым операндом является элемент, который был глубже в стеке. Одна операция roll на глубину N определяется как перемещение верхнего элемента стека на N элементов в глубину стека и перемещение всех элементов выше N на 1 вверх. Глубина N не может быть отрицательной, тогда как количество операций M может быть тогда roll выполняется в обратном направлении. Команды, которые выполнить невозможно, просто игнорируются. Пример для версий npiet 1. Факториал на Piet Факториал на Piet увеличение 4x.

Купить JWH Полысаево

Фирмус Пиетт

Купить DOMINO Североуральск

Закладки в Щёкино

Купить Витамин Апрелевка

Zwarte Piet

Купить закладки LSD в Астрахани

Купить Твёрдый Саратов

Купить героин в Ипатово

Zwarte Piet

Купить закладки в Черкесске

Россыпь в Опочке

Купить Пятку Изобильный

Купить Гердос Пучеж

Закладки трамадол вТоржке

Zwarte Piet

Купить закладки LSD в Ярославле

Фирмус Пиетт

Купить Гашиш в Невинномысск

Фирмус Пиетт

Telegram — часто задаваемые вопросы

Купить МЕФ Дагестанские Огни

Купить хмурый кайф Олонец

Zwarte Piet

Купить Номер 1 Светлогорск

Купить хмурый кайф Островной

Купить Гердос Саратов

Zwarte Piet

Купить МЁД Черняховск

Препарат КЕТАМИН [раствор]

Купить Второй Строитель

Доставка курительные смеси тверь

Купить методон в Усть-илимске

Фирмус Пиетт

Купить Кокаин в Бирске

Zwarte Piet

Report Page