mardi 1 juillet 2014

Qu’est-ce que l’asm ? [fr]

Le langage machine est comme le français ou le chinois, un langage qui est la seule et unique langue compréhensible par le CPU. L'assembleur est un pont entre celui-ci et nous les humains. En effet, l'asm est compréhensible par l'homme avec l'utilisation de chiffres et de lettres (appelés mnémoniques, modes d'adressage, registres...) qui une fois assemblés sera convertit en langage machine, c'est à dire en une suite de 0 et de 1.

Il existe d'autres langages de programmation comme le basic, le C ou encore même le fortan : ceux-ci sont accompagnés d'un compilateur qui va convertir par exemple le C en assembleur afin que le CPU puisse comprendre le programme que vous avez écrit et ainsi l'exécuter.

Il existe plusieurs assembleurs, tout comme il existe de nombreuses langues sur cette Terre. Chaque CPU ne comprend que son propre langage : les Amiga NG avec leur PPC ne comprennent pas le 68k par exemple... Il faut alors utiliser un interpréteur (qui est un programme comme n'importe quel autre) qui va convertir le langage du 68k dans celui du PPC... WinUAE que beaucoup connaissent sur PC, contient un interpréteur convertissant cette fois le 68k en x86...

Nous avons une chance énorme avec nos 68k, puisque son langage est très simple comparativement à d'autres assembleurs. Vous noterez que son apprentissage est exactement comme celui d'une langue parlée : les débuts sont quelque peu déroutants, il faut s'habituer à la nouveauté, et ensuite tout devient simple au fur et à mesure des leçons... Jusqu'à la compréhension immédiate lorsque les cours et les exercices sont terminés et bien assimilés.

En fait, il va falloir comprendre le CPU, c'est à dire "voir" comment il fonctionne : vous mettre à sa place en quelque sorte... Rassurez-vous, c'est tout fait possible, des centaines de milliers de personnes tout ordinateurs confondus y sont bien arrivés, donc vous y arriverez aussi !

De plus, avec Internet aujourd'hui, les échanges sont très rapides et très simples : envoyer un e-mail avec une question peut donner une réponse quasi-éclair à une incompréhension et vous pourrez ainsi continuer à évoluer et à apprendre sans rester coincé des jours ou des mois sur un truc que vous ne trouviez pas clair...

Ce n'est pas tout : non seulement le 68000+ est simple, mais en plus notre système d'exploitation l'est également. En effet, le Kickstart contient plus d'un millier de fonctions bien définies qui permettent de programmer simplement n'importe quels jeux, démos ou utilitaires...

Bref, toutes les conditions sont réunies pour vous lancer enfin dans la programmation assembleur, qui, vous le constaterez, vous passionnera j'en suis certain !

Avec ces cours très pédagogiques, vous deviendrez un vrai crack en assembleur puisque les bonnes habitudes et les bonnes méthodes vous seront enseignées dés le tout début ! De plus, ayant à mon actif des années de programmation quasi-quotidienne (rha là là, quelle passion mes amis alors !) dans ce langage, je sais très bien ce qui est indispensable à savoir, et ainsi tout l'inutile (et il y en a un paquet) vous sera épargné...

Le 68000+ étant imparfait, il existe par exemple bon nombres d'instructions que je n'ai jamais utilisées. Tout le superflu est donc abandonné ici : ce blog est surtout destiné aux débutants afin de vous enseigner de bonnes et solides bases. Personnellement, j'ai débuté de zéro dans ce langage, je n'avais que quelques rudiments de basic et c'est tout. Mon apprentissage a été très et trop long, mais grâce à mon expérience, je vous propulserai bien plus vite dans les hautes sphères de la programmation assembleur 68k !

Par contre ensuite, une fois votre niveau dans ce domaine bien développé, vous pourrez par vous même explorer bien sûr tous les recoins du 68000+ : le principal but est surtout ici de vous mettre le pied à l'étrier dans les meilleures conditions possibles afin que vous puissiez alors vous débrouiller tout seul...

Je me suppose bon pédagogue : si toutefois certains passages vous semblent peu clairs, laissez vos interrogations en commentaires et je rectifierai l'article pour plus de clarté...

Bonne lecture et bon apprentissage !


Cosmos
  

1 commentaire: