QB64
| QB64 | ||
|---|---|---|
|
QB64 logosu ve IDE'nin ekran görüntüsü | ||
| Geliştirici(ler) | ||
|
Kalyon, QB64 Ekibi https://qb64.com | ||
| Genel bilgi | ||
| Ortak Uzantılar | .bas, .bi, .bm | |
| paradigma | Prosedürel Programlama | |
| Ortaya çıkan | 2007 | |
| En son kararlı sürüm | 2.0.2 (07 Kasım 2021 (11 ay 12 gün)) | |
| Testlerdeki son sürüm | qb64_2021-10-17-04-35-15_45fed46 | |
| tarafından etkilenmiş | QuickBASIC , QBASIC | |
| İşletim sistemi | Microsoft Windows , Linux , macOS | |
| Lisans | LGPLv2.1 | |
QB64 (başlangıçta QB32 olarak adlandırılır ) Microsoft Windows , GNU/Linux ve MacOS X için yerleşik bir BASIC dil derleyicisidir . Microsoft'un QBASIC ve QuickBASIC ile uyumlu olacak şekilde tasarlanmıştır . QB64 , daha sonra GCC kullanılarak derlenen C++ kodu üretir .
QB64, QBasic'in komutlarının çoğunu uygular ve Gorillas ve Nibbles demo oyunları da dahil olmak üzere onun için yazılmış birçok programı çalıştırabilir . Ayrıca QB64, QBasic'e benzer bir IDE içerecek şekilde tasarlanmıştır . Ayrıca QuickBASIC dilini 64 bit veri türlerini ve ayrıca ses ve grafikler için geliştirilmiş desteği içerecek şekilde genişletir. Ayrıca, 33h Interrupt aracılığıyla fareye erişim ve çoklu zamanlayıcılar gibi DOS /x86'nın bazı belirli özelliklerini taklit etme yeteneğine de sahiptir.
Sürüm 2.0'dan bu yana hata ayıklama olanakları da içerir.
Tarih
QB64, orijinal olarak QuickBASIC 4.5 ile derlenmiştir. Kapsamlı geliştirmeden sonra, geliştirici Galleon, QuickBASIC'in bellek sınırlamaları tarafından engellendi ve tüm bu sorunları bir süreliğine çözen Microsoft Basic PDS 7.1'e geçmeyi seçti. 0.63 sürümünden bu yana, QB64 kendi kendini derleme yeteneğine sahiptir , bu nedenle geleneksel bellek sınırlamaları artık geçerli değildir.
Sözdizimi
QB64 sözdizimi QuickBASIC ile tam uyumlu olacak şekilde tasarlanmıştır. Satır numaraları gerekli değildir ve komutlar satır sonları veya iki nokta üst üste ile sonlandırılır .
Örnek bir "Merhaba, Dünya" programı şunlar olabilir:
YAZDIR "Merhaba dünya!"
QuickBASIC uyumlu VGA bellek öykünmesine bir örnek:
CLS
S$ = "Merhaba dünya!" DEF SEG = & HB800 'segmenti video belleğine ayarlar. FOR J = 1 - 15 FOR I = 1 TO LEN ( S$ ) POKE J * 160 + ( I - 1 ) * 2 , ASC ( MID$ ( S$ , I , 1 )) 'karakter POKE J * 160 + ( I - 1 ) * 2 + 1 , ( J + 128 ) SONRAKİ SONRAKİ
QB64'ün görüntü ve ses dosyalarına nasıl izin verdiğine bir örnek:
sound_effect& = _SNDOPEN ( "sound.wav" ) _SNDPLAY sound_effect&
image& = _LOADIMAGE ( "file_image.png" ) _PUTIMAGE ( 0 , 0 ), image&
QBASIC Uzantıları
QB64 genişletilmiş komutları, bir QuickBASIC programında kullanılmış olabilecek herhangi bir adla çakışmaları önlemek için bir alt çizgi karakteriyle başlar. QB64, dili çeşitli şekillerde genişletir. İmzasız veri türlerinin yanı sıra , ve dahil olmak üzere yeni veri türleri ekler . Yeni veri türleri, tıpkı geleneksel BASIC veri türleri gibi son eklere sahiptir . QB64 ayrıca MP3 , Ogg Vorbis ve WAV dosyaları dahil en yaygın ses formatlarını çalmanıza izin veren bir ses kitaplığının yanı sıra tipografik yazı tiplerini BMP , PNG ve Jpeg formatlarında resim çizimi ve önceki maksimum 256 renkten farklı olarak piksel başına 32 bit kullanımı . QB64 otomatik olarak yaptığı için programcının dahil edilecek programlama kitaplıklarını belirtmesi gerekmez. Programcı, QuickBASIC'de olduğu gibi $INCLUDE meta komutunu kullanarak kendi kitaplıklarını dahil etme seçeneğine sahiptir.
_BIT_BYTE_INTEGER64_FLOAT
Kitaplıklar
Mevcut (ve gelecekteki) sürümler , grafikler ve metinler için FreeGLUT'u entegre eder.
GitHub'da barındırılan bir geliştirme dalı , sık sık kaynak kodu eklemeleri ve düzeltmeleriyle güncellenir .
QB64, bir DECLARE LIBRARY bloğu aracılığıyla Windows DLL'lerini , işlevlerini ve C++ komutlarını da kullanabilir . Kullanıcılar ayrıca C işlevlerini yürütmek için başlık dosyalarına erişebilir.