close

QB64

Aller à la navigation Aller à la recherche
QB64
Le QB64 SDI


Le logo QB64 et une capture d'écran de l'IDE
Développeur(s)
Galion, équipe QB64
https://qb64.com
Informations générales
Extensions courantes .bas, .bi, .bm
Paradigme Programmation procédurale
Apparaît dans 2007
Dernière version stable 2.0.2 (07 novembre 2021 (11 mois et 12 jours))
Dernière version en test qb64_2021-10-17-04-35-15_45fed46
influencé par QuickBASIC , QBASIC
Système opératif Microsoft Windows , Linux , macOS
Licence LGPLv2.1

QB64 (initialement appelé QB32 ) est un compilateur de langage BASIC intégré pour Microsoft Windows , GNU/Linux et MacOS X. Il est conçu pour être compatible avec QBASIC et QuickBASIC de Microsoft . QB64 génère du code C++ qui est ensuite compilé à l'aide de GCC .

QB64 implémente la plupart des commandes de QBasic et peut exécuter de nombreux programmes écrits pour lui, y compris les jeux de démonstration Gorillas et Nibbles . De plus, QB64 a été conçu pour contenir un IDE similaire à QBasic. Il étend également le langage QuickBASIC pour inclure des types de données 64 bits , ainsi qu'une prise en charge améliorée du son et des graphiques. Il est également capable d'émuler certaines fonctionnalités spécifiques de DOS /x86, telles que l'accès à la souris via Interrupt 33h et plusieurs minuteries.

Depuis la version 2.0, il inclut également des fonctionnalités de débogage.

Historique

QB64 a été initialement compilé avec QuickBASIC 4.5. Après un développement approfondi, Galleon, le développeur, a été gêné par les limitations de mémoire de QuickBASIC et a choisi de passer à Microsoft Basic PDS 7.1, ce qui a résolu tous ces problèmes pendant un certain temps. Depuis la version 0.63, QB64 est capable de s'auto-compiler , donc les limitations de mémoire conventionnelles ne s'appliquent plus.

Syntaxe

La syntaxe QB64 est conçue pour être entièrement compatible avec QuickBASIC. Les numéros de ligne ne sont pas obligatoires et les commandes se terminent par des sauts de ligne ou deux- points .

Un exemple de programme "Hello, World" pourrait être :

IMPRIMER "Bonjour, monde !" 

Un exemple d'émulation de mémoire VGA compatible QuickBASIC :

CLS 
S$ = "Bonjour le monde !" DEF SEG = & HB800 'définit le segment sur la mémoire vidéo. FOR J = 1 TO 15 FOR I = 1 TO LEN ( S$ ) POKE J * 160 + ( I - 1 ) * 2 , ASC ( MID$ ( S$ , I , 1 )) 'caractère POKE J * 160 + ( I - 1 ) * 2 + 1 , ( J + 128 ) SUIVANT SUIVANT  
   
     
         
                    
                      
    

Un exemple de la façon dont QB64 autorise les fichiers image et audio :

effet_sonore& = _SNDOPEN ( "son.wav" ) _SNDPLAY effet_sonore&  
 
image& = _LOADIMAGE ( "fichier_image.png" ) _PUTIMAGE ( 0 , 0 ), image&  
  

Extensions à QBASIC

Les commandes étendues QB64 commencent par un caractère de soulignement pour éviter les conflits avec les noms qui pourraient avoir été utilisés dans un programme QuickBASIC. QB64 étend le langage de plusieurs manières. Ajoute de nouveaux types de données , notamment _BIT, et _BYTE, ainsi que des types de données non signés. Les nouveaux types de données ont des suffixes, tout comme les types de données BASIC traditionnels . QB64 comprend également une bibliothèque audio qui vous permet de lire les formats audio les plus courants, y compris les fichiers MP3 , Ogg Vorbis et WAV , ainsi que des bibliothèques qui offrent aux utilisateurs des graphiques de résolution supérieure au maximum de 640x480 offert par QuickBASIC, en utilisant des polices typographiques dessin d'image aux formats BMP , PNG et Jpeg , et l'utilisation de 32 bits par pixel contrairement au maximum précédent de 256 couleurs. Le programmeur n'a pas à spécifier les bibliothèques de programmation à inclure puisque QB64 le fait automatiquement. Le programmeur a la possibilité d'inclure sa propre bibliothèque à l'aide de la métacommande $INCLUDE, comme cela a été fait avec QuickBASIC. _INTEGER64_FLOAT

Bibliothèques

Les versions actuelles (et futures) intègrent FreeGLUT pour les graphiques et le texte.

Une branche de développement hébergée sur GitHub est mise à jour avec des ajouts fréquents de code source et des correctifs .

QB64 peut également utiliser les DLL Windows , les fonctions et les commandes C++ via un bloc DECLARE LIBRARY. Les utilisateurs peuvent également accéder aux fichiers d'en-tête pour exécuter des fonctions C.

Liens externes