Martial Demolins (./22) :
Un de ceux qui dominent l'asm ET le C (PpHd, Kevin, Lionel ou toi) pourrait-il présenter son point de vue argumenté svp ? Ne maitrisant que l'asm (et vraiment que ça, absolument pas l'info en général ou autre vu que je n'ai fait aucune étude dans ce domaine), je serais intéressé par l'avis d'une personne compétente (qui, vous l'aurez compris, m'intéresse autrement plus que l'avis de personne disant tâtonner dans le sujet dont elle parle ^^).
Le C permet d'écrire du code portable fonctionnant sur différentes architectures.
L'asm est limité à une génération d'un processeur.
Le C ne permet pas d'utiliser pleinement les capacités de ton CPU, mais entre 50-95% en général.
L'asm permet d'utiliser toute l'instruction set, et de pouvoir pipeliniser à mort les calculs SI on s'y connait, sinon on sera plus lent que le compilateur C...
Le C possède une librairie standard, pas l'asm.
Certaines choses sont impossibles à écrire en C, le contraire n'est pas vrai.
Il y a des assembleurs de merde, le C est (grosso modo) partout pareil.
L'asm est plus facile à comprendre pour les débutants, mais pas forcément à écrire.
En C et asm, on peut écrire de belles saloperies.
Pollux (./23) :
Pour résumer mon avis :
- le C c'est bien pour quelqu'un qui veut tout de suite un résultat potable, on peut ignorer pas mal de problèmes au moins au début - l'ASM c'est mieux pour quelqu'un qui cherche à comprendre comment ça marche, et ça donne toutes les bases pour après écrire du code C efficace

Pollux (./23) :
Bref, je vois le C comme un choix à plus court terme et l'ASM comme un choix à plus long terme.
Au niveau de la compréhension, oui. Au niveau pratique, par contre, avec l'ASM, tu te limites à une génération de CPU. Donc tu dois maintenir ton code à chaque nouvelle génération ce qui peut être lourd.
Mais parfois nécessaire pour certains calculs.
Lionel Debroux (./24) :
Je ne pense pas qu'il soit obligatoire de connaître l'ASM pour programmer en C. L'ASM varie évidemment beaucoup d'une architecture à l'autre (même s'il y a quelques points communs)
Franchement, l'architecture varie pas tant que çà.
Tu as toujours des registres / de la mémoire / des caches / des pipelines / des out of order / des latences / des read / des writes / des add,sub,and... / des mul, div / des shift.
Godzil (./25) :
C'est indipensable de comprendre comment marche le CPU plus que l'ASM
Oui
Mais sentir ce que le compile va générer lorsque tu écris ton code C, aide beaucoup.
squale92 (./39) :
Après, sur un PC moderne, ça coutera tellement plus cher de passer du temps à apprendre des notions d'asm que d'acheter un n-ième serveur (ou un n-ième cpu, ou un n-ième Go de RAM, ou quelques centaines de MHz de plus, ...)...
Pas forcément

Et tu n'as peut être plus de budget pour acheter un nouveau serveur, ou tu as déjà acheté le serveur le plus performant, ou le serveur plus performant est hors de ton budget

Ou tu n'as plus la place pour mettre un nouveau serveur
