.S

Fichier S

Assembly Language Source File
Poser une question
RÉPONSE RAPIDE

Un fichier .s est un fichier source en langage assembleur - du texte brut contenant des instructions CPU de bas niveau pour un processeur spécifique tel que x86-64 ou ARM. N'importe quel éditeur de texte peut l'ouvrir pour visualisation. Pour le transformer en programme, exécutez « gcc file.s -o program » sur Linux ou macOS, ou utilisez MinGW ou MASM sur Windows. Le fichier est sûr à ouvrir ; le risque ne commence que si vous assemblez et exécutez du code non fiable.

Développeur : N/A (compiler/toolchain convention - GNU, Unix C toolchains) Catégorie : Fichiers de développement Standard ouvert MIME: text/x-asm
S'OUVRE SUR Windows macOS Linux
Lié : .DO · .MD · .HEX · .XSD

Sur cette page

19k+ extensions indexées
Dernière révision le Aug 4, 2026

Pas sûr de la nature de votre fichier ?

Déposez n'importe quel fichier dans notre identificateur - nous lisons juste les premiers octets pour nommer le format.

Identifier un fichier

Qu'est-ce que le format de fichier S ?

Un fichier .s est un fichier source en langage assembleur en texte brut utilisé sur Unix, Linux, macOS et les chaînes d'outils embarquées. Il contient des instructions CPU lisibles par l'homme - mnémoniques, opérandes, directives d'assembleur et étiquettes - qu'un assembleur traduit directement en code objet.

L'extension .s est une convention du pipeline du compilateur C Unix datant des années 1970. L'exécution de gcc -S sur un fichier source C interrompt la compilation après la génération du code et écrit un fichier .s, vous permettant d'inspecter ou d'ajuster manuellement la sortie du compilateur avant l'assemblage. Ce fichier est ensuite transmis à as (l'assembleur GNU) pour produire un fichier objet .o prêt pour l'édition de liens.

Une convention subtile mais importante sépare le .s minuscule du .S majuscule : les fichiers .s vont directement à l'assembleur, tandis que les fichiers .S passent d'abord par le préprocesseur C, autorisant les directives #include, #define et #ifdef - une distinction sur laquelle reposent fortement les bases de code des noyaux et des firmwares.

La syntaxe varie selon la chaîne d'outils. GNU as utilise par défaut la syntaxe AT&T sur x86 ; les assembleurs Windows tels que MASM et NASM (style Intel) utilisent la syntaxe Intel. La même structure de fichier .s est utilisée quel que soit l'ISA cible - x86-64, ARM/AArch64, RISC-V, MIPS et autres - de sorte que l'extension elle-même ne transmet aucune information sur l'architecture.

Les fichiers .s ne comportent pas d'octets magiques et ont le type MIME text/x-asm. N'importe quel éditeur de texte les ouvre ; les éditeurs avec coloration syntaxique pour l'assembleur tels que VS Code, Vim et Emacs sont préférables pour les fichiers volumineux. L'extension .asm, étroitement liée, remplit la même fonction sur de nombreuses chaînes d'outils non-Unix.

Sécurité et sûreté

RISQUE : LOW

Un fichier .s est du texte brut et ne fait rien par lui-même - il ne peut pas s'exécuter tant que vous ne l'assemblez pas et ne l'exécutez pas délibérément. Le risque est le même que pour tout code source que vous choisissez de construire : l'assembleur peut contenir des instructions qui font tout ce que le CPU permet, donc n'assemblez et n'exécutez que des fichiers .s provenant de sources de confiance, et lisez l'assembleur inconnu avant de le construire. Ouvrir un .s dans un éditeur de texte pour le visualiser est totalement sûr.

Détails du format

en bref
NOM COMPLETAssembly Language Source Filealias Assembly source, Assembler source
DÉVELOPPEURN/A (compiler/toolchain convention - GNU, Unix C toolchains)depuis 1970s (Unix C compiler toolchain convention)
TYPE MIMEtext/x-asm
TYPECode source assembleur en texte brut
STANDARDOuvert · libre de droits
Cette extension est également utilisée par…
  • Source du langage de programmation S - Code source pour le langage statistique S (prédécesseur de R) ; rare aujourd'hui, encore présent dans le code statistique hérité.
  • Source Scheme (peu commun) - Occasionnellement un fichier source Scheme/Lisp, bien que .scm soit l'extension habituelle.

Programmes qui ouvrent les fichiers S

Windows3 apps
Notepad Open-source Ouvrez directement ; le menu Langage propose la coloration Assembly. Visualisation et édition légère.
Visual Studio Code Gratuit Ouvrez le fichier .s ; installez une extension « x86/ARM Assembly » pour la coloration syntaxique. Éditez comme du texte brut.
MASM / MinGW-w64 GCC (to assemble) Gratuit Pour le construire : « gcc file.s -o program.exe » (MinGW) ou « ml64 » (MASM de Visual Studio).
macOS2 apps
Visual Studio Code Gratuit Ouvrez le fichier .s ; installez une extension « x86/ARM Assembly » pour la coloration syntaxique. Éditez comme du texte brut.
Xcode command-line tools (clang/as) Gratuit Installez avec « xcode-select --install », puis assemblez en utilisant clang/as depuis le Terminal.
Linux3 apps
GNU as (binutils) + GCC Open-source Assemblez avec « as file.s -o file.o » ou construisez directement avec « gcc file.s -o program ». La chaîne d'outils de référence.
GNU Emacs / Vim Open-source Ouvrez en mode asm-mode (Emacs) ou avec la coloration syntaxique (Vim) pour lire et éditer.
gedit / any text editor Open-source Ouvrez en texte brut pour une visualisation rapide ; gedit souligne les syntaxes assembleur courantes.

Détails techniques

spécifications approfondies
Type de fichierSource en langage assembleur en texte brut
Type MIMEtext/x-asm (également acceptés : text/x-assembly, text/plain)
EncodageASCII / UTF-8
Signature de fichier (octets magiques)Aucune - texte brut sans en-tête fixe ; commence généralement par un commentaire (#, ;), une étiquette (se terminant par :) ou une directive telle que .text ou .global
Structure des lignesÉtiquette optionnelle, directive d'assembleur ou mnémonique CPU avec opérandes, commentaire en ligne - une opération logique par ligne
Convention de casseLe .s minuscule est assemblé directement ; le .S majuscule passe d'abord par le préprocesseur C (supporte #include, #define, #ifdef)
Émission du compilateurgcc -S ou clang -S émet un fichier .s à partir d'une source C/C++, interrompant le pipeline de construction après la génération du code et avant l'assemblage
ISA supportésx86-64, ARM/AArch64, RISC-V, MIPS, POWER/PowerPC, AVR, et autres - l'extension est neutre vis-à-vis de l'architecture
Variantes de syntaxeSyntaxe AT&T (par défaut sur GNU as pour x86), syntaxe Intel (MASM, NASM), ARM Unified Assembly Language (UAL)
Directives d'assembleur courantes.text, .data, .bss, .global, .section, .align, .byte, .word, .long, .string
Chaînes d'outilsGNU Binutils (as), assembleur intégré LLVM/Clang, Microsoft MASM, NASM, yasm, armasm
Rôle dans le pipeline de constructionÉtape textuelle intermédiaire entre la génération de code du compilateur et la création du fichier objet ; assemblé par as ou équivalent pour produire un fichier .o
Support du prétraitementLa variante .S (majuscule) est passée par cpp avant l'assemblage, permettant la compilation conditionnelle et l'expansion de macros à l'intérieur de la source asm
Taille typique de fichier1 Ko - 500 Ko
Environnements associésLinux, Unix, macOS, Windows, embarqué/bare-metal (microcontrôleurs, code de démarrage du noyau, chargeurs d'amorçage)
Publié1970s (Unix C compiler toolchain convention)
Dernière versionN/A (no versioned spec; depends on target CPU ISA and assembler)
Standard ouvertOui · libre de droits
Spécificationsourceware.org

Conversions S

Q&R de la communauté

posées par les utilisateurs
Poser une question rapide
Obtenez de l'aide de personnes qui travaillent avec des fichiers S. Soyez précis - incluez votre système et la version du logiciel.
Aucun compte requis · réponses généralement sous un jour

Pas encore de questions - soyez le premier à poser une question sur les fichiers S.

Foire aux questions

Qu'est-ce qu'un fichier .s ?
C'est un fichier source en langage assembleur - des instructions CPU de bas niveau en texte brut pour un processeur spécifique (x86, ARM, RISC-V, etc.). C'est ce qu'un compilateur C émet avant de produire du code machine, et c'est ainsi que l'assembleur écrit à la main est sauvegardé.
Comment ouvrir un fichier .s ?
Ouvrez-le dans n'importe quel éditeur de texte ou IDE - VS Code, Notepad++, vim, Emacs. Pour le construire réellement, utilisez un assembleur ou une chaîne d'outils telle que GNU as ou « gcc file.s -o program ».
Quelle est la différence entre .s et .S ?
Le .s minuscule est de l'assembleur pur que l'assembleur lit directement. Le .S majuscule est de l'assembleur qui passe d'abord par le préprocesseur C, il peut donc utiliser #include, #define et #ifdef (courant dans le code système/noyau). La casse est importante sur Unix/Linux.
Comment compiler un fichier .s ?
Sur Linux/macOS : « gcc file.s -o program » (assemblage + lien) ou « as file.s -o file.o » (assemblage seul). Sur Windows, utilisez le gcc de MinGW ou le ml64 de MASM. Vous avez besoin de l'assembleur correspondant au CPU et à la syntaxe du fichier.
Puis-je convertir de l'assembleur (.s) vers le C ?
Pas fidèlement. L'assembleur abandonne la structure de haut niveau dont le C a besoin, il n'existe donc pas de véritable convertisseur .s vers C. Les décompilateurs comme Ghidra produisent du C approximatif à partir de binaires compilés, pas un code source équivalent.
Est-ce que .s est la même chose que .asm ?
Ce sont tous deux des sources assembleur. .s est la convention Unix/GNU (souvent syntaxe AT&T via GNU as) ; .asm est plus courant sur Windows/DOS (NASM, MASM, souvent syntaxe Intel). Le CPU et l'assembleur déterminent le dialecte, pas l'extension.

Références

1GNU Assembler (as) manual - Sourcewaresourceware.org
2GCC - Overall options (-S emits assembly)gcc.gnu.org

Continuer l'exploration

à travers la base de données

Top des extensions cette semaine

1.AQQAQQ Instant Messenger File
2.CRDOWNLOADChrome Partial Download File
3.PARTPartial Download File
4.BINCD/DVD Disc Image (BIN/CUE)
5.RPMSGRestricted Permission Message
6.MDMarkdown Document
7.NOMEDIAAndroid No-Media Marker File
8.PRO6XProPresenter 6 Bundle File
9.EXEWindows Executable (Portable Executable)
10.PRDXSoftMaker Presentations Document

Extensions liées

.DOStata Do-File
.MDMarkdown Document
.HEXIntel HEX File
.XSDXML Schema Definition
.MAPSource Map (JavaScript / CSS)
.CONFIGConfiguration File

Outils de fichiers gratuits

Un identificateur de fichier et un convertisseur d'images dans le navigateur - tout s'exécute sur votre appareil.

Ouvrir la boîte à outils

Parcourir les extensions de fichiers A-Z