Компьютер выполняет операции с числами в двоичном коде.
Для этого, очевидно, нужны команды, которые будут точно поняты и интерпретированы центральным процессором. Ничего, кроме двоичных чисел ЭВМ не понимает, команды должны состоять из определенного набора цифр. Машинные инструкции разрабатываются для каждого семейства процессоров и некоторых отдельных их разновидностей. Поддержка инструкций заложена в самом процессоре. Для этого существуют специальные языки нижнего уровня, которые работают напрямую с процессором — ассемблеры. Компилятор, превращает команды ассемблеров в машинные инструкции, которые располагаются в специальных бинарных (двоичных) файлах. Список ресурсов по ассемблеру
ru.wikipedia.org/wiki/Ассемблер — ассемблер
ru.wikipedia.org/wiki/Язык_ассемблера — язык ассемблера
wasm.ru/article.php?article=onebyte — история байта
bitfry.narod.ru/00.htm — уроки для начинающих
www.scribd.com/doc/267365/A-Beginners-Course-In-Assembly-Language — книга об основах ассемблера на английском языке
Programming from the Ground Up — книга на английском языке. Рекомендация megabrain
www.osinavi.ru/asm — учебник по Ассемблеру
habrahabr.ru/blogs/asm — статьи про ассемблер