Зачем нужно знать машинный код?
Конкретно сейчас машинный код знать наизусть не обязательно - полно дизассемблеров, которые переведут код для тебя.
Иметь представление о машинном коде чтобы понимать, как программа хранится и выполняется - обязательно для любого уважающего себя программиста, работающего с языками близкими к С.
Особенно полезно иметь представление для работающих с embedded и другими железками
Машинный код, мнемоники, адреса - все это вам пригодиться, если по роду своей деятельности вы будете работать в области системного программирования, программирования устройств, криптографии изредка, защиты информации. Если же вы в большинстве случаев штатный сисадмин, прикладной программист, офисный работник или студент - то вам этого особо удовольствия не доставит, да и пользы никакой не будет. Ну если только для собственного поднятия настроения и удовлетворения своих знаний. Если вы настоящий хакер из секретной группировки, вскрывающий пентагоны за чемоданы денег, то без нулей и единиц там никуда... Хотя в этом случае вы бы не задавали такой вопрос, да и вообще не сидели бы на таком сайте :)