Qu'est-ce que le format de fichier BAS ?
.bas est l'extension de fichier standard pour les fichiers de code source BASIC. Le BASIC - Beginners' All-purpose Symbolic Instruction Code - a été créé au Dartmouth College en 1964 et est devenu le langage de programmation dominant sur les micro-ordinateurs familiaux des années 1980. Des machines comme l'Apple II, le Commodore 64 et l'IBM PC étaient toutes livrées avec des interprètes BASIC qui enregistraient les programmes sous forme de fichiers .bas.
L'extension est partagée par plusieurs dialectes distincts :
- GW-BASIC / QBasic / QB64 Phoenix Edition : Dialectes classiques de la lignée Microsoft. GW-BASIC pouvait enregistrer des programmes dans un format binaire jetonné (non lisible en tant que texte) ; QBasic et le moderne QB64 utilisent des fichiers
.basen texte brut, souvent avec des numéros de ligne hérités tels que10 PRINT "Hello". - Visual Basic 6 / VBA : Les modules de code autonomes sont exportés en tant que
.bas. Ces fichiers commencent parAttribute VB_Name = "ModuleName", suivi des déclarationsSubetFunction. Les modules de formulaire utilisent .frm et les modules de classe utilisent .cls à la place. - FreeBASIC / PureBasic / True BASIC : Compilateurs modernes qui acceptent chacun le
.bascomme format source principal, prenant en charge le code structuré et orienté objet.
Un fichier .bas est du texte brut avec le type MIME text/plain et ne comporte pas de « magic bytes » - il n'y a pas de signature de fichier fixe, le dialecte applicable doit donc être déduit du contenu du fichier ou du contexte du projet. L'exception notable concerne les anciens fichiers GW-BASIC enregistrés sans le drapeau ASCII ,A, qui sont binaires et ne peuvent pas être ouverts comme du texte.
Parce que le .bas est du texte brut, n'importe quel éditeur peut l'ouvrir. Les IDE tels que Visual Studio Code et Microsoft Visual Studio offrent la coloration syntaxique et l'IntelliSense pour les modules .bas modernes de Visual Basic.
Sécurité et sûreté
RISQUE : MEDIUMUn fichier .bas est un code source - le lire est inoffensif, mais c'est un programme. Compiler et exécuter un .bas inconnu exécute tout ce qu'il contient, et les modules .bas VBA peuvent contenir des macros malveillantes (un vecteur courant de logiciels malveillants lorsqu'ils sont importés dans Office). Lisez la source avant de l'exécuter ou de l'importer, et n'activez/n'exécutez pas de code provenant d'expéditeurs non fiables. La simple visualisation dans un éditeur de texte ne pose aucun risque.
Détails du format
en bref- Module exporté VBA / VB6 - Un module de code exporté depuis Microsoft Office VBA ou Visual Basic 6, commençant par « Attribute VB_Name= ».
- Programme GW-BASIC / QuickBASIC jetonné - Ancien BASIC MS-DOS enregistré dans un format de jeton binaire compressé (non textuel) par GW-BASIC/QBASIC.
Programmes qui ouvrent les fichiers BAS
Détails techniques
spécifications approfondies| Type MIME | text/plain |
| Encodage du fichier | Texte brut ASCII ou UTF-8 ; une variante binaire jetonnée existe pour les fichiers GW-BASIC enregistrés sans le drapeau `,A` |
| Magic bytes / signature de fichier | Aucun - pas de séquence d'octets fixe ; le dialecte applicable doit être déduit du contenu du fichier ou du contexte du projet |
| En-tête de module VBA / VB6 | Les modules exportés commencent par `Attribute VB_Name = "ModuleName"` suivi des déclarations `Sub` et `Function` |
| Syntaxe classique avec numéros de ligne | Chaque instruction est préfixée par un numéro de ligne (ex: `10 PRINT "Hello"`, `20 GOTO 10`) dans les dialectes antérieurs à QBasic |
| Syntaxe moderne par blocs | Blocs structurés `Sub`, `Function` et `End Sub` utilisés dans QBasic, VB6, FreeBASIC et PureBasic |
| Styles de commentaires | Mot-clé `REM` (tous les dialectes) ou l'apostrophe `'` comme raccourci (QBasic et dialectes ultérieurs) |
| Sensibilité à la casse | Les mots-clés ne sont pas sensibles à la casse dans la plupart des dialectes BASIC ; les identifiants suivent la même convention |
| Modèle d'exécution | Interprété dans le BASIC classique et QBasic ; compilé à l'avance (AOT) dans FreeBASIC et PureBasic ; QB64 Phoenix Edition transpiles vers C puis compile nativement |
| Extensions de modules liées | `.frm` (module de formulaire VB6), `.cls` (module de classe VB6), `.vb` (source VB.NET), `.vbs` (VBScript) |
| Prise en charge des plateformes | À l'origine MS-DOS et Windows ; FreeBASIC et QB64 Phoenix Edition ciblent également macOS et Linux |
| Paradigme de langage | Procédural dans les dialectes classiques et QBasic ; extensions orientées objet disponibles dans VB6, FreeBASIC et PureBasic |
| Fins de ligne | CRLF (`\r\n`) typique des outils BASIC sous Windows ; LF courant dans les compilateurs basés sur Unix comme FreeBASIC sur Linux |
| Fragmentation des dialectes | Pas de norme unique - GW-BASIC, QBasic, VB6, VBA, FreeBASIC, PureBasic, True BASIC et QB64 ont chacun des extensions de syntaxe incompatibles |
| Publié | BASIC: 1964 (Dartmouth); .bas widely used since 1980s microcomputers |
| Standard ouvert | Oui · libre de droits |
| Spécification | learn.microsoft.com |
Conversions BAS
Q&R de la communauté
posées par les utilisateursPas encore de questions - soyez le premier à poser une question sur les fichiers BAS.