Это не совсем ответ, а как расширенный комментарий к ответам других народов.
Встроенная сборка по-прежнему используется для доступа к функциям ЦП.Например, в чипах ARM, используемых в сотовых телефонах, разные производители различают свои предложения с помощью специальных функций, которые требуют необычных инструкций машинного языка, которые не имеют эквивалента в C/C++.
Еще в 80-х и начале 90-х годов я использовал встроенную сборку для оптимизации циклов. Например, компиляторы C таргетингом 680x0 процессоров тогда будет делать действительно глупые вещи, как:
calculate a value and put it in data register D1
PUSH D1, A7 # Put the value from D1 onto the stack in RAM
POP D1, A7 # Pop it back off again
do something else with the value in D1
Но мне не нужно, чтобы сделать это в, о, наверное, пятнадцать лет, потому что современные компиляторы гораздо умнее. Фактически, текущие компиляторы иногда генерируют более эффективный код, чем большинство людей. Особенно учитывая процессоры с длинными конвейерами, предсказание ветвей и т. Д., Самая быстрая исполняемая последовательность инструкций не всегда та, которая будет иметь наибольший смысл для человека. Таким образом, вы можете сказать: «Do A B C D в этом порядке», и компилятор будет сжимать порядок для повышения эффективности.
Играя немного с встроенной сборкой, это хорошо для начала, но если вы серьезно, я повторяю тех, кто предлагает вам перейти к «реальному» ассемблеру через некоторое время.
obfuscation ;-) – jldupont