Мелкая моторика мозга

Автор: Зотов Андрей Станиславович

Организация: Политехнический колледж ИЭиИС НовГУ

Населенный пункт: г.Великий Новгород

Современные средства программирования позволяют использовать накопленный опыт в решении широкого спектра задач. В большинстве случаев задача, стоящая перед программистом, может быть разбита на подзадачи, которые уже кто-то когда-то решил. Остаётся грамотно скомпоновать конечное решение. Это значительно упрощает труд программиста, многократно повышает производительность его труда, сокращает трудоёмкость отладки программ. При этом остаётся широкий простор для творчества, не перегруженный необходимостью «изобретать велосипед». Сюда же подключается искусственный интеллект, с готовностью предлагающий результативные решения.

Но не бывает плюсов без минусов. Мне не раз приходилось сталкиваться с ситуацией, когда хороший, опытный специалист останавливался перед задачей обработки небольшого объёма разнотипных данных, имеющих кажущиеся сложными логические связи, в добавок не всегда очевидные. И задача такая абсолютно уникальна. Ситуация отягощалась ещё и тем, что по отношению к общему объёму эта задача составляла какие-то доли процента. Маленький винтик, без которого не сможет работать большая машина. Но основная проблема находилась не в области знаний и умений. Психологически специалист боялся взяться за задачу, не понимал, с какого конца к ней подойти, хотя знаний и умений для её решения имел предостаточно.

Всем известно, что мелкая моторика пальцев развивает речь ребёнка. Я решил развивать «мелкую моторику мозга». Дать задачу, сравнимую с сортировкой перемешанных круп. Своего рода задачу Золушки.

Для этой цели хорошо подошёл код Хемминга. Формирование кода длиной около 25 бит – достаточно сложная, на первый взгляд, задача. Особенно если дать описание кода из научных статей (или рефератов студентов высшей школы). Психологический ступор обеспечен. При этом сведения о том, что код Хемминга – это одна из степеней защиты информации системы ГЛОНАСС, насыщает задачу смыслом. Она перестаёт восприниматься как бестолковое тренировочное задание, имеющее единственную цель – замучить бедного студента. Но остаётся чем-то неподъёмным и необъятным.

Теперь можно вспомнить Козьму Пруткова и начинать «обнимать по частям». Сложные математические правила формирования значения контрольных разрядов заменяются мнемоническими правилами типа «первый контролирует 1 через 1 начиная с 1, второй – 2 через 2 начиная с 2, четвёртый – 4 через 4 начиная с 4»… дальше студенты дополняют сами.

Буквально к середине процесса формирования контрольных разрядов большинство втягивается в процесс, который, оказывается, вовсе не сложный.

Когда код сформирован, у студентов остаётся вопрос – а зачем это всё и как это может помочь исправить ошибку в данных. И тут начинается этап «шаманства». Студентам предлагается назвать номер искажённого разряда. В большинстве случаев, почему-то, они называют номер контрольного. Не стоит начинать с этого. Контрольные разряды нужны для восстановления искажённой информации, а ценность имеет сама информация. Лучше предложить им поменять номер на информационный разряд. Потом можно вернуться к названному контрольному и повторить «фокус», чтобы продемонстрировать работоспособность алгоритма и в этом случае. Номер информационного разряда лучше выбрать меньше 15, так проще его интерпретировать впоследствии.

А пока студенты уже со знанием дела пересчитывают контрольные разряды, Вы же располагаете эти разряды на доске в обратном порядке (в коде они слева направо 1,2,4…, а на доске они слева направо 16,8,4,2,1). Когда новые контрольные разряды сформированы, студентам предлагается перевести полученный двоичный код в десятичный. Для этого я обычно требую, чтобы таблица соответствия чисел от 0 до 15 в системах счисления с основаниями 10, 2 и 16 была у них на внутренней части обложки конспекта, чтобы быстро решать такого рода задачи. Соответствие полученного в результате перевода числа с номером искажённого разряда вызывает достаточно яркие эмоции.

Для закрепления навыка провожу практическую работу, в которой на первом этапе студенты придумывают информацию, защищают её кодом Хемминга, искажают один разряд и передают товарищу. На втором этапе они раскрывают полученные друг от друга сообщения, исправляя искажённый разряд.

На занятиях по схемотехнике совмещаю тему дешифратора с кодом Хемминга. Использую четырёхразрядную информацию с тремя контрольными. Для исправления искажённого разряда студенты рассчитывают и строят неполный дешифратор на комбинации 3, 5, 6 и 7, сигналы которых подключают к управляемому инвертору, построенному на базе элемента «Исключающее ИЛИ», после чего проводят серию экспериментов с передачей искажённой и неискажённой информации, попутно исследуя реакцию кода Хемминга на двойные ошибки.

Если нет возможности провести занятие по схемотехнике, можно обойтись и без этого. Основной эффект уже достигнут.

У студентов остаётся в памяти первый шок от «необъятной и неподъёмной» задачи и то, что с этой задачей он успешно справился, приложив старание, настойчивость и внимательность. И когда в будущем он столкнётся с подобного рода задачами, у него будет понимание, что не всякая задача, кажущаяся неподъёмной и необъятной, таковой является.

Опубликовано: 17.02.2024