Я понимаю, что мы можем выгрузить эквивалентную сборку из кода C++, используя много отладчиков и тому подобное.
Но как насчет двоичного кода? Форматирование битов в каждом байте (ях), которые составляют фактические машинные инструкции, которые (могут) составлять микропрограммы (если микроархитектура имеет один).
Если каждая строка кода C++ ДОЛЖНА быть каким-то образом преобразована в машинный код и в какой-то момент в программе (например, плавающий элемент может быть определен в C++, но он бесполезен, пока не помещен в стек, поэтому он может не преобразовывать 1:1 для всего машинного кода, построчно, но будет использоваться независимо), каждый оператор и т.д. Можно отследить. Но отладчики не выводят формирование битов, занимающих каждую отдельную инструкцию (и).
Если каждая программа становится отформатированной инструкцией для байтов / битовых комбинаций для CPU, должна быть возможность (я полагаю) отследить весь код, который вы пишете, до фактических битов на уровне схемы.
Но для полной гарантии, возможно ли сделать это в той степени, в которой я здесь описываю? Современные отладчики / программное обеспечение не предлагают эту функцию, и даже те, которые, по-видимому, не дают ясного для разработчика полного двоичного представления каждой инструкции.
PS: Это, конечно, предполагается, что скомпилированный код легко выполняется с инструкциями для предполагаемой архитектуры (а не с каким-то интерпретируемым языком или байт-кодом, который нуждается в другой программе для дальнейшего перевода для него).