Rechercher : dans
Par :

Assembleur, 32 Bits ...

Dernière réponse le 7 jun 2009 à 21:42:38 Wilmet Nicolas, le 16 jun 2003 à 18:07:11 
 Signaler ce message aux modérateurs

Bonjour j'aimerais savoir si Assembleur est l'un ou le plus puissant language pas forcément le plus pratique mais le plus puissant, aussi, Assembleur permet t'il de faire des OS 64Bits pour une architecture Itanium Xeon.... que pour du 64 bits ? est-ce vrai que DOS est fait en Assembleur ? merci beaucoup et bonne journéee

Nicolas Wilmet

Meilleures réponses pour « Assembleur, 32 Bits ... » dans :
Télécharger Pilote nVidia GeForce pour Windows Vista 32 bits Voir Pilote GeForce Vista 32 bits certifié WHQL pour les GPU des séries GeForce 6, 7, 8 et 9 : GeForce 9800 GX2 GeForce 9800 GTX GeForce 9600 GT GeForce 9600 GSO GeForce 8800 Ultra GeForce 8800 GTX GeForce 8800 GTS 512 GeForce 8800 GTS ...
Conversion d'un nombre entier 32 bits en IP Voir Conversion d'un nombre entier 32 bits en IP Nombre à convertir : 3265917058 Représentation binaire 11000010 10101001 11110000 10000010 - 3265917058 00000000 00000000 00000000 11000010 - 3265917058 >> 24 ( 194 ) 11000010 10101001 11110000...
Compiler/tester en 32 bits sur Ubuntu x86-64 VoirImaginons que vous ayez un code source que vous voulez compiler pour le tester ou l'utiliser en tant que binaire 32 bits. Le problème c'est que les headers de la librairie standard ne sont pas adaptés à celà et vous aurez aussi besoin d'une version...
Pourquoi Windows ne voit pas les 4 Go de RAM installés ? VoirWindows XP ou Vista en édition 32 bits ne peuvent pas utiliser 4 Go, il n'y a rien à faire, c'est une limitation mathématique. En 32 bits, le système ne peut adresser que : 2 puissance 32 = 4,3 Milliards d'adresses différentes , correspondant...

1

lasngc, le 16 jun 2003 à 18:22:47

Ca en fait des questions tout ça.

L'assembleur pourrait te permettre de créer ce que tu veux faire mais si tu ne connais pas, tu as encore le temps d'apprendre car créer un OS est loin d'être aussi facile que de créer un site voire même un jeu.

Je ne peux te conseiller que d'acheter des bouquins et de faire de belles études car c'est une tache très complexe surtout que intel sera différent de amd par exemple.

Même Dos qui parait très primaire est loin d'être une chose facile car il est tout simplement la base de l'organisation de fichiers.

Bref certains seront mieux t'exposer la chose que moi mais voilà déjà une brève idée de la chose.

Répondre à lasngc

2

sebsauvage, le 16 jun 2003 à 18:36:57

Je complète avec mes réponse à moi que j'ai:

le plus puissant
Non. L'assembleur n'est pas plus puissant.
Tout ce que tu fais en assembleur, tu peux le faire dans d'autres langages (C, C++, autres...)
Le faire en assembleur n'apportera rien, si ce n'est que ça prendra 10 fois plus de temps à développer.
(Essai donc d'afficher en décimal à l'écran une simple valeur numérique contenue dans le registre AX histoire de rigoler.)

Tu voulais peut-être dire "plus rapide" ?
En théorie oui, si le développeur connaît bien l'assembleur.
Mais il faut savoir que les compilateurs modernes sont capable d'optimisation assez poussées, et que les performances sont telles que programmer directement en assembleur ne se justifie plus tellement (même pour les pilotes de périphériques).

(Seul le mileu industriel a des exigencex assez poussées pour faire de l'assembleur un passage obligé - et encore.)


Assembleur permet t'il de faire des OS 64Bits

Oui. Des OS et n'importe quoi d'autre.
Mais on peut aussi en faire avec des compilateurs C (ou autres).
A partir du moment où tu as un compilateur C 64 bits, tu peux créer des logiciels 64 bits, et donc un OS lui-même (qui n'est bien d'autre qu'un logiciel un peu particulier).

Je pense que certaines parties de l'OS devront tout de même être écrite en assembleur (par exemple: le code de changement de contexte des threads).


est-ce vrai que DOS est fait en Assembleur ?
Je n'en sais rien.
Je pense qu'une bonne partie est effectivement faite en assembleur, mais ça n'a rien d'extraordinaire.
(Je me souviens d'être passé par hasard, en debug, dans le noyau du MS-Dos, et bien le peu que j'en ai vu était assez abomifreusement programmé.)

Je reviens aux compilateurs: ils sont capables d'optimisation assez impressionnantes, des optimisations difficilement faisables à la main (comme développer totalement une boucle, ou utiliser automatiquement un maximum de registres pour éviter d'aller faire des lectures/écritures en mémoire.)


C'est intéressant de connaître l'assembleur, ou même de regarder le boulot que fait un compilateur. ça permet de savoir comment ça marche "en dessous".
(Faites un petit programme en C, compilez-le et désassemblez-le, c'est très instructif !)

Mais si on veut être un tant soit peu efficace, il faut passer à des langages de plus haut niveau.

Répondre à sebsauvage

3

sebsauvage, le 16 jun 2003 à 18:39:09

A propos du test à faire (compiler,désassembler), pensez à désactiver totalement les optimisations si vous voulez comprendre ce qui se passe. ;-)

Répondre à sebsauvage

4

Wilmet, le 16 jun 2003 à 19:08:03

Merci bcp, existe t'il un language qui sort du lot, un language plus puissant que les autres ?

Répondre à Wilmet

5

sebsauvage, le 16 jun 2003 à 19:25:04

Non.
ça dépend pour quoi.

Comme on dit "The right tool for the right job.".
Il faut choisir l'outil le plus adapté à un problème donné.

Je me vois mal développer un pilote de périphérique en Java, ou faire un site web dynamique en Cobol.

Répondre à sebsauvage

6

sebsauvage, le 16 jun 2003 à 19:29:40

Enfin bon, je vais prêcher pour mon église, mais je trouve que Python et Delphi sont des langages très efficaces et merveilleusement polyvalents.

Ce ne sont pas forcément les meilleurs pour tous les types de tâches, mais ils sont très bon à un très grand nombre de choses.

Répondre à sebsauvage

7

sebsauvage, le 16 jun 2003 à 19:34:54
Répondre à sebsauvage

8

chantal, le 16 jun 2003 à 21:35:32

Salut SEB....

Tout ce que les languages peuvent faire, l'assembleur peut le faire (pas l'inverse).
L'assembleur peut créer des programmes très rapides, très compacts, mais il est vrai plus difficilement maintenable.

Répondre à chantal

9

sebsauvage, le 17 jun 2003 à 09:43:06

Tout ce que les languages peuvent faire, l'assembleur peut le faire (pas l'inverse).

Je suis d'accord.
Certains cas particulier nécessitent absolument l'assembleur, mais dans la quasi-totalité des cas, c'est faisable dans un langage de plus haut niveau :-)


C'est vrai que question maintenance, c'est l'horreur.
(Je me souviens avoir écumé les 90000 lignes de code désassemblé du jeu Jazz Jackrabbit pour créer un trainer. Argleu. Je ne recommencerai pas.)

Répondre à sebsauvage

10

 Pascal_, le 20 jun 2003 à 11:47:30

Comme toujours , ca depend de ce qu'on veut faire .....
Si tu veux faire un prog de décryptage , ou un virus ; je te conseil vivement de te mettre à l'assembleur. L'interface sera basique , mais ca ira très vite.
Par contre si tu veux faire un prog avec une interface conviviale , facile a manipuler , etc ... là je te conseil le Delphi ou le Builder .
Tout depend de ce que tu cherche ....
Moi je me suis mis à l'assembleur afin de me rapprocher de l'electronique , afin de voire tous ce qui se passe reelement au niveau le plus bas.
Ca depend si t'es currieux en fait .....

Répondre à Pascal_