Question

(1) À la ligne de fond: ce qu'il ne tous prendre à pour faire un programme exécutable sur un système d'exploitation spécifique? code machine, assembleur?

(2) Est-ce qu'il faut être lisible par machine afin d'être exécuté par une unité centrale de traitement d'une sorte?

(3) Quel genre de rôle ne fonctionnant jeu du système lorsqu'un programme est en cours d'exécution? Est-il quelque chose à voir avec l'aide du système d'interpréter le code du programme?

(4) et à la lumière de PC sous Windows, est-il nécessaire que tous les programmes soient .exe pour être exécutable? Pourquoi la machine virtuelle Java?

(5) Comment décompilateur travail? Quelle est la différence entre les programmes compilés en code machine et assembleur?

Merci beaucoup !!

Était-ce utile?

La solution

  1. Cela dépend entièrement du système d'exploitation. En théorie, vous pourriez avoir un OS qui interprétait le code source COBOL à la volée. Mais en général, vous aurez besoin des fichiers exécutables d'un format spécifique que le système d'exploitation peut charger en mémoire et exécuter. Ainsi, le code de la machine, il est.

  2. Encore une fois, cela dépend de la CPU. La grande majorité (tous ceux que je connais) courra leur propre code machine.

  3. Le système d'exploitation fournit une méthode pour exécuter vos applications et fournit des services de soutien à ces applications.

  4. Non. Si vous voulez les exécuter, ils doivent être d'un format spécifique, mais cela ne signifie pas nécessairement l'extension exe. Et, bien que vous que vous utilisez un fichier de classe Java, en réalité, vous utilisez la machine virtuelle Java qui est un fichier exécutable. Il arrive juste à interpréter le fichier de classe (en ignorant les choses JIT pour la simplicité, qui transforme le bytecode Java en code machine première pour l'efficacité. Vous pouvez « exécuter » fichiers de classe Java, scripts PowerShell, scripts cmd et ainsi de suite.

  5. A tente de décompilation pour transformer un fichier (EXE, fichier de classe, Python bytecode, etc) compilé de nouveau dans sa forme originale, ou au moins quelque chose proche de cela.

Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top