web-dev-qa-db-fra.com

"Assemblage" contre "Assembleur"

On m'a appris que "Assembly" est ce que vous écrivez dans vos fichiers, pour que votre "assembleur" le convertisse en code binaire.

Mais je vois ces deux termes mélangés et assortis dans divers travaux. J'ai même entendu dire que vous écrivez "assembleur", après quoi un "assembleur" le rend exécutable.

Dites-moi, s'il vous plaît, quels sont les bons mots à utiliser?

61
Henrik Paul

En fait, le langage est appelé "langage d'assemblage", et l'outil pour le convertir en code machine est "l'assembleur".

Plus d'informations sur Wikipedia: http://en.wikipedia.org/wiki/Assembly_language

69
Philippe Leybaert

Le but du langage est de communiquer.

Si les gens disent des choses et que d'autres les comprennent, ils utilisent les bons termes.

Nous avons des règles pour le rendre plus facile à comprendre, mais à mon avis, si vous dites ce qui vous convient le mieux, et laissez les autres dire ce qui leur convient le mieux, et vous comprenez tous ce que vous voulez dire, alors tout sera pêche.

Pour ce que ça vaut, je préfère écrire "Assembly" et l'assembler avec un "assembleur". Je pense qu'un "assembleur" devrait être un jour la Parole du jour, et tout le monde devrait essayer de l'utiliser aussi souvent que possible.

13
Chris Lutz

Assembly est un morceau de code/exécutable qui se trouve dans le code exécutable de la machine. Cela peut être un obj, exe, dll, ... C'est le résultat d'une compilation.

assembleur est le "compilateur" qui compile le code en code exécutable de la machine. Ce code a été écrit dans la langue "Assembly Language". La langue d'assemblage en anglais courant est souvent appelée assembleur.

L'assembleur semble être un mot créatif, né de la nécessité de réduire la confusion causée par une mauvaise utilisation des autres termes ou d'un terme dans une langue étrangère (voir les autres réponses).

9
Ralph M. Rickenbach

Cela pourrait être un problème de langue (humaine) - le mot suédois pour "assembleur" semble être " assembleur " ...

Voir aussi: http://sv.wikipedia.org/wiki/Assemblator

6
Stobor

Honnêtement, je ne sais pas s'il existe une terminologie "standard" qui différencie convenablement tous ces concepts. (Exemple: si je dis "ASM" de quoi je parle?)

Je peux vous donner mes définitions, si cela peut vous aider.

Code machine

Il s'agit de la sortie compilée d'un assembleur ou d'un compilateur.

Assemblage

Il s'agit de la forme lisible par l'homme du code machine. (Ou, code machine tel que nous le connaissons.)

J'utilise parfois le terme assembleur à la place du code machine, car cela implique que je ne vais pas réellement lire le code machine, mais plutôt l'assemblage.

langage d'assemblage

Cela fait référence à un langage de code machine spécifique tel que l'assemblage x86.

Assembleur

Il s'agit d'un outil comme MASM\FASM utilisé pour compiler le code source en code machine.

langage assembleur

Il s'agit du langage utilisé par tout assembleur donné.

Je considère cela comme étant différent du langage d'assemblage car les assembleurs peuvent ajouter leur propre sucre syntaxique qui n'existe pas dans le langage d'assemblage sous-jacent. (Fonctions de haut niveau, macros, etc.)

4
Smoke

Je suppose que l'origine de ces termes remonte à la définition classique du dictionnaire de Assembly: "an Assembly d'instructions machine pour atteindre un but", ce qui est probablement la façon dont les pionniers de l'informatique ont pensé à un petit groupe de instructions de la machine. Ensuite, un "assembleur" est un appareil qui prend des instructions machine individuelles et les rassemble dans un "assemblage".

1
Ira Baxter