(1) В итоге: что нужно для того, чтобы программа могла быть запущена в конкретной операционной системе? машинный код, язык ассемблера?
(2) Должен ли он быть машиночитаемым, чтобы его мог выполнять какой-либо процессор?
(3) Какую роль играет операционная система при выполнении программы? Это как-то связано с тем, что система помогает интерпретировать программный код?
(4) И в свете ПК с Windows, необходимо ли, чтобы все программы были .exe, чтобы быть исполняемыми? Почему виртуальная машина Java?
(5) Как работает декомпилятор? В чем разница между программами, скомпилированными для машинного кода и языка ассемблера?
Большое спасибо !!