ProPlay.ru
  主要    资 讯    文章        所录像    VOD's    赌注    比赛    论坛    画廊    关于   
Русский English
忘记密码
Регистрация

    最富有
 ggtt 2664
 Hvostyn 2400
 GopaveC 2000
 rmn1x 2000
 Akon 1958
 razdavalochka 994
 CoolMast 700
 Devostatortk 606
 modify2h 600
 Boevik 400
    投票

The Internaitonal 2015 был
Лучше предыдуших
Хуже предыдущих
Такой же



    覆盖面
SLTV StarSeries 6: Репортаж
SLTV StarSeries V: CS Global Offensive
Рейтинг ProPlay.ru: Январь 2013
Fnatic FragOut CS:GO League
SLTV StarSeries #4 CS:GO
SLTV Star Series #3: Репортаж
GosuLeague #3: Репортаж
SLTV Star Series #2: Репортаж
The Premier League Season 2: Репортаж
36ON.RU BATTLE CITY: Плей-офф
Fantasy Football - Евро 2012: Лига ProPlay.ru
Rising Stars Challenge
36ON.RU BATTLE CITY: Групповой этап
FnaticRC CS League: Групповой этап
It's Gosu's Monthly Madness: 2 сезон
36ON.RU BATTLE CITY: 2й квалификационный тур
The Premier League: 2 cезон
Fantasy Football - UEFA Champions League лига ProPlay.ru
36ON.RU BATTLE CITY: 1й квалификационный тур
36ON.RU BATTLE CITY: Составы команд


    做广告


    #1   ПиКаЧу @ 13.11.12 02:53 [пожаловаться]   
Brainfuck (англ. brain мозг + fuck ебать) — один из известнейших эзотерических языков программирования, придуман Урбаном Мюллером (нем. Urban Mьller) в 1993 году для забавы. Язык имеет восемь команд, каждая из которых записывается одним символом. Исходный код программы на Brainfuck представляет собой последовательность этих символов без какого-либо дополнительного синтаксиса.

Одним из мотивов Урбана Мюллера было создание языка с как можно меньшим компилятором. Отчасти он был вдохновлён языком FALSE, для которого существовал компилятор размера 1024 байта. Существуют компиляторы языка Brainfuck размера меньше 200 байт.[1] Программы на языке Brainfuck писать сложно, за что его иногда называют языком для мазохистов. Но при этом важно отметить, что Brainfuck является вполне естественным, полным и простым языком и может использоваться при определении понятия вычислимости.

Машина, которой управляют команды Brainfuck, состоит из упорядоченного набора ячеек и указателя текущей ячейки, напоминая ленту и головку машины Тьюринга. Кроме того, подразумевается устройство общения с внешним миром (см. команды . и ,) через поток ввода и поток вывода.

Язык Brainfuck можно описать с помощью эквивалентов языка Си (предполагается, что переменная p объявлена как указатель на байт):
Команда Brainfuck Эквивалент на Си Описание команды
> ++p; перейти к следующей ячейке
< --p; перейти к предыдущей ячейке
+ ++(*p); увеличить значение в текущей ячейке на 1
- --(*p); уменьшить значение в текущей ячейке на 1
. putchar(*p); напечатать значение из текущей ячейки
, *p = getchar(); ввести извне значение и сохранить в текущей ячейке
[ while (*p) { если значение текущей ячейки нуль, перейти вперёд по тексту программы на ячейку, следующую за соответствующей ] (с учётом вложенности)
] } если значение текущей ячейки не нуль, перейти назад по тексту программы на символ [ (с учётом вложенности)


Несмотря на внешнюю примитивность, Brainfuck с бесконечным набором ячеек имеет тьюринговскую полноту, а, следовательно, по потенциальным возможностям не уступает «настоящим» языкам, подобным Си, Паскалю или Java.

Brainfuck подходит для экспериментов по генетическому программированию из-за простоты синтаксиса, и, соответственно, генерации исходного кода.

В «классическом» Brainfuck, описанном Мюллером, размер ячейки — один байт, количество ячеек 30 000. В начальном состоянии указатель находится в крайней левой позиции, а все ячейки заполнены нулями. Увеличение/уменьшение значений ячеек происходит по модулю 256. Ввод/вывод также происходит побайтно, с учётом кодировки ASCII (то есть в результате операции ввода (,) символ 1 будет записан в текущую ячейку как число 0x31 (49), а операция вывода (.), совершённая над ячейкой, содержащей 0x41 (65), напечатает латинскую А). В других вариантах языка размер и количество ячеек может быть другим (большим). Есть версии, где значение ячеек не целочисленно (с плавающей точкой).


пока всё, что я написал:

копирование в след ячейку:
,[>+>+<<-]>>[<<+>>-]<.<.
if:
>+>,[блокtrue<-]<[блокfalse<]
if_v2:
>+<,[блокtrue>-]>[блокfalse>]
умнож:
,>,<[>[>+>+<<-]>[<+>-]<<-]>>>.
сумма:
,>,[<+>-]<.

на днях напишу ещё числовой вывод.

IDE
    #2   Потрошитель мух @ 13.11.12 03:07 [пожаловаться]   
Машинный язык чтоле
    #3   Потрошитель мух @ 13.11.12 03:13 [пожаловаться]   
Хотя тут ещё и компилятор, х7й пойми короче
    #4   Шешин @ 13.11.12 03:14 [пожаловаться]   
Чумачечие ачечи
Следующее
Чумачечие ачечи

Чумачечие ачечи
Следующее
    #5   невозмутимый джо @ 13.11.12 08:01 [пожаловаться]   
Shocked Shocked Shocked
    #6   пердунчик васька @ 13.11.12 19:45 [пожаловаться]   
Laughing Laughing Laughing
з.ы не читал
    #7   ABAsrazzo @ 13.11.12 22:06 [пожаловаться]   
#1 ПиКаЧу SurprisedK
    #8   npocTou pycckuu napeHb @ 13.11.12 22:51 [пожаловаться]   
поеб4ть Arrow
    #9   ПиКаЧу @ 15.11.12 01:07 [пожаловаться]   
#2 напротив, довольнотаки высокоуровневый язык.ввод, вывод, изменение переменных выполняются одним оператором.
Но его можно реализовать на машине вроде машины Тьюринга.

    Ответить
Very Happy Smile Sad Surprised Shocked Confused Cool Laughing Mad Razz Embarassed Crying or Very sad Evil or Very Mad Twisted Evil Rolling Eyes Wink Exclamation Question Idea Arrow

Новая тема
Подписаться

    Event




    未来比赛

Добавить турнир


    最新日志
Казино вавада онлайн (1)
Online casino (4)
НУЖЕН СОВЕТ БРАБЛЕЯ (16)
СМОКЕРПУП (0)
мои соски упруги, а ваши ... (3)
Записки без смысла [5] (16)
Ф (1)

    图集
sgUuu: Shok has u

voVer: killer

SPo1LeR[oldschool]: Стола .нету, лежу на диване...10ый день без КС )

c1q3-: Девайс Al1gatora


    Ищем авторов!

ProPlay.ru ищет новых авторов. Прочитайте "Памятку для авторов" и, если заинтересовались, пишите нам miker@proplay.ru


    做广告



Rambler's Top100
Яндекс цитирования Rambler's Top100

Copyright © 2006-2007 www.proplay.ru. 版权所有
只有经过 www.proplay.ru 网站编辑部书面同意才可全部或部分使用本网站内容

网站上发现错误 通知编辑部。