Получи случайную криптовалюту за регистрацию!

​Нужно ли программисту уметь писать на assembly? Всем атпищик | VG

Нужно ли программисту уметь писать на assembly?

Всем атпищикам привет. Давно не делал постов, потому что был занят переездами туда-сюда. Скоро закидаю вас контентом (вряд ли).

А теперь к теме поста.
Во-первых, хочу сразу заметить, что пишут на языке ассемблера, а не на ассемблере. Ассемблер - это программа, которая переводит assembly инструкции в машинный код.

Мое мнение - уметь писать на assembly надо, но речь не о больших и сложных программах, а о простых задачках по типу "найти сумму элементов в массиве", "максимум в массиве" и т.д.

Основная польза - начнешь лучше понимать, как работает платформа, под которую ты пишешь (обычно это x86-64). И в некоторых ситуациях поможет отдебажить код, к исходникам которого нет доступа.

Например, я однажды нашел баг в шейдере, дебажа его assembly.
Также выше есть пост, по которому видно, как знание asm'а помогло мне понять, почему один вариант кода быстрее другого.

От себя советую книжку "Assembly Language for x86 Processors" by Kip Irvine. Хотя думаю, что можно найти много других годных книг по теме.

На скриншоте статистика использования x86 инструкций. Как можно заметить, в основном используется очень небольшое их подмножество (всего инструкций около тысячи).