Да. .Exe по сути является двоичным форматом файла, который содержит 0 и 1 (он также содержит другую важную информацию об ОС для запуска вашей программы)
Процессор поставляется со спецификацией некоторых основных операций, таких как SUM, MOV и т. Д. Это единственные операции, о которых знает процессор. Задача компилятора - интерпретировать что-то вроде 2 + 3
и преобразовать его во что-то, что процессор может интерпретировать (SUM и проверка флагов на переполнение и т. Д.).
Таким образом, по сути, написание высокоуровневого кода, такого как 2 + 3
, это просто более короткий способ написания большого количества ассемблерного кода (который является просто читабельной версией двоичного кода).