Je suis en train de lire le livre "Professional Assembly Language", avec un exemple de code écrit pour les processeurs Intel IA-32. L'assembleur utilisé est GNU Assembler. Où puis-je trouver cette référence d'assemblage? Par exemple, en écrivant Assembly for Windows, je peux trouver la référence sur le site WEB d'Intel. Qu'en est-il de Linux et de GNU Assembler?Linux Assembly reference
Répondre
Wikipédia fait référence à ceci: http://sourceware.org/binutils/docs-2.20/as/
L'assembleur dépend uniquement de la CPU et non du système d'exploitation. Les documents Intel sont donc ce que vous cherchez.
Si vous souhaitez appeler les fonctions du système d'exploitation, vous devez lire les documents ABI du compilateur (qui expliquent comment transmettre les arguments et comment la valeur de retour est gérée). De plus, vous avez besoin d'une liste de fonctions que vous pouvez trouver dans les pages de manuel de votre machine Linux. Pour commencer, je suggère de compiler un programme dans un langage de haut niveau comme C en assembleur pour voir ce qui se passe. Appelez simplement gcc -S file.c
au lieu de gcc -c file.c
.
Vrai mais comment est-ce lié à la question ou à ma réponse? –
Si vous travaillez avec un livre sur Intel IA 32, alors vous devriez essayer saisir les manuels de jeu d'instructions à partir du site d'Intel http://developer.intel.com/products/processor/manuals/index.htm Je pense que ce sera comme une référence complète pour l'instruction.
La référence du langage d'assemblage pour Linux et Windows sera la même s'ils sont installés sur la même architecture, car le langage d'assemblage dépend de l'architecture. Utilisez la référence du jeu d'instructions si vous utilisez une CPU Intel.
Pour la syntaxe de votre assembleur bien vous devriez vérifier le manuel qui l'accompagne pour gnu
- 1. Assembly - Array (Linux)
- 2. Visual Studio reference x64 GAC
- 3. SAS Pocket Reference
- 4. javascript reference in xslt
- 5. Paramètres de ligne de commande Linux 64 dans Assembly
- 6. Maven assembly: assembly
- 7. "undefined reference to" avec singleton
- 8. .NET Web Reference Erreur SSL
- 9. Mono .EXE assembly icon icon
- 10. Comment inclure log4j.properties avec mvn assembly: assembly?
- 11. Disposing assembly
- 12. API assembly
- 13. WCF Service Reference crée une deuxième classe
- 14. Comment nommez-vous les propriétés 'back-reference'?
- 15. Null Reference Exception et le ?? Opérateur
- 16. NDK OpenGL undefined reference to glVertexPointer
- 17. Service Web Reference: Emplacement des classes générées?
- 18. MySQL C++ connecteur: undefined reference to `get_driver_instance »
- 19. WCF: 'Update Service Reference' supprime mes fichiers
- 20. Visual Studio 2008 Explicit Reference Error
- 21. Pourquoi l'option/reference de svcutil.exe ne fonctionne-t-elle pas?
- 22. masm assembly externals non résolus
- 23. RegisterClassEx in Assembly
- 24. WPF Prism Assembly StrongNaming
- 25. Pentium Assembly Code Question
- 26. En Line Assembly Exemple
- 27. .NET Assembly Version
- 28. Chiffrer un assembly [C#]
- 29. .net 2.0 assembly security
- 30. Reporting Services Custom Assembly
Avez-vous essayé wikipedia: http://en.wikipedia.org/wiki/GNU_Assembler et les ressources qui s'y trouvent ? –
La syntaxe par défaut est connue sous le nom de syntaxe AT & T si cela vous aide à google it. IIRC 'as' a cependant un commutateur pour accepter la syntaxe Intex. – Rup