Сразу вопрос. Знает ли кто литературу по Конечным автоматам уровня “кружков ЮТ” ? Имеется в виду не результаты поиска в Гугле, а то, что вы пробовали.
Периодически встречаю советы сделать что то на “Конечных автоматах”. Или почитать про Конечные автоматы. Часто (если не всегда) такие советы даются людям, еще не разобравшимся с задержками на millis, и в целом только начинающим программировать.
Я сам не изучал конечные автоматы, то, что мне надо программировал без теории. Сейчас, заинтересовавшись, несколько раз пытался “почитать по Конечные автоматы”, но попадал или на литературу требующую владением теорией графов и может еще чего (я дальше графов не шел). Или на что то совсем простое, спорное и не вызывающее у меня доверия, настолько простое ,что возникает вопрос - зачем эта “теория” если есть “здравый смысл”.
Собственно вопрос - есть ли у кого ссылка на книгу по которой можно было бы объяснить конечные автоматы школьнику работающему с ардуино? Имеется в виду не результаты поиска в Гугле, а то, что вы пробовали.
В любом учебнике по программированию есть практическое описание конечных автоматов с т.з. программирования.
Академическую теорию учить не надо, разумеется.
естьь мнение что управляющая система для эффективности упрравления, не может быть проще чем обьект управления. Не думаю что достаточный уровень компетенции может быть быстро достигнут, хотя первая же ссылка гугла описывает конечные автоматы максимально доступно
примерно как Вы спросили бы на форуме БМВ-истов / Субаристов (условно) почему машина троит, а в ответ посоветовали бы разобраться с циклом Отто , для начала…
совет возможно абсолютно правильный, но мало применимый на практике, т.к. Вам надо не “изучить” тему, стать в ней специалистом и гуру , а решить какую-то проблему(возможно и вами же выдуманную)
Пробовал читать, но не пошло… Как добрался до кнопки- ступор, где состояние, где событие? По мне у кнопки два состояния и два события (нажата-не нажата, нажали-отпустили).
Первая глава вот этой книги даёт отличное понимание сути дела. И всё на пальцах, без упоминания каких-либо страшных терминов. Зачёт в универе по ней не сдадите (умных слов нет), но понимать суть дела малой будет твёрдо и “прощупанно”.
Остальные главы там посвящены тому как это реализовывать, а вот в первой главе расписывается построение автоматов на примере, с примерами возможных граблей - проще и понятнее я не встречал.
Причём, строится “обобщённый автомат”. Частные разновидности не особо рассматриваются, но они становятся очевидными после изучения материала.
Насколько я помню, вы тоже занимались с внуком программированием, но у вас большой опыт преподавания и вы способны сами понять как объяснить доходчиво, но не упуская сути. Я же сам не владею теорией, но если действительно важно дать школьнику понятие о конечных автоматах, то хотелось бы это сделать. Поэтому и спросил - есть ли что то “уровня кружка ЮТ” где объясняется и показывается как применять.
За ссылку спасибо, сам почитаю, но на первый взгляд - школьнику это будет трудновато.
Студенты - это не совсем то. Если эта книга не подойдёт, можно связаться с Яшей Зайдельманом, может он чего посоветует. Он с начала восьмидесятых со школьниками возится без перерыва. Скажите, если надо, я свяжусь.
Может вам этот материал зайдет?
Если Английским владеете . Там именно что наглядно демонстрируется переход от «блинка без делей» к конечным автоматам и все это на ОСРВ
Сколько я не смотрел литературы по автоматам - там всё закручено и сложнопонятно. На мой взгляд, начинающим проще объяснять на пальцах. Типа, каждое твоё движение - это новое состояние. И от этого плясать. Ну и конечная цель - минимальное время на каждом шаге.
можно ли ПЗУ назвать конечным автоматом, если принять изменение адреса на его входе за событие, а изменение данных за изменение состояния? Например подключаем сид ы к шине данных, в результате изменений на шине адреса загораются сид ы в соответствии с данными, записанными по этому адресу
Простите, но я действительно (без тени стёба) не понимаю вопроса (возможно, это просто проф. деформация).
У конечного автомата нет данных (у него вообще памяти нет). Выходов у классического КА тоже нет (когда есть - это уже неклассический (расширенный) “КА с выходом”). Вот здесь я приводил точное определение КА и КА с выходом.