Bonjour,
Je réagis à une citation récente :
L'assembleur, ce n'est quand même pas trop un langage de programmation, je pense.Quant-à moi, je préfère le Labwindow CVI et le C++ ainsi que l'Assembleur.
Et vous ?
Bonjour,
Je réagis à une citation récente :
L'assembleur, ce n'est quand même pas trop un langage de programmation, je pense.Quant-à moi, je préfère le Labwindow CVI et le C++ ainsi que l'Assembleur.
Et vous ?
Dernière modification par Alcatîz ; 28/12/2009 à 21h40.
C'est quoi alors ?? un langage avec lequel on fait un programme, c'est pas un langage de programmation ??
Même si ce n'est pas un langage de programmation actuel ni de haut niveau, c'en est cependant un...
Et l'on peut avoir, dans certains cas, à programmer (même maintenant) avec lui...
![]()
Au risque de me répéter, l'assembleur désigne l'ensemble des insctruction que ton processeur peut executer. Ça ne désigne donc pas un langage.
L'assembleur x86 peut-être considéré comme un langage, au même titre que l'assembleur ARM7 ou bien l'assembleur de tout autre processeur.
Mais il est évident que les assembleurs de deux processeurs différents sont deux langage différents, et donc l'assembleur pas un langage.
-> http://asm.developpez.com/faq/?page=fg#fg_whatisit
voir wikipedia aussi.L'Assembleur est le langage de programmation de plus bas niveau.
En fait, un terme serait plutôt "famille de langages".
On peut aussi dire que pour une plate-forme donnée, l'assembleur est le langage de plus bas niveau. (enfin, il se retrouve en seconde place si on considère les codes machines directs comme un langage).
SVP, pas de questions techniques par MP. Surtout si je ne vous ai jamais parlé avant.
"Aw, come on, who would be so stupid as to insert a cast to make an error go away without actually fixing the error?"
Apparently everyone. -- Raymond Chen.
Traduction obligatoire: "Oh, voyons, qui serait assez stupide pour mettre un cast pour faire disparaitre un message d'erreur sans vraiment corriger l'erreur?" - Apparemment, tout le monde. -- Raymond Chen.
Je crois, deadalnix, que tu confonds...
L'ensemble des instructions défini un langage. (MOV, ADD, SUB... ce sont des symboles d'opérations , au même titre que read, fopen, ou new...)
Comme le dit Médinoc, c'est le code machine qui lui n'est plus un langage.
Mais quand tu fais un programme en assembleur, il faut bien que tu le compiles pour le rendre exécutable. C'est donc bien un langage de programmation...![]()
et essaye de taper "mov r0 r1" en ligne de commande, et tiens moi au courant des résultats
d'ailleurs, le man page de gcc (GNU cross-compiler http://gcc.gnu.org/) donne, dans les options de lancement :
Mais j'arrête-là, ça sert à rien .... tu es .... épais, pour reprendre une expression québecoise...You can specify the input language explicitly with the -x option :
-x language
Specify explictly the language for the following input file
(rather than letting the compiler choose the default based on the
filename suffix). This option applies to all following input
files until the next -x option. Possible values for language are :
c c-header cpp-output
c++ c++-header c++-cpp-output
objective-c objective-header objective-cpp-output
assembler assembler-with-cpp
ada
f77 f77-cpp-input ratfor
java
trilang
Salam,
Le nom Assembleur est le terme employé pour désigner :
- Le langage de programmation ( vue que c'est un code de communication, permettant à une personne de dialoguer avec sa machine en lui soumettant des instructions ) le plus bas niveau accessible facilement à un humain.
- Et un logiciel transformant un fichier source contenant des instructions, en un fichier exécutable que le processeur peut comprendre.
Noteworthy.
Ça ne fonctionnera pas bien évidement. Si c'est censé être un argument sache qu'il n'est compréhensible que par toi même. Je me demandes si tu sais ce qu'est un processeur ARM ou x86. Et surtout qu'est ce que la ligne de commande vient faire la dedans . . .
On a bien affaire a une famille de langage et non pas un langage. D'ailleurs un bref tour d'horizon dans cette partie devrait pouvoir t'éclairer les idées :
http://www.developpez.net/forums/f95...architectures/
Tiens donc, je ne conaissais pas gcc, j'en apprend tous les jours !
Mais sache que gcc, en plus d'être un merveilleux compilos, c'est aussi un éditeur de lien, un assembleur, et tout un tas d'autres trucs en même temps.
1m80, 58kg, mais merci de t'en soucier![]()
L'assembleur est un langage par métonymie, c'est tout.![]()
Non et je m'en contrefiche. Il y a des différences entre machines, je te l'accorde, mais la base est la même : j'ai programmé en assembleur sur un PDP 11-23 en 1982 et il y avait ADD, MOV, SUB, etc etc...
Ce n'est pas ce que tu disais et qui déclenché cette discussion :
Que l'on dise "flavor" ou n'importe quoi, pas de problème. Mais de base c'est un langage, qui, comme pour C ou n'importe quel autre, a des extensions et/ou particularités par machine, mais dont la base est cohérente et multi-plateforme. Donc je rejoins ton point que c'est une famille de langages, mais par rapport à la remarque intiiale ta réponse, dans le cadre de la discussion, de même que celle d'Alex-Pi, était fausse.
PS: et quant à mon exemple, c'était juste que , contrairement à ton affirmation ci-dessus, tu ne peux pas dialoguer directement avec ton processeur en tapant les "instructions", ce n'est donc pas un langage de commande.
Que la procédure de compilation tu l'appelles compilation ou assemblage, cela revient strictement au même : tu pars d'un fichier texte et tu produis (enfin, le compilateur) un ensemble binaire interprétable directement par la machine.
Par conséquent c'est bien un langage : tu tapes du texte, et il te faut un interpréteur qui le transforme en code machine.
@alex_pi
Ta remarque illustre bien une certaine tendance (dérive?) au pinaillage.
La vraie question c'est: l'assembleur est-il une compétence ?
Moi je dis que l'assembleur est une compétence, et même une des plus sous-estimées, quelque part (sans doute dans mon imaginaire) la différence entre un scribe et un programmeur c'est cette intimité avec le langage machine qui garantie que l'on travaille à autre chose qu'à superposer toujours plus de couches de tâches à l'utilité plus bureaucratique les unes que les autres.
Je n'oppose pas bas niveau et haut niveau et j'accueille avec autant d'enthousiasme tout ce qui témoigne d'une économie de concepts face à l'invasion des rouleaux-compresseurs qui écrasent tout pour mieux vendre leurs middleware ingérables.
- Ouvre un nouveau fil ;
- Cherche un peu.
Tout dépend de ce que tu veux faire. Cette question est vraiment très vaste. Le C est relativement universel, mais pas forcément facile d'approche.
Renseigne-toi sur les logiciels libres, sur CygWin et MinGW.existe t'il des logiciels récent et gratuit a télécharger pour commencer la programmation avec de la documentation sur internet.
Pour ajouter un peu de poils au Troll, le binaire compilé constitue lui même un langage. Compréhensible par la machine, et à moindre mesure, mais tout de même, également compréhensible par un homme ( mais un homme motivé ! )
Un langage est un moyen de communication qui permet d'échanger des informations entre deux entités.
Tu peux alors très bien imaginer un éditeur binaire, qui te permettrait d'écrire en binaire, et donc il s'agit finalement bien d'un langage.
[/Troll]
D'un coté moins formel mais plus informatique, un langage informatique est un ensemble de conventions qui permettent à un humain de communiquer avec une machine afin de lui faire executer un traitement. Les conventions de l'assembleur, comme la présence de point virgule ( pour certains ) ou la définition de label par exemple, pour ne prendre que ça, sont suffisantes pour en faire un langage informatique à part entière.
A+
J'aime bien quand le ton monte alors que dans une discution "réelle" tout le
monde serait d'accord
Deadalnix a juste écrit que l' "ASSEMBLEUR" n'était pas un langage, et je suis
plutôt de son avis
Je ne dis jamais "je programme en Assembleur" mais "Je programme en Assembleur sur PC"
(sous-entendu un truc compatible 80X86 )
a+ François
Partager