Читай статью "ведение в низкоуровневое прогрммировани для Дзенствующих" на wasm.ru и ты уже будешь уметь программировать на ассемблере. Ровно как практически невозможно знать например все win32api функции, так же невозможно знать все команды процессора (тем более что на каждом процессоре они разные и не се документрованы). После указанной статьи ты сможешь писать программы на ассемблере и "исполнять в уме" чужие программы на ассемблере (логику понять можно не всегда сразу, а вот "исполнить" - пожалуйста)
Если дейтствильно хочешь программировать целые программы на ассемблере, то читай статьи по оптимизации кода (вроде на тм же васм есть цикл), т.к. без знания таких фич это будет бесполезное занятие. Хотя я думаю оно и так бесполезное.
про Микроконтроллеры. наверное, чем я и займусь в ближайший месяц... странно что тема такая не развита... наиболее тесно связанный раздел электроники с программированием - микропроцессорная электроника!