كويك بيسك
مايكروسوفت كويك بيسيك (أو QB ) هي بيئة تطوير متكاملة (IDE) ومترجم للغة البرمجة بيسك ، طورتها مايكروسوفت . تعمل كويك بيسيك بشكل أساسي على نظام التشغيل MS-DOS ، مع وجود نسخة قصيرة الأمد لنظام التشغيل ماك الكلاسيكي . وهي مبنية بشكل عام على لغة GW-BASIC ، لكنها تضيف أنواعًا معرفة من قبل المستخدم، وهياكل برمجية محسّنة، ودعمًا أفضل للرسومات والأقراص، ومترجمًا بالإضافة إلى المفسر . سوّقت مايكروسوفت كويك بيسيك كمستوى تمهيدي لنظام تطوير بيسك الاحترافي الخاص بها. [ 1 ] كما سوّقت مايكروسوفت بيئتي تطوير متكاملتين مماثلتين للغتين C وباسكال، وهما كويك سي وكويك باسكال .
تاريخ
أصدرت مايكروسوفت النسخة الأولى من برنامج QuickBASIC في 18 أغسطس 1985 على قرص مرن واحد بحجم 5.25 بوصة وسعة 360 كيلوبايت . احتوت النسخة 2.0 من QuickBASIC والإصدارات اللاحقة على بيئة تطوير متكاملة (IDE)، مما يسمح للمستخدمين بالتحرير مباشرةً في محرر النصوص الظاهر على الشاشة.
على الرغم من استمرار دعم أرقام الأسطر في QuickBASIC، إلا أنها أصبحت اختيارية. كما أصبحت عمليات الانتقال بين أسطر البرنامج تعمل مع التسميات المُسماة. وأضافت الإصدارات اللاحقة أيضًا هياكل تحكم، مثل عبارات الشرط متعددة الأسطر وكتل التكرار.
تم تضمين مُجمِّع "PC BASIC" من مايكروسوفت لتحويل البرامج إلى ملفات تنفيذية لنظام DOS. بدءًا من الإصدار 4.0، احتوى المُحرِّر على مُفسِّر يسمح للمبرمج بتشغيل البرنامج دون مغادرة المُحرِّر. استُخدم المُفسِّر لتصحيح أخطاء البرنامج قبل إنشاء ملف تنفيذي. لسوء الحظ، كانت هناك بعض الاختلافات الدقيقة بين المُفسِّر والمُجمِّع، مما يعني أن البرامج الكبيرة التي تعمل بشكل صحيح في المُفسِّر قد تفشل بعد التجميع، أو قد لا تُجمَّع على الإطلاق بسبب اختلافات في إجراءات إدارة الذاكرة. [ 2 ]
كان الإصدار الأخير من QuickBASIC هو الإصدار 4.5 (1988)، على الرغم من استمرار تطوير نظام Microsoft BASIC Professional Development System (PDS) حتى إصداره الأخير 7.1 في أكتوبر 1990. [ 3 ] في الوقت نفسه، تم تغيير حزمة QuickBASIC دون علم المستخدم، بحيث تستخدم الأقراص نفس تقنية الضغط المستخدمة في BASIC PDS 7.1. [ 4 ] سُمّي إصدار بيئة التطوير المتكاملة (IDE) من Basic PDS 7.x باسم QuickBASIC Extended (QBX)، وكان يعمل فقط على نظام DOS، على عكس باقي مكونات Basic PDS 7.x التي كانت تعمل أيضًا على نظام التشغيل OS/2.
كان برنامج QuickBASIC 4.5 موضوعًا للعديد من الكتب والمقالات والدروس التعليمية البرمجية، ووصل إلى ذروة انتشار لغة BASIC في سوق أجهزة الكمبيوتر الشخصية. في عام 1989، قامت شركة مايكروسوفت برس بتضمين برنامج QuickBASIC Interpreter 1.0 1989 في نظام تعليمي متكامل يجمع بين الكتاب والبرنامج، تحت اسم Learn BASIC Now . بلغ سعر المنتج المجمع 39.95 دولارًا أمريكيًا، وتضمن مقدمة كتبها بيل غيتس، الذي أفاد بأن لغة BASIC كانت قيد الاستخدام الفعلي من قبل أكثر من أربعة ملايين مستخدم لأجهزة الكمبيوتر الشخصية. [ 5 ]
كان برنامج Visual Basic الإصدار 1.0 لنظام MS-DOS هو البرنامج الذي خلف QuickBASIC وBasic PDS ، وقد تم إصداره بنسختين: Standard وProfessional. لم تتضمن الإصدارات اللاحقة من Visual Basic إصدارات DOS، حيث ركزت مايكروسوفت على تطبيقات ويندوز.
تم تضمين مجموعة فرعية من لغة QuickBASIC 4.5، تُسمى QBasic ، مع نظام MS-DOS 5 والإصدارات اللاحقة، لتحل محل لغة GW-BASIC المُضمنة في الإصدارات السابقة من MS-DOS. بالمقارنة مع QuickBASIC، تقتصر QBasic على مُفسِّر فقط، وتفتقر إلى بعض الوظائف، ولا يمكنها التعامل إلا مع برامج ذات حجم محدود، كما أنها لا تدعم وحدات البرامج المنفصلة. ولأنها تفتقر إلى مُصرِّف، فلا يُمكن استخدامها لإنتاج ملفات تنفيذية، على الرغم من أنه لا يزال بالإمكان تجميع شفرة المصدر الخاصة بها بواسطة مُصرِّف QuickBASIC 4.5 أو PDS 7.x أو VBDOS 1.0، إن وُجد.
أُطلق برنامج QuickBASIC 1.00 لنظام التشغيل Apple Macintosh عام 1988. وكان مدعومًا رسميًا على الأجهزة التي تعمل بنظام التشغيل System 6 بذاكرة وصول عشوائي (RAM) لا تقل عن 1 ميجابايت. [ 6 ] كما كان بالإمكان تشغيل QuickBASIC على نظام التشغيل System 7 ، شريطة تعطيل عنونة 32 بت. وقد اختلف برمجة QuickBASIC بشكل ملحوظ على نظام Macintosh، نظرًا لأن النظام يوفر واجهة مستخدم رسومية ونموذج برمجة قائم على الأحداث. [ 7 ]
أمثلة على بناء الجملة
مرحباً بالعالم ، النسخة المختصرة:
؟ "مرحبا بالعالم"مرحباً بالعالم ، النسخة الموسعة:
CLS PRINT "Hello, World" ENDدع عدد الزجاجات = 99 : دع عدد الزجاجات$ = "99" : دع عدد الزجاجات$ = " زجاجات" من أجل A = 1 إلى 99 اطبع عدد الزجاجات$ ؛ عدد الزجاجات$ ؛ " من البيرة على الحائط، " ؛ عدد الزجاجات$ ؛ عدد الزجاجات$ ؛ " من البيرة." دع عدد الزجاجات = عدد الزجاجات - 1 إذا كان عدد الزجاجات > 0 دع عدد الزجاجات$ = LTRIM$ ( STR$ ( عدد الزجاجات )) : دع الضمير$ = "واحد" إذا كان عدد الزجاجات = 0 دع عدد الزجاجات$ = "لا مزيد" : دع الضمير$ = "هو" إذا كان عدد الزجاجات <> 1 دع عدد الزجاجات$ = " زجاجات" إذا كان عدد الزجاجات = 1 دع عدد الزجاجات$ = " زجاجة" اطبع "خذ " ؛ الضمير$ ؛ "انزلوا ومرروها،" ؛ زجاجات ؛ زجاجات ؛ "من البيرة على الحائط." اطبع : التالي اطبع "لا مزيد من زجاجات البيرة على الحائط، لا مزيد من زجاجات البيرة." اطبع " اذهب إلى المتجر واشترِ المزيد، 99 زجاجة بيرة على الحائط."مثال على الرسومات:
الشاشة 13 DIM a ( 3976 ) AS INTEGER , b ( 3976 ) AS INTEGER , c ( 3976 ) AS INTEGER DIM d ( 3976 ) AS INTEGER , e ( 3976 ) AS INTEGER col % = 16 : col1 % = 16 : col2 % = 16 : col3 % = 16 : col4 % = 16 col5 % = 16 : col6 % = 16 : col7 % = 16 : flag = 1 : flag1 = 1 flag2 = 1 : flag3 = 1 : flag4 = 1 : flag5 = 1 : flag6 = 1 : flag7 = 1 DO GET ( 1 , 38 ) - ( 318 , 62 ) , a PUT ( 2 , 38 ) , a , PSET LINE ( 1 ) ( 38, 1 ) - ( 1 , 62 )، العمود % إذا كانت قيمة flag تساوي 1 ، فإن قيمة col % تساوي قيمة col % تساوي 1. إذا كانت قيمة col % تساوي 32 ، فإن قيمة flag تساوي 2. إذا كانت قيمة flag تساوي 2 ، فإن قيمة col % تساوي قيمة col % تساوي 1. إذا كانت قيمة col % تساوي 16، فإن قيمة flag تساوي 1. احصل على ( 2 , 63 ) - ( 319 , 87 )، bضع ( 1 ، 63 )، b ، PSET LINE ( 319 ، 63 ) - ( 319 ، 87 )، col1 % إذا كانت flag1 = 1 ، فإن col1 % = col1 % + 1 : إذا كانت col1 % = 32 ، فإن flag1 = 2 إذا كانت flag1 = 2 ، فإن col1 % = col1 % - 1 : إذا كانت col1 % = 16 ، فإن flag1 = 1 احصل على ( 1 ، 88 ) - ( 318 ، 112 )، c ضع ( 2 ، 88 )، c ، PSET LINE ( 1 ، 88 ) - ( 1 ، 112 )، col2 % إذا كانت flag2 = 1، فإن col2 % = col2 % + 1 : إذا كانت col2 % = 32، فإن flag2 = 2 إذا كانت flag2 = 2، فإن col2 % = col2 % - 1 : إذا كان col2 % = 16، فإن flag2 = 1. احصل على ( 2 ، 113 ) - ( 319 ، 137 )، d. ضع ( 1 ، 113 )، d ، PSET. ارسم خطًا ( 319 ، 113 ) - ( 319 ، 137 )، col3 % . إذا كان flag3 = 1 ، فإن col3 % = col3 % + 1 : إذا كان col3 % =إذا كان 32، فإن flag3 = 2. إذا كان flag3 = 2 ، فإن col3 % = col3 % - 1. إذا كان col3 % = 16 ، فإن flag3 = 1. احصل على ( 1 ، 138 ) - ( 318 ، 162 ) ، e . ضع ( 2 ، 138 )، e ، PSET. ارسم خطًا ( 1 ، 138 ) - ( 1 ، 162 )، col4 %. إذا كان flag4 = 1 ، فإن col4 % = col4 % + 1. إذا كان col4 % = 32 ، فإن flag4 = 2. إذا كان flag4 = 2 ، فإن col4 % = col4 % - 1. إذا كان col4 % = 16 ، فإن flag4 = 1. كرر حتى طول ( INKEY$ ) .فرز الفقاعات
ملاحظة: مثال على فرز الفقاعات N = 10 DIM A ( 1 TO N ) AS INTEGER FOR L = 1 TO N A ( L ) = INT ( RND * 10 + 1 ) NEXT FOR X = 1 TO N - 1 FOR Y = X + 1 TO N IF A ( X ) < A ( Y ) THEN SWAP A ( X ), A ( Y ) NEXT NEXT FOR L = 1 TO N PRINT A ( L ) NEXT ENDالاستخدامات الحالية
QuickBASIC has a community of hobby programmers who use the compiler to write video games, GUIs and utilities.[8][9][10] The community has several Web sites, message boards and online magazines.[11][12]
Today, programmers sometimes use DOS emulators, such as DOSBox, to run QuickBASIC on Linux and on modern personal computers that no longer support the compiler.[13][14] Alternatives to this include FreeBASIC and QB64, but they cannot yet run all QBasic/QuickBASIC programs.[15]
Since 2008, a set of TCP/IP routines for QuickBASIC 4.x and 7.1 has revitalized some interest in the software. In particular, the vintage computer hobbyist community has been able to write software for old computers that run DOS, allowing these machines to access other computers through a LAN or the internet. This has allowed systems even as old as an 8088 to serve new functions, such as acting as a Web server or using IRC.[16]
Successors
Microsoft's Visual Basic was the successor of QuickBASIC. Other compilers, like PowerBASIC and FreeBASIC, have varying degrees of compatibility. QB64, a multiplatform QuickBASIC to C++ translator, retains close to 100% compatibility and compiles natively for Windows, Linux and macOS.[17]
QuickBASIC Interpreters
Microsoft Press published Learn BASIC Now in 1989, and included the Microsoft QuickBASIC Interpreter 1.0 1989 (QBI.exe) which was a direct derivative interpreter-only of QuickBASIC 4.5 1988 (QB.exe). Microsoft QBasic interpreter, included with MS-DOS 5.0 and onward, was a derivative of QBI 1.0, hence a derivative of QuickBASIC 4.5.[18]
QuickBASIC Interpreter Family Pedigree
QBasic 1.0 1991 ← QuickBASIC Interpreter 1.0 1989 ← QuickBASIC 4.5 1988
See also
References
- ↑ كانت وثائق مايكروسوفت المبكرة تعرض الاسم حصريًا باسم "QuickBASIC"، على الرغم من أن المراجع اللاحقة على موقع مايكروسوفت على الويب تستخدم أيضًا "QuickBasic".
- ↑ "قاعدة معارف مايكروسوفت 45850: إدارة الذاكرة في مُترجم QuickBasic وBasic" . مؤرشف من الأصل بتاريخ 2021-03-02 . تم الاطلاع عليه بتاريخ 2020-11-05 .
- تم توزيع برنامج QuickBASIC 4.5 على مجموعة من خمسة أقراص مرنة DSDD بحجم 5.25 بوصة وسعة 360 كيلوبايت، أو ثلاثة أقراص مرنة DSDD بحجم 3.5 بوصة وسعة 720 كيلوبايت. كما كان بالإمكان تثبيت النسخة الثلاثية الأقراص من بحجم 5.25 بوصة وسعة 1.2 ميجابايت، أو بحجم 3.5 بوصة وسعة 1.44 ميجابايت. ولتوفير التكاليف، تم ضغط الملفات، وأصبحت الإصدارات اللاحقة تُشحن على أربعة أقراص بحجم 5.25 بوصة فقط، أو قرصين بحجم 3.5 بوصة.
- ↑ مقالة قاعدة معارف مايكروسوفت رقم 65291
- ↑ غيتس، بيل؛ هالفورسون، مايكل؛ ريغمير، ديفيد (1989). تعلم لغة بيسك الآن . ريدموند، واشنطن: مطبعة مايكروسوفت. ص. 9.
- ↑ متطلبات نظام QuickBASIC لنظام ماكنتوش
- ↑ هالفورسون، مايكل؛ ريغمير، ديفيد (1990). تعلم لغة BASIC لأجهزة Apple Macintosh الآن . ريدموند، واشنطن: مطبعة مايكروسوفت.
- ↑ "دليل ألعاب QBASIC" . 29-11-2008. مؤرشف من الأصل في 4 سبتمبر 2014. تم الاطلاع عليه في 28-12-2008 .
- ↑ "مراجعات واجهة المستخدم الرسومية" . 19-12-2008 . تم الاطلاع عليه بتاريخ 28-12-2008 .
- ↑ "مدونة واجهة المستخدم الرسومية (BASIC)" . 2011-02-06 . تم الاطلاع عليه بتاريخ 2011-02-06 .
- ↑ "أخبار Qbasic/Quickbasic" . 26-12-2008 . تم الاطلاع عليه بتاريخ 28-12-2008 .
- ↑ "QB Express" . موقع بيت لـ QBASIC/QuickBasic. 2008. تم الاطلاع عليه بتاريخ 28-12-2008 .
- ↑ بيت تربوفيتش (31 مارس 2007). "كيفية تشغيل برامج QBasic القديمة على نظام لينكس" . مؤرشف من الأصل بتاريخ 2 أغسطس 2017. تم الاطلاع عليه بتاريخ 28 ديسمبر 2008 .
- ↑ كييوت وولف (10 مايو 2008). "كييوت وولف يتحدث عن مواضيع متنوعة" . كيو بي إكسبريس . تاريخ الاسترجاع: 28 ديسمبر 2008 .
- ↑ على سبيل المثال، لا يدعم FreeBASIC حتى الآن وظيفة الاستدعاء "ON PLAY" الخاصة بـ QBasic للموسيقى الخلفية، أو استخدام PEEK و POKE لمنافذ الإدخال/الإخراج .
- ↑ مايك تشامبرز (12 يوليو 2008). "rubbermallet.org: حيث تصبح لغة QuickBASIC أكثر قوة" . تم الاطلاع عليه بتاريخ 28 ديسمبر 2008 .
- ↑ فيرتانين، إي كي (26 مايو 2008). "مقابلة مع جاليون" . مؤرشف من الأصل في 6 مارس 2016. تم الاطلاع عليه في 14 يوليو 2008 .
- ↑ هالفورسون، مايكل ج. (2020). أمة البرمجة: الحوسبة الشخصية وحركة تعلم البرمجة في أمريكا . نيويورك، نيويورك: منشورات ACM. ص 145-153 .
روابط خارجية
- تم إيقاف دعم Microsoft BASICs
- مترجمات لغة بيسك
- برنامج DOS
- برنامج عام 1985
- أدوات برمجة نظام التشغيل ماك الكلاسيكية
- عائلة لغات البرمجة الأساسية
- برنامج نظام التشغيل OS/2
