Кто знает хороший учебник по ассемблеру и справочник по командам (windows)?
Справочник по командам никто лучше, кроме производителя процессоров вам не даст. Заходите за сайт интел/амд и качайте референс.
А учебник для ассемблера не имеет смысла. Ибо всё, что относится к ассемблеру — это команды. Остальное — платформозависимые вещи, которые будут различаться в каждой системе, архитектуре, и т. п. Соответственно, в этих учебниках вас будут учить вещам, которые уже либо почти не используются, либо про них уже забыли.
В ассемблере половина команд это mov, lea и call. Прочитайте, что они делают, и уже половину поймёте. Ещё 45% сверху — около 20 команд всего. Остальные 5% занимают сотни и тысячи других инструкций, которые никто в живую в глаза не видел. Это можно взять за 10% от "знания ассемблера". Остальное зависит от архитектуры, системы, компилятора, разрядности, и ещё кучи факторов.
Сейчас нет такого учебника, чтоб научил вас ассемблеру. Если хотите основы с 16 бит, то берите любой. По современным вещам информации нет нигде, кроме официальных документов производителей процессоров.
Проще не учебник, а гуглить простые примеры.
Погуглите про MASM под win32, с рабочими примерами.
Почитайте про стандартные библиотеки Windows, чтобы можно было пользоваться вызовами из вашей программы, например для отрисовки окон и другого взаимодействия с системой. Для той же отрисовки на экран пользоваться прерываниями биос уже не айс, разве что из виртуального доса.
Перед изучением ассемблера, было бы неплохо вообще хоть какой-нибудь другой язык программирования знать.