Hva er BAS-filformatet?
.bas er standard filendelse for BASIC-kildekodefiler. BASIC - Beginners' All-purpose Symbolic Instruction Code - ble opprettet ved Dartmouth College i 1964 og ble det dominerende programmeringsspråket på 1980-tallets hjemmedatamaskiner. Maskiner som Apple II, Commodore 64 og IBM PC ble alle levert med BASIC-tolker som lagret programmer som .bas-filer.
Endelsen deles på tvers av flere distinkte dialekter:
- GW-BASIC / QBasic / QB64 Phoenix Edition: Klassiske dialekter i Microsoft-linjen. GW-BASIC kunne lagre programmer i et tokenisert binærformat (ikke lesbart som tekst); QBasic og moderne QB64 bruker
.bas-filer i ren tekst, ofte med eldre linjenummer som10 PRINT "Hello". - Visual Basic 6 / VBA: Frittstående kodemoduler eksporteres som
.bas. Disse filene starter medAttribute VB_Name = "ModuleName", etterfulgt avSub- ogFunction-deklarasjoner. Skjema-moduler bruker .frm og klassemoduler bruker .cls i stedet. - FreeBASIC / PureBasic / True BASIC: Moderne kompilatorer som hver aksepterer
.bassom sitt primære kildeformat, og støtter strukturert og objektorientert kode.
En .bas-fil er ren tekst med MIME-typen text/plain og har ingen magic bytes - det finnes ingen fast filsignatur, så den gjeldende dialekten må utledes fra filinnholdet eller prosjektkonteksten. Det bemerkelsesverdige unntaket er gamle GW-BASIC-filer lagret uten ,A ASCII-flagget, som er binære og ikke kan åpnes som tekst.
Fordi .bas er ren tekst, kan ethvert redigeringsprogram åpne den. IDE-er som Visual Studio Code og Microsoft Visual Studio tilbyr syntaksutheving og IntelliSense for moderne Visual Basic .bas-moduler.
Sikkerhet og trygghet
RISIKO: MEDIUMEn .bas er kildekode - å lese den er ufarlig, men det er et program. Kompilering og kjøring av en ukjent .bas utfører det den inneholder, og VBA .bas-moduler kan inneholde ondsinnede makroer (en vanlig vektor for skadevare når de importeres til Office). Les kilden før du kjører eller importerer den, og ikke aktiver/kjør kode fra ukjente sendere. Vanlig visning i et tekstredigeringsprogram utgjør ingen risiko.
Formatdetaljer
i et nøtteskall- VBA / VB6 eksportert modul - En kodemodul eksportert fra Microsoft Office VBA eller Visual Basic 6, som starter med «Attribute VB_Name=».
- Tokenisert GW-BASIC / QuickBASIC-program - Gammelt MS-DOS BASIC lagret i et komprimert binært token-format (ikke tekst) av GW-BASIC/QBASIC.
Programmer som åpner BAS-filer
Tekniske detaljer
dyp spesifikasjon| MIME-type | text/plain |
| Filkoding | ASCII eller UTF-8 ren tekst; en tokenisert binær variant eksisterer for GW-BASIC-filer lagret uten `,A`-flagget |
| Magic bytes / filsignatur | Ingen - ingen fast bytesekvens; den gjeldende dialekten må utledes fra filinnhold eller prosjektkontekst |
| VBA / VB6 modul-header | Eksporterte moduler starter med `Attribute VB_Name = "ModuleName"` etterfulgt av `Sub`- og `Function`-deklarasjoner |
| Klassisk linjenummer-syntaks | Hvert utsagn har et linjenummer som prefiks (f.eks. `10 PRINT "Hello"`, `20 GOTO 10`) i dialekter før QBasic |
| Moderne blokk-syntaks | Strukturerte `Sub`-, `Function`- og `End Sub`-blokker brukt i QBasic, VB6, FreeBASIC og PureBasic |
| Kommentarstiler | Nøkkelordet `REM` (alle dialekter) eller apostrof `'` som forkortelse (QBasic og senere dialekter) |
| Skille mellom store og små bokstaver | Nøkkelord skiller ikke mellom store og små bokstaver i de fleste BASIC-dialekter; identifikatorer følger samme konvensjon |
| Eksekveringsmodell | Tolket i klassisk BASIC og QBasic; kompilert på forhånd (AOT) i FreeBASIC og PureBasic; QB64 Phoenix Edition transpilerer til C og kompilerer deretter lokalt |
| Relaterte modulendelser | `.frm` (VB6-skjemamodul), `.cls` (VB6-klassemodul), `.vb` (VB.NET-kilde), `.vbs` (VBScript) |
| Plattformstøtte | Opprinnelig MS-DOS og Windows; FreeBASIC og QB64 Phoenix Edition støtter også macOS og Linux |
| Språkparadigme | Prosedyral i klassiske og QBasic-dialekter; objektorienterte utvidelser tilgjengelig i VB6, FreeBASIC og PureBasic |
| Linjeslutt | CRLF (`\r\n`) er typisk fra Windows-baserte BASIC-verktøy; LF er vanlig i Unix-baserte kompilatorer som FreeBASIC på Linux |
| Dialektfragmentering | Ingen felles standard - GW-BASIC, QBasic, VB6, VBA, FreeBASIC, PureBasic, True BASIC og QB64 har alle inkompatible syntaksutvidelser |
| Utgitt | BASIC: 1964 (Dartmouth); .bas widely used since 1980s microcomputers |
| Åpen standard | Ja · royalty-fri |
| Spesifikasjon | learn.microsoft.com |
BAS-konverteringer
Spørsmål og svar fra fellesskapet
spurt av brukereIngen spørsmål ennå - vær den første til å spørre om BAS-filer.