Эпиграф: программист, работающий в ассемблере, должен быть "властелином колец".
И еще: банальность это уставшая истина.
(поймете позднее)
В микропроцессорную технику люди приходят по-разному.
Лично я, до поры, до времени, не ощущал особой потребности в необходимости
заниматься этим, пока, в один прекрасный момент, не понял, что начинаю не
соответствовать времени.
То, что я наработал "до того", оказалось безнадежно устаревшим, а
также "смешно смотрящимся" и на "фоне" современной
элементной базы, и на "фоне" тех знаний, которые нужно иметь для
того, чтобы работать с ней.
Кроме того, лично для меня, как-то не красиво и не достойно было "питаться
объедками с царского стола", если есть возможность "за него
сесть" на правах полноценного участника "трапезы".
Нужно было выбрать: либо "сложить лапки" и перейти в категорию
постепенно "вымирающих" (дисквалифицирующихся), либо заняться этими "страшными
и ужасными" микроконтроллерами, которые все более напоминали "в
каждой бочке затычку".
"Вымирать" совсем не хотелось, так что выбор был однозначным.
И тут началось нечто, что напоминало "передвижение по джунглям".
Информационный "бардак" в этом "секторе" оказался настолько
впечатляющим, что "волосы встали дыбом".
А куда деваться? "Отступать-то некуда, позади Москва".
Кстати, точно в таком же положении находятся сейчас многие люди (знаю по
письмам), для которых "въезд" в микрокопроцессорную технику стал не
то что какой-то "блажью", а самой натуральной жизненной
необходимостью, что вполне понятно, ведь м/контроллеры входят в состав
практически любой более или менее современной, малогабаритной (и не только)
аппаратуры (а "чем дальше в лес, тем больше дров"...).
Чего я натерпелся, знает только один Господь Бог: помощи никакой и пришлось
расчитывать только на свои силы.
После всех этих "мытарств", возник закономерный вопрос: "Это что
же такое получается? Неужели каждый, кто вознамерится "посягнуть" на
эти "желязяки", должен обязательно "разбивать свой нос в
кровь", водя им по "батарее"?
Неужели нельзя без этого обойтись или, по крайней мере, сделать этот процесс не
столь болезненным"?
Прикинул...
А ведь, ей Богу, можно!
Правда, придется "вспахать поле не паханное", но, по совокупности
причин, смысл в этом есть.
То, что Вы прочитаете в "Самоучителе...", есть итог указанного выше
болезненного процесса, преподнесенный "на блюдечке с золотой
каемочкой".
Принцип преподнесения информации - максимальная степень "разжеванности",
так как "Самоучитель..." предназначен именно для начинающих.
Одна из главных бед начинающих программистов - отсутствие системности в
восприятии информации и ее "передозировка", связанная с чрезмерным
желанием побыстрее достигнуть желанной цели, без учета объективных факторов.
Такого рода желание, конечно же, похвально, но при отсутствии плановости, четко
выраженных приоритетов и способности, на первых порах, сознательно ограничивать
объем воспринимаемой информации только самой действительно необходимой, оно
играет с человеком злую шутку.
В результате - "бардак" в голове, дезориентация в потоках информации
и, в худшем случае, сожаление о потраченном времени, хотя, по большому счету,
все не так уж и суперсложно, как может показаться на первый взгляд.
Я вовсе не говорю, что это просто, поработать придется, но и пугаться совсем не
стоит, так как "не так страшен черт, как его малюют".
Еще одна беда - недооценка огромного значения знания и умения применения на
практике стратегии и тактики "мозгового штурма".
Хотя и любой "мозговой штурм" полезен, но "мозговой штурм"
программиста, имеющего, хотя бы, представление о его стратегии и тактике,
гораздо эффективнее и действеннее, чем "судорожные боевые действия"
программиста, который этих представлений не имеет.
А ведь работа программиста это "сплошной мозговой штурм"!!!
Мозги есть у всех, а вот со стратегией и тактикой "штурма" имеются
большущие проблемы.
Можно ведь, с дуру, и "пулю схлопотать" (по сценарию типа
"геройская смерть программиста").
В своей работе я исхожу из того, что мозги являются не только логической
"машиной", но и "вместилищем личности".
Последнее либо явно недооценивается, либо вообще не берется в расчет авторами
подобных моему "творений", что есть огромнейший их просчет, сводящий
на нет большую часть усилий.
Такого рода "однобокость", носящая абсолютно массовый характер, в
большинстве случаев, приводит к тому, что информация воспринимается обучаемым
как логически изощренное, интенсивное (без чувства меры) и
"беспросветное" "изнасилование автором его (обучаемого)
мозгов", с целью "глумления" над низким уровнем его подготовки и
прямого или косвенного понижения "микроконтроллерной" самооценки.
Конечно же, во многом, это не соответствует действительности, но что поделаешь,
такова естественная, подсознательная, защитная реакция психики нормального
человека на большой массив информации, к эффективной работе с которым она не
готова.
Для того чтобы понять огромный вред такого подхода к обучению, вспомните про
Афганистан или Чечню, и про участь тех необстрелянных и психологически не
подготовленных ребят, которых бросили в эту "мясорубку".
Я не желаю Вам такой участи, и, по этой причине, в "Самоучителе...",
предпринята своеобразная попытка постепенного "встраивания" нулей и
единиц в личность (их "одухотворения") и формирования некой
"идеологии офицера программных воск" ("боевого духа",
"стержня"), без которой любая "война" (программирование
есть чисто мужское и "хулиганское" занятие с названием "война со
своей бестолковостью") проигрывается даже не начавшись и которая является
главной основой любой эффективной "школы" обучения.
Сравнить мне не с чем, и поэтому я работаю на свой страх и риск.
Не судите меня строго, так как работаю я "с нуля" и
"психологическим спецом" не являюсь.
Надеюсь на то, что другие авторы продолжат эту исключительно важную и
"преступно" игнорируемую "психологическую тему".
Хочется верить, что при чтении "Самоучителя..." Вы почувствуете, что
такое доброжелательное и уважительное отношение к Вашему совсем не легкому
труду (по себе знаю), а Ваше подсознание не будет выдавать сигналов SOS об
"изуверском изнасиловании мозгов".
Отдельно обращаюсь к "хулиганам", "драчунам" и
"задирам" (в обывательском понимании этих слов), "мозговая
деятельность" которых явно выражена.
Вам не нужно объяснять что значит "держать удар",
"уклоняться", "давать сдачи" и "фингалы" Вас не
смущают.
По этой причине, программирование это, в первую очередь, Ваша
"вотчина", где Вы можете славно "поохотиться".
В программировании, агрессивность есть достоинство, а не недостаток.
Здесь можно от души, интеллектуально "помахать кулаками" (ограничений
нет), плюс "посворачивать шеи" многим достойным уважения
"врагам" (ограничений нет), от чего, кстати, Вы однозначно получите
большое удовольствие.
Итак, информация будет предоставляться в определенной последовательности и по
принципу "от простого к сложному".
Прошу придерживаться этой последовательности и не переходить к следующим
разделам без уяснения предыдущих. Дело это неторопливое и не требует суеты.
Все "валить в кучу" не буду, "перенапряг" также постараюсь
не создавать.
Самоучитель расчитан на начинающих, но при этом предполагается, что они, как
минимум, знают основы цифровой техники.
"Самоучитель по программированию PIC контроллеров для начинающих" http://ikarab.narod.ru E-mail: karabea@lipetsk.ru