Расскажу историю из жизни. Преподавали в институте курс
"Микроконтроллеры" (или как-то так) заочникам где-то на 3-4-м
курсе. Рассказывали о кишках ядра PIC16 и мучили ассемблером.
Причем эти же студни успели на первых курсах пробежать по С и С++,
естественно, с писаниной для компа. Дали им под конец курса по МК
недокурсовую с заданием примерно что-то там по GPIO плюс PWM (с
разными вводными по вариантам). Предложил им задать преподу глупый
вопрос, мол, а можно программу на Си
написать? Тот, как ни странно, согласился. В результате небольшая толпа прослушала вводный курс в стиле "а у бабочек это делается практически так же" насчет того, что имена регистров уже валяются в хедере и что ими можно оперировать по сути как обычными переменными на Си. Устройство GPIO и таймера после этого было воспринято без проблем, ибо не было перегружено вопросами как записать и как прочитать. Сдали все участвовавшие, причем с пониманием того, что же они делали.
ЗЫ. В голом асме почти все эти студни видели лишь рудиментарную кучу букв, но по листингу в принципе ориентировались. Да, это не глубокое знание архитектуры, но хотя бы ближе к уровню техника, а не полного профана.
ЗЗЫ Я, например, не умею пользоваться "программируемыми калькуляторами" а-ля МК-51 и мне это никак не мешает в плане написания программ, зато у меня был курс "программирования с использованием программируемых калькуляторов" (или как-то так) - не спрашивайте, как я его сдал:))