أساسي

من ويكيبيديا، الموسوعة الحرة
اذهب إلى الملاحة اذهب الى البحث

أساسي
AtariBasic.png
نموذجغير منظم ، إجرائي في وقت لاحق ، وجوه المنحى في وقت لاحق
صمم بواسطة
اول ظهور1 مايو 1964 ؛ قبل 57 عاما (1964-05-01)
التطبيقات الرئيسية
متاثر ب
تأثر

BASIC ( كود التعليمات الرمزية لجميع الأغراض للمبتدئين ) [1] هي عائلة من لغات البرمجة عالية المستوى للأغراض العامة والمصممة لسهولة الاستخدام. تم إنشاء النسخة الأصلية بواسطة John G. Kemeny و Thomas E. Kurtz في كلية Dartmouth College في عام 1964. لقد أرادوا تمكين الطلاب في المجالات غير العلمية من استخدام أجهزة الكمبيوتر. في ذلك الوقت ، كانت جميع أجهزة الكمبيوتر تقريبًا تتطلب كتابة برامج مخصصة ، والتي يميل العلماء وعلماء الرياضيات فقط إلى تعلمها.

بالإضافة إلى لغة البرنامج ، طور Kemeny و Kurtz نظام Dartmouth Time Sharing System (DTSS) ، والذي سمح لعدة مستخدمين بتحرير وتشغيل برامج BASIC في وقت واحد على محطات بعيدة. أصبح هذا النموذج العام شائعًا جدًا على أنظمة الكمبيوتر الصغيرة مثل PDP-11 و Data General Nova في أواخر الستينيات وأوائل السبعينيات. أنتجت Hewlett-Packard خط كمبيوتر كامل لطريقة التشغيل هذه ، حيث قدمت سلسلة HP2000 في أواخر الستينيات واستمرت المبيعات في الثمانينيات. تتبع العديد من ألعاب الفيديو المبكرة تاريخها إلى أحد هذه الإصدارات من BASIC.

أدى ظهور الحواسيب الصغيرة في منتصف السبعينيات إلى تطوير العديد من اللهجات الأساسية ، بما في ذلك Microsoft BASIC في عام 1975. نظرًا للذاكرة الرئيسية الصغيرة المتوفرة في هذه الأجهزة ، والتي غالبًا ما تكون 4 كيلوبايت ، تم أيضًا إنشاء مجموعة متنوعة من لهجات BASIC الصغيرة . كانت لغة BASIC متاحة لأي نظام في ذلك العصر تقريبًا ، وأصبحت لغة البرمجة الفعلية لأنظمة الكمبيوتر المنزلية التي ظهرت في أواخر السبعينيات. غالبًا ما تحتوي أجهزة الكمبيوتر هذه على مترجم BASIC مثبت بشكل افتراضي ، غالبًا في البرامج الثابتة للجهاز أو أحيانًا على كارتريدج ROM .

انخفضت شعبية BASIC في التسعينيات ، حيث ظهرت أجهزة كمبيوتر دقيقة أكثر قوة في السوق وأصبحت لغات البرمجة ذات الميزات المتقدمة (مثل Pascal و C ) قابلة للاستمرار. في عام 1991 ، أصدرت Microsoft Visual Basic ، الذي يجمع بين إصدار محدث من BASIC مع منشئ النماذج المرئية . هذا الاستخدام المعاد للغة و "VB" يظل لغة برمجة رئيسية في أشكال VBA و VB.NET .

الأصل

كان جون جي كيميني رئيس قسم الرياضيات في كلية دارتموث. استنادًا إلى سمعته كمبتكر في تدريس الرياضيات ، فازت المدرسة في عام 1959 بجائزة مؤسسة ألفريد بي سلون مقابل 500 ألف دولار أمريكي لبناء مبنى قسم جديد. [2] انضم توماس إي كورتز إلى القسم في عام 1956 ، ومنذ الستينيات اتفق Kemeny و Kurtz على الحاجة إلى برمجة محو الأمية بين الطلاب خارج مجالات العلوم والتكنولوجيا والهندسة والرياضيات ( STEM ) التقليدية . أشار Kemeny لاحقًا إلى أن "رؤيتنا كانت أن يكون لكل طالب في الحرم الجامعي إمكانية الوصول إلى جهاز كمبيوتر ، ويجب أن يكون أي عضو هيئة تدريس قادرًا على استخدام جهاز كمبيوتر في الفصل متى كان ذلك مناسبًا. كان الأمر بهذه البساطة." [3]

أجرى Kemeny و Kurtz تجربتين سابقتين مع اللغات المبسطة ، DARSIMCO (كود دارتموث المبسط) و DOPE (تجربة البرمجة المبسطة لدارتماوث) . هذه لم تتقدم بعد فصل طالبة واحدة. اتبعت تجارب جديدة باستخدام Fortran و ALGOL ، لكن Kurtz خلص إلى أن هذه اللغات كانت صعبة للغاية بالنسبة لما يريدونه. كما لاحظ كورتز ، كان لدى فورتران العديد من الأوامر التي تم تشكيلها بشكل غريب ، ولا سيما "اصطلاح يكاد يكون من المستحيل حفظه في الذاكرة لتحديد حلقة: 'DO 100 ، I = 1 ، 10 ، 2'. هل هي '1 ، 10 ، 2' أم "1 ، 2 ، 10" ، وهل الفاصلة بعد رقم السطر مطلوبة أم لا؟ " [3]

علاوة على ذلك ، كان الافتقار إلى أي نوع من ردود الفعل الفورية مشكلة رئيسية ؛ استخدمت آلات العصر معالجة الدُفعات واستغرقت وقتًا طويلاً لإكمال تشغيل البرنامج. بينما كان كورتز يزور معهد ماساتشوستس للتكنولوجيا ، اقترح جون مكارثي أن تقاسم الوقت يقدم حلاً ؛ يمكن لآلة واحدة أن تقسم وقت معالجتها بين العديد من المستخدمين ، مما يمنحهم وهم امتلاك جهاز كمبيوتر (بطيئًا) لأنفسهم. [4] قد تقوم البرامج الصغيرة بإرجاع النتائج في غضون ثوانٍ قليلة. أدى ذلك إلى زيادة الاهتمام بنظام يستخدم مشاركة الوقت ولغة جديدة خصيصًا للاستخدام من قبل الطلاب غير المتخصصين في العلوم والتكنولوجيا والهندسة والرياضيات. [3]

كتب Kemeny النسخة الأولى من BASIC. يأتي الاختصار BASIC من اسم ورقة غير منشورة من تأليف Thomas Kurtz. [5] تم نقش اللغة الجديدة بشكل كبير على FORTRAN II؛ كانت العبارات من سطر إلى سطر ، وتم استخدام الأرقام للإشارة إلى هدف الحلقات والفروع ، وكانت العديد من الأوامر مماثلة أو مطابقة لـ Fortran. ومع ذلك ، تم تغيير بناء الجملة في أي مكان يمكن تحسينه فيه. على سبيل المثال ، تم استبدال الحلقة التي يصعب تذكرها DOبالحلقة التي يسهل تذكرها FOR I = 1 TO 10 STEP 2، وبدلاً من ذلك تمت الإشارة إلى رقم السطر المستخدم في DO بواسطة NEXT I. [أ] وبالمثل ، غامضIFأصبح بيان فورتران ، الذي يطابق تركيبه تعليمات معينة للآلة التي كُتبت عليه في الأصل ، أبسط IF I=5 THEN GOTO 100. جعلت هذه التغييرات اللغة أقل خصوصية مع استمرار وجود بنية عامة وتشعر بأنها مماثلة للغة FORTRAN الأصلية. [3]

تلقى المشروع منحة قدرها 300000 دولار من National Science Foundation ، والتي تم استخدامها لشراء كمبيوتر GE-225 للمعالجة ، ومعالج Datanet-30 في الوقت الفعلي للتعامل مع طابعات Teletype Model 33 عن بُعد المستخدمة للإدخال والإخراج. عمل فريق من عشرات الطلاب الجامعيين في المشروع لمدة عام تقريبًا ، وقاموا بكتابة كل من نظام DTSS والمترجم BASIC. [3] تم إصدار النسخة الأولى من اللغة الأساسية في 1 مايو 1964. [6] [7]

في البداية ، ركزت BASIC على دعم العمل الرياضي المباشر ، مع دعم حسابي للمصفوفة من تنفيذها الأولي كلغة دفعة ، ووظيفة سلسلة الأحرف التي تمت إضافتها بحلول عام 1965. توسع الاستخدام في الجامعة بسرعة ، مما يتطلب استبدال وحدة المعالجة المركزية الرئيسية بـ GE- 235 ، [3] ولاحقًا بواسطة GE-635. بحلول أوائل السبعينيات ، كان هناك المئات من المحطات المتصلة بالآلات في دارتموث ، وبعضها عن بعد.

رغبة في انتشار استخدام اللغة ، جعل مصمموها المترجم متاحًا مجانًا. في الستينيات ، أصبحت البرمجيات سلعة يتم تحصيل رسوم عليها ؛ حتى ذلك الحين ، كان يتم توفيرها مجانًا كخدمة مع أجهزة الكمبيوتر باهظة الثمن ، وعادة ما تكون متاحة فقط للتأجير. قاموا أيضًا بإتاحتها للمدارس الثانوية في منطقة هانوفر ونيو هامبشاير وإقليمياً في جميع أنحاء نيو إنجلاند على محطات Teletype Model 33 و Model 35 عن بُعد المتصلة بـ Dartmouth عبر خطوط الهاتف الهاتفي ، وقد بذلوا جهدًا كبيرًا في الترويج للغة. في السنوات التالية ، كما ظهرت لهجات أخرى من BASIC ، أصبحت لهجة Kemeny و Kurtz الأصلية BASIC معروفة باسم Dartmouth BASIC .

اعترفت نيو هامبشاير بالإنجاز في عام 2019 عندما أقامت علامة تاريخية للطرق السريعة في هانوفر تصف إنشاء "أول لغة برمجة سهلة الاستخدام". [8]

موزعة على خدمات تقاسم الوقت

حدث ظهور BASIC كجزء من حركة أوسع نحو أنظمة تقاسم الوقت. تم وضع الفكرة لأول مرة في أواخر الخمسينيات من القرن الماضي ، وأصبحت الفكرة مهيمنة جدًا في صناعة الكمبيوتر بحلول أوائل الستينيات من القرن الماضي لدرجة أن مؤيديها كانوا يتحدثون عن مستقبل يمكن للمستخدمين فيه "شراء الوقت على الكمبيوتر بنفس الطريقة التي تشتري بها الأسرة العادية الطاقة والمياه من شركات المرافق ". [9]

قامت شركة جنرال إلكتريك ، بعد أن عملت في مشروع دارتموث ، بكتابة نظام التشغيل الأساسي الخاص بها وأطلقت نظام مشاركة الوقت عبر الإنترنت المعروف باسم Mark I. وسرعان ما حذت الشركات الأخرى في المجال الناشئ حذوها ؛ قدمت Tymshare SUPER BASIC في عام 1968 ، وكان لدى CompuServe نسخة على DEC-10 عند إطلاقها في عام 1969 ، وبحلول أوائل السبعينيات ، أصبحت BASIC عالمية إلى حد كبير على أجهزة الكمبيوتر المركزية للأغراض العامة . حتى IBM انضمت في النهاية إلى النادي بإدخال VS-BASIC في عام 1973. [10]

على الرغم من نجاح خدمات مشاركة الوقت مع BASIC لبعض الوقت ، إلا أن النجاح الواسع المتوقع سابقًا لم يكن كذلك. سمح ظهور الحواسيب الصغيرة خلال نفس الفترة ، وخاصة الحواسيب الصغيرة منخفضة التكلفة في منتصف السبعينيات ، لأي شخص بشراء وتشغيل أنظمته الخاصة بدلاً من شراء الوقت عبر الإنترنت والذي كان يُحاسب عليه بالدولار في الدقيقة. [ب] [11]

انتشار على أجهزة الكمبيوتر الصغيرة

تم تصميم نظام HP 2000 لتشغيل BASIC المشترك الوقت كمهمته الأساسية.

كانت BASIC ، بحكم طبيعتها لكونها صغيرة ، مناسبة بشكل طبيعي للانتقال إلى سوق الحواسيب الصغيرة ، التي كانت تظهر في نفس الوقت مع خدمات مشاركة الوقت. تحتوي هذه الآلات على ذاكرة رئيسية صغيرة جدًا ، ربما لا تزيد عن 4 كيلوبايت في المصطلحات الحديثة ، [ج] وتفتقر إلى التخزين عالي الأداء مثل محركات الأقراص الثابتة التي تجعل المترجمين عمليين. في هذه الأنظمة ، تم تنفيذ BASIC عادةً كمترجم بدلاً من مترجم نظرًا لانخفاض الحاجة إلى ذاكرة العمل. [د]

ومن الأمثلة المهمة بشكل خاص HP Time-Shared BASIC ، والذي ، مثل نظام Dartmouth الأصلي ، استخدم جهازي كمبيوتر يعملان معًا لتنفيذ نظام مشاركة الوقت. تم استخدام الجهاز الأول ، وهو آلة منخفضة النهاية في سلسلة HP 2100 ، للتحكم في إدخال المستخدم وحفظ وتحميل برامجهم على شريط أو قرص. الآخر ، وهو إصدار متطور من نفس الجهاز الأساسي ، يدير البرامج ويولد المخرجات. بتكلفة تبلغ حوالي 100000 دولار ، يمكن للمرء أن يمتلك آلة قادرة على تشغيل ما بين 16 و 32 مستخدمًا في نفس الوقت. [12] كان النظام ، الذي تم تجميعه باسم HP 2000 ، أول منصة صغيرة تقدم مشاركة الوقت وحقق نجاحًا سريعًا على الفور ، حيث قفزت HP لتصبح ثالث أكبر بائع في مجال الحواسيب الصغيرة ، خلف DEC والبيانات العامة (DG). [13]

DEC ، الشركة الرائدة في مجال الحواسيب الصغيرة منذ منتصف الستينيات ، تجاهلت في البداية BASIC. كان هذا بسبب عملهم مع مؤسسة RAND ، التي اشترت PDP-6 لتشغيل لغة JOSS الخاصة بهم ، والتي كانت من الناحية المفاهيمية مشابهة جدًا للغة BASIC. [14] أدى ذلك إلى قيام شركة DEC بإدخال نسخة أصغر ومنسقة من JOSS تُعرف باسم FOCAL ، والتي روجت لها بكثافة في أواخر الستينيات. ومع ذلك ، مع أنظمة مشاركة الوقت التي تقدم BASIC على نطاق واسع ، وكل منافسيها في مساحة الكمبيوتر الصغير تفعل الشيء نفسه ، كان عملاء DEC يطالبون بـ BASIC. بعد أن تجاهلت الإدارة مناشداتهم مرارًا وتكرارًا ، أخذ David H. Ahl على عاتقه شراء BASIC لـ PDP-8، والذي كان نجاحًا كبيرًا في سوق التعليم. بحلول أوائل السبعينيات ، تم نسيان FOCAL و JOSS وأصبحت BASIC عالمية تقريبًا في سوق الحواسيب الصغيرة. [15] ستواصل DEC تقديم نسختها المحدثة ، BASIC-PLUS ، لاستخدامها في نظام تشغيل مشاركة الوقت RSTS / E.

خلال هذه الفترة ، تمت كتابة عدد من الألعاب النصية البسيطة بلغة BASIC ، وأبرزها Star Trek لمايك ماي فيلد . قام David Ahl بجمعها ، بعضها مستدير من FOCAL ، ونشرها في رسالة إخبارية تعليمية قام بتجميعها. قام لاحقًا بتجميع عدد منها في شكل كتاب ، 101 BASIC Computer Games ، نُشر في عام 1973. [16] خلال نفس الفترة ، شارك أهل في إنشاء كمبيوتر صغير للاستخدام التعليمي ، وهو كمبيوتر شخصي مبكر . عندما رفضت الإدارة دعم هذا المفهوم ، ترك أهل DEC في عام 1974 ليؤسس مجلة الكمبيوتر المبتكرة ، Creative Computing . ظل الكتاب شائعًا ، وأعيد نشره في عدة مناسبات. [17]

النمو الهائل: عصر الكمبيوتر المنزلي

الإصدار 3.0 من MSX الأساسي
"تدريب أساسي كل يوم!" - يقرأ ملصق (في المنتصف السفلي) في مدرسة روسية (حوالي 1985-1986)

كان إدخال الحواسيب الصغيرة الأولى في منتصف السبعينيات بمثابة بداية النمو الهائل لشركة BASIC. كانت لها ميزة أنها كانت معروفة جيدًا للمصممين الشباب وهواة الكمبيوتر الذين اهتموا بأجهزة الكمبيوتر الصغيرة ، وكثير منهم شاهد BASIC على أجهزة الكمبيوتر الصغيرة أو الكبيرة. على الرغم من حكم Dijkstra الشهير في عام 1975 ، "من المستحيل عمليًا تعليم البرمجة الجيدة للطلاب الذين سبق لهم التعرض للغة الأساسية: كمبرمجين محتملين ، فإنهم مشوهون عقليًا بما يفوق الأمل في التجديد" ، [18] كانت BASIC واحدة من عدد قليل من اللغات التي كانت عالية المستوى بما يكفي لتكون قابلة للاستخدام من قبل أولئك الذين ليس لديهم تدريب وصغيرة بما يكفي لتلائم أجهزة الكمبيوتر الصغيرة في اليوم ، مما يجعلها في الواقعلغة البرمجة القياسية على الحواسيب الصغيرة المبكرة.

شارك بيل جيتس وبول ألين ومونتي دافيدوف في كتابة أول نسخة حاسوبية صغيرة من BASIC لصالح شركتهم الجديدة Micro-Soft. تم إصدار هذا بواسطة MITS في شكل شريط مثقوب لـ Altair 8800 بعد وقت قصير من الآلة نفسها ، [19] على الفور تم ترسيخ لغة BASIC باعتبارها اللغة الأساسية لأجهزة الكمبيوتر الدقيقة المبكرة. بدأ أعضاء نادي Homebrew Computer Club في توزيع نسخ من البرنامج ، مما تسبب في قيام Gates بكتابة خطاب مفتوح لهواة ، يشكو من هذا المثال المبكر لقرصنة البرامج .

جزئيًا استجابةً لرسالة جيتس ، وجزئيًا لإنشاء BASIC أصغر حجمًا يمكن تشغيله بشكل مفيد على آلات 4 كيلوبايت ، [هـ] حث بوب ألبريشت دينيس أليسون على كتابة الاختلاف الخاص به في اللغة. تمت تغطية كيفية تصميم وتنفيذ نسخة مجردة من مترجم للغة BASIC في مقالات كتبها أليسون في الأعداد الفصلية الثلاثة الأولى من النشرة الإخبارية لشركة People Computer Company التي نُشرت في عام 1975 والتطبيقات مع شفرة المصدر المنشورة في مجلة Dr. Dobb's Journal of تمارين رياضية أساسية صغيرة وتقويم الأسنان: تشغيل خفيف بدون زيادة في البايت . أدى ذلك إلى مجموعة متنوعة من Tiny BASICsمع ميزات إضافية أو تحسينات أخرى ، حيث أصبحت الإصدارات من Tom Pittman و Li-Chen Wang معروفة بشكل خاص. [20]

Micro-Soft ، بحلول هذا الوقت ، نقلت Microsoft مترجمها الفوري إلى MOS 6502 ، والذي سرعان ما أصبح أحد أشهر المعالجات الدقيقة في عصر 8 بت. عندما بدأت الحواسيب الصغيرة في الظهور ، ولا سيما "ثالوث 1977" لـ TRS-80 و Commodore PET و Apple II ، إما أنها تضمنت نسخة من كود MS أو قدمت بسرعة نماذج جديدة معها. بحلول عام 1978 ، كان MS BASIC معيارًا واقعيًا وعمليًا كل كمبيوتر منزلي في الثمانينيات تم إدراجه في ذاكرة القراءة فقط . عند التمهيد ، تم تقديم مترجم أساسي في الوضع المباشر .

تضمنت Commodore Business Machines Commodore BASIC ، بناءً على Microsoft BASIC. يحتوي كل من Apple II و TRS-80 على نسختين من BASIC ، نسخة تمهيدية أصغر تم تقديمها مع الإصدارات الأولية للآلات ونسخة تعتمد على MS مع زيادة الاهتمام بالمنصات. مع دخول الشركات الجديدة إلى المجال ، تمت إضافة إصدارات إضافية غيرت عائلة BASIC بمهارة. تمتلك عائلة Atari 8-bit Atari BASIC الخاصة بها والتي تم تعديلها لتلائم خرطوشة ROM بحجم 8 كيلو بايت . تم تقديم Sinclair BASIC في عام 1980 مع Sinclair ZX80 ، وتم تمديده لاحقًا لـ Sinclair ZX81 و SinclairZX الطيف . نشرت هيئة الإذاعة البريطانية BBC BASIC ، التي طورتها شركة Acorn Computers Ltd ، والتي تضم العديد من كلمات البرمجة الهيكلية الإضافية وميزات تشغيل النقطة العائمة المتقدمة.

مع نمو شعبية BASIC في هذه الفترة ، نشرت مجلات الكمبيوتر كود مصدر كامل في BASIC لألعاب الفيديو والمرافق والبرامج الأخرى. نظرًا لطبيعة BASIC المباشرة ، كان من السهل كتابة الكود من المجلة وتنفيذ البرنامج. تم نشر مجلات مختلفة تضم برامج لأجهزة كمبيوتر معينة ، على الرغم من أن بعض برامج BASIC كانت تعتبر عالمية ويمكن استخدامها في الأجهزة التي تعمل بأي متغير من BASIC (أحيانًا مع تعديلات طفيفة). تم أيضًا توفير العديد من الكتب من برامج الكتابة ، وعلى وجه الخصوص ، نشرت Ahl الإصدارات من 101 لعبة BASIC الأصلية التي تم تحويلها إلى لهجة Microsoft ونشرتها من Creative Computing مثل BASIC Computer Games. قدم هذا الكتاب ومتابعاته المئات من البرامج الجاهزة التي يمكن تحويلها بسهولة إلى أي منصة تعمل بنظام BASIC. [16] [21] [22] وصل الكتاب إلى المتاجر في عام 1978 ، في الوقت الذي بدأ فيه سوق أجهزة الكمبيوتر المنزلية ، وأصبح أول كتاب كمبيوتر يتم بيعه بملايين الكتب. الحزم اللاحقة ، مثل Learn to Program BASIC سيكون لها أيضًا الألعاب كتركيز تمهيدي. على أجهزة الكمبيوتر CP / M التي تركز على الأعمال والتي سرعان ما أصبحت منتشرة على نطاق واسع في بيئات الأعمال الصغيرة ، كان Microsoft BASIC ( MBASIC ) أحد التطبيقات الرائدة. [23]

في عام 1978 ، نشر David Lien الإصدار الأول من The BASIC Handbook: An Encyclopedia of the BASIC Computer Language ، حيث قام بتوثيق الكلمات الرئيسية عبر أكثر من 78 جهاز كمبيوتر مختلف. بحلول عام 1981 ، وثقت النسخة الثانية كلمات رئيسية من أكثر من 250 جهاز كمبيوتر مختلفًا ، مما يعرض النمو الهائل لعصر الحواسيب الصغيرة. [24]

أجهزة الكمبيوتر الشخصية وأجهزة الكمبيوتر المتوافقة مع IBM

IBM Cassette BASIC 1.10.0 تحديث

عندما كانت شركة IBM تصمم كمبيوتر IBM PC ، فقد اتبعت نموذج أجهزة الكمبيوتر المنزلية الحالية في رغبتها في الحصول على BASIC مدمج. لقد حصلوا على هذا من Microsoft - IBM Cassette BASIC - لكن Microsoft أنتجت أيضًا العديد من الإصدارات الأخرى من BASIC لـ MS-DOS / PC DOS بما في ذلك IBM Disk BASIC (BASIC D) و IBM BASICA (BASIC A) و GW-BASIC (متوافق مع BASICA الإصدار الذي لا يحتاج إلى ذاكرة ROM الخاصة بشركة IBM) و QBasic ، وعادةً ما يتم تجميعها جميعًا مع الجهاز. بالإضافة إلى ذلك ، أنتجوا Microsoft BASIC Compiler الذي يستهدف المبرمجين المحترفين. نشر Turbo Pascal -الناشر بورلاندTurbo Basic 1.0 في عام 1985 (لا يزال المؤلف الأصلي يسوق الإصدارات اللاحقة تحت اسم PowerBASIC ). قامت Microsoft بكتابة AmigaBASIC ذات النوافذ التي تم تزويدها بالإصدار 1.1 من أجهزة الكمبيوتر الاستباقية متعددة المهام GUI Amiga (أواخر 1985 / أوائل 1986) ، على الرغم من أن المنتج لم يحمل أي علامات Microsoft بشكل غير عادي.

قدمت هذه الاختلافات اللاحقة العديد من الامتدادات ، مثل تحسين معالجة السلاسل ودعم الرسومات ، والوصول إلى نظام الملفات وأنواع البيانات الإضافية . والأهم من ذلك كانت التسهيلات الخاصة بالبرمجة المنظمة ، بما في ذلك هياكل التحكم الإضافية والروتينات الفرعية المناسبة التي تدعم المتغيرات المحلية . ومع ذلك ، بحلول النصف الأخير من الثمانينيات ، كان المستخدمون يستخدمون بشكل متزايد تطبيقات مسبقة الصنع كتبها آخرون بدلاً من تعلم البرمجة بأنفسهم ؛ بينما أصبح لدى المبرمجين المحترفين الآن مجموعة واسعة من اللغات الأكثر تقدمًا المتوفرة على أجهزة الكمبيوتر الصغيرة. C والإصدارات اللاحقة C ++أصبحت اللغات المفضلة لتطوير التطبيقات الاحترافية "التفاف الانكماش" . [25] [26]

فيجوال بيسك

في عام 1991 ، قدمت Microsoft Visual Basic ، وهو تطور تطوري لـ QuickBASIC . تضمنت تراكيب من تلك اللغة مثل عبارات التحكم ذات البنية الهيكلية والروتينات الفرعية ذات المعلمات والكتابة الثابتة الاختيارية بالإضافة إلى التركيبات الموجهة للكائنات من لغات أخرى مثل "With" و "For each". احتفظت اللغة ببعض التوافق مع سابقاتها ، مثل الكلمة الأساسية Dim للإعلانات و "Gosub" / عبارات العودة وأرقام الأسطر الاختيارية التي يمكن استخدامها لتحديد الأخطاء. كان المحرك المهم لتطوير Visual Basic كلغة ماكرو جديدة لبرنامج Microsoft Excel ، جدول بياناتبرنامج. ولدهشة الكثيرين في Microsoft الذين ما زالوا يسوقونها في البداية كلغة للهواة ، دخلت اللغة حيز الاستخدام على نطاق واسع لتطبيقات الأعمال الصغيرة المخصصة بعد فترة وجيزة من إصدار VB الإصدار 3.0 ، والذي يعتبر على نطاق واسع أول إصدار مستقر نسبيًا.

في حين أن العديد من المبرمجين المتقدمين لا يزالون يسخرون من استخدامه ، فقد لبى VB احتياجات الشركات الصغيرة بكفاءة ، ففي ذلك الوقت ، أصبحت أجهزة الكمبيوتر التي تعمل بنظام Windows 3.1 سريعة بما يكفي لإتمام العديد من العمليات المتعلقة بالأعمال "في غمضة عين" حتى باستخدام لغة "بطيئة" ، طالما لم يتم تضمين كميات كبيرة من البيانات. وجد العديد من أصحاب الأعمال الصغيرة أن بإمكانهم إنشاء تطبيقاتهم الصغيرة ، ولكن المفيدة في بضع أمسيات لتلبية احتياجاتهم الخاصة. في النهاية ، خلال العمر الطويل لـ VB3 ، أصبحت معرفة Visual Basic مهارة وظيفية قابلة للتسويق. أنتجت Microsoft أيضًا VBScript في عام 1996 و Visual Basic .NET في عام 2001. يمتلك هذا الأخير بشكل أساسي نفس قوة C # و Javaولكن مع بناء جملة يعكس اللغة الأساسية الأصلية. كان IDE ، مع منشئ واجهة المستخدم الرسومية المدفوع بالأحداث ، مؤثرًا أيضًا على الأدوات الأخرى ، وأبرزها Borland Software 's Delphi for Object Pascal وأحفادها مثل Lazarus . [27]

انتهى الدعم الأساسي للإصدار الأخير 6.0 من Visual Basic الأصلي في 31 مارس 2005 ، متبوعًا بدعم موسع في مارس 2008. [28] في 11 مارس 2020 ، أعلنت Microsoft أن تطور لغة VB.NET قد انتهى أيضًا ، على الرغم من أنه كان لا يزال مدعومًا. [29] وفي الوقت نفسه ، يوجد منافسون مثل Xojo و Gambas .

ثلاثة متغيرات أساسية حديثة: Mono Basic و OpenOffice.org Basic و Gambas

إصدارات ولهجات ما بعد عام 1990

ظهرت أيضًا العديد من اللهجات الأساسية الأخرى منذ عام 1990 ، بما في ذلك QB64 و FreeBASIC ، المستوحاة من QBasic ، و RapidQ على غرار Visual Basic ، و Basic For Qt و Gambas . تشمل التجسيدات التجارية الحديثة PureBasic و PowerBASIC و Xojo و Monkey X و True BASIC (الخلف المباشر لشركة Dartmouth BASIC من شركة يسيطر عليها Kurtz).

يوجد الآن أيضًا العديد من المترجمين الشفويين البسيطين على شبكة الإنترنت ، بما في ذلك Small Basic من Microsoft . تتوفر الآن العديد من إصدارات BASIC للهواتف الذكية والأجهزة اللوحية عبر Apple App Store أو متجر Google Play لنظام Android. على وحدات التحكم في الألعاب ، يسمح تطبيق خاص بـ Nintendo 3DS و Nintendo DSi يسمى Petit Computer بالبرمجة في نسخة معدلة قليلاً من BASIC مع دعم زر DS. تم إصدار نسخة أيضًا لـ Nintendo Switch .

حاسبات

تتوفر متغيرات BASIC في الرسوم البيانية والآلات الحاسبة القابلة للبرمجة المصنوعة بواسطة Texas Instruments و HP و Casio وغيرها.

سطر أوامر Windows

QBasic ، إصدار من Microsoft QuickBASIC بدون رابط لإنشاء ملفات EXE ، موجود في تدفقات أنظمة التشغيل Windows NT و DOS- Windows 95 ويمكن الحصول عليها للإصدارات الأحدث مثل Windows 7 التي لا تحتوي عليها. قبل DOS 5 ، كان المترجم الأساسي هو GW-Basic . QuickBasic هو جزء من سلسلة من ثلاث لغات صادرة عن Microsoft لمستخدمي الطاقة في المنزل والمكتب والتطوير المهني الصغير الحجم ؛ QuickC و QuickPascal هما الآخران. لنظام التشغيل Windows 95و 98 ، التي لم يتم تثبيت QBasic افتراضيًا عليها ، يمكن نسخها من قرص التثبيت ، الذي سيكون به مجموعة من الدلائل للبرامج القديمة والاختيارية ؛ توجد أوامر أخرى مفقودة مثل Exe2Bin وغيرها في نفس الدلائل.

أخرى

جاء BASIC إلى بعض أنظمة ألعاب الفيديو ، مثل Nintendo Famicom .

مجموعات Microsoft و Lotus و Corel المكتبية المتنوعة والمنتجات ذات الصلة قابلة للبرمجة باستخدام Visual Basic بشكل أو بآخر ، بما في ذلك LotusScript ، والذي يشبه إلى حد كبير VBA 6. يستخدم محاكي Host Explorer Terminal WWB كلغة ماكرو ؛ أو في الآونة الأخيرة ، يكون البرنامج والجناح الذي تم تضمينه فيه قابلين للبرمجة في متغير أساسي داخلي يُعرف باسم Hummingbird Basic. يتم استخدام متغير VBScript لبرمجة محتوى الويب و Outlook 97 و Internet Explorer و Windows Script Host. يحتوي WSH أيضًا على محرك Visual Basic للتطبيقات (VBA) تم تثبيته كثالث المحركات الافتراضية جنبًا إلى جنب مع VBScript و JScript والعديد من محركات الملكية أو مفتوحة المصدر التي يمكن تثبيتها مثل PerlScript، زوجان من المحركات المستندة إلى Rexx ، Python و Ruby و Tcl و Delphi و XLNT و PHP وغيرها ؛ مما يعني أنه يمكن استخدام نسختين من Basic مع اللغات الأخرى المذكورة ، بالإضافة إلى LotusScript ، في ملف WSF ، من خلال نموذج كائن المكون ، وتكوينات WSH و VBA الأخرى. VBScript هي إحدى اللغات التي يمكن الوصول إليها بواسطة قذائف 4Dos و 4NT و Take Command المحسّنة. يتشابه كل من SaxBasic و WWB أيضًا مع سطر Visual Basic للتطبيقات الأساسية. تُعرف لغة الماكرو السابقة لـ Office 97 لبرنامج Microsoft Word باسم WordBASIC . يستخدم Excel 4 و 5 Visual Basic نفسها كلغة ماكرو. يتوفر مترجم Chipmunk Basic ، وهو مترجم من المدرسة القديمة مشابه لـ BASICs في السبعينيات ، لأنظمة Linux و Microsoft Windows وmacOS .

تراث

كان انتشار المترجمين الشفويين الأساسيين على أجهزة الكمبيوتر الشخصية في كل مكان بحيث تضمنت الكتب المدرسية ذات مرة تمارين بسيطة "جربها في الأساسيات" التي شجعت الطلاب على تجربة المفاهيم الرياضية والحسابية على أجهزة الكمبيوتر في الفصل أو أجهزة الكمبيوتر المنزلية. عادةً ما تضمنت مجلات الكمبيوتر الشائعة في ذلك الوقت برامج الكتابة .

حزن كاتب المستقبل والخيال العلمي ديفيد برين على خسارة BASIC في كل مكان في مقال في صالون عام 2006 [30] كما فعل آخرون ممن استخدموا أجهزة الكمبيوتر لأول مرة خلال هذه الحقبة. في المقابل ، حث المقال Microsoft على تطوير وإصدار Small Basic ؛ [31] ألهمت أيضًا مشاريع مماثلة مثل Basic-256 . [32] أقامت دارتموث احتفالًا بالذكرى الخمسين لـ BASIC في 1 مايو 2014 ، [33] كما فعلت المنظمات الأخرى ؛ نظمت منظمة واحدة على الأقل من مبرمجي VBA احتفالًا بالذكرى الخامسة والثلاثين في عام 1999. [34]

احتفلت كلية دارتموث بالذكرى الخمسين للغة الأساسية مع يوم من الأحداث [35] في 30 أبريل 2014. تم إنتاج فيلم وثائقي قصير لهذا الحدث. [36]

بناء الجملة

الكلمات الأساسية الأساسية النموذجية

معالجة البيانات

LET
يعين قيمة (والتي قد تكون نتيجة تعبير ) لمتغير. في معظم لهجات BASIC ، LETيكون اختياريًا ، وسيفترض السطر الذي لا يحتوي على كلمة رئيسية أخرى يمكن تحديدها أن تكون الكلمة الرئيسية LET.
DATA
يحتوي على قائمة بالقيم التي يتم تعيينها بالتسلسل باستخدام الأمر READ.
READ
يقرأ قيمة من DATAبيان ويسندها إلى متغير. يتتبع المؤشر الداخلي DATAالعنصر الأخير الذي تمت قراءته ويحركه في موضع واحد للأمام مع كل عنصر READ.
RESTORE
يعيد تعيين المؤشر الداخلي إلى DATAالعبارة الأولى ، مما يسمح للبرنامج بالبدء READمن القيمة الأولى. تسمح العديد من اللهجات برقم سطر اختياري أو قيمة ترتيبية للسماح بإعادة تعيين المؤشر إلى الموقع المحدد.
DIM
ينشئ مصفوفة.

التحكم في تدفق البرنامج

IF ... THEN ... {ELSE}
تستخدم لإجراء مقارنات أو اتخاذ القرارات. اللهجات المبكرة سمحت فقط برقم سطر بعد THEN، لكن الإصدارات الأحدث سمحت باتباع أي بيان صالح. ELSEلم يكن مدعومًا على نطاق واسع ، خاصة في الإصدارات السابقة.
FOR ... TO ... {STEP} ... NEXT
كرر مقطعًا من الكود لعدد معين من المرات. المتغير الذي يعمل بمثابة عداد ، "الفهرس" ، متاح داخل الحلقة .
WHILE ... WENDوREPEAT ... UNTIL
كرر مقطعًا من الكود عندما يكون الشرط المحدد صحيحًا. يمكن تقييم الحالة قبل كل تكرار للحلقة ، أو بعد ذلك. تم العثور على كلا الأمرين في الغالب في اللهجات اللاحقة.
DO ... LOOP {WHILE}أو{UNTIL}
كرر مقطعًا من الكود إلى أجل غير مسمى أو أثناء / حتى يصبح الشرط المحدد صحيحًا. يمكن تقييم الحالة قبل كل تكرار للحلقة ، أو بعد ذلك. على غرار WHILE، توجد هذه الكلمات الرئيسية في الغالب في اللهجات اللاحقة.
GOTO
يقفز إلى سطر مرقم أو مسمى في البرنامج.
GOSUB
يقفز إلى سطر مرقم أو مسمى ، وينفذ الكود الذي يعثر عليه هناك حتى يصل إلى RETURNأمر ، والذي يقفز فيه مرة أخرى إلى العبارة التالية GOSUB، إما بعد النقطتين ، أو في السطر التالي. يستخدم هذا لتنفيذ الإجراءات الفرعية .
ON ... GOTO/GOSUB
يختار مكان القفز بناءً على الشروط المحددة. انظر بيان التبديل للنماذج الأخرى.
DEF FN
زوج من الكلمات الرئيسية تم تقديمه في أوائل الستينيات لتحديد الوظائف. تم تصميم وظائف BASIC الأصلية على وظائف سطر واحد FORTRAN. كانت الدوال الأساسية عبارة عن تعبير واحد يحتوي على وسيطات متغيرة ، بدلاً من الإجراءات الفرعية ، مع بناء جملة على نموذج DEF FND(x) = x*xفي بداية البرنامج. كانت أسماء الوظائف مقتصرة في الأصل على FN ، بالإضافة إلى حرف واحد ، مثل FNA ، FNB ...

المدخلات والمخرجات

LIST
يعرض كود المصدر الكامل للبرنامج الحالي.
PRINT
يعرض رسالة على الشاشة أو جهاز إخراج آخر.
INPUT
يطلب من المستخدم إدخال قيمة متغير. قد يتضمن البيان رسالة سريعة.
TAB
تستخدم مع PRINTلضبط الموضع حيث سيتم عرض الحرف التالي على الشاشة أو طباعته على الورق. ATهو شكل بديل.
SPC
يطبع عددًا من أحرف المسافات. مشابه في المفهوم TABولكنه يتحرك بعدد من المسافات الإضافية من العمود الحالي بدلاً من الانتقال إلى عمود محدد.

وظائف رياضية

ABS
قيمه مطلقه
ATN
Arctangent (الناتج بالتقدير الدائري )
COS
جيب التمام (الحجة بالتقدير الدائري )
EXP
دالة أسية
INT
جزء صحيح (عادة وظيفة أرضية )
LOG
اللوغاريتم الطبيعي
RND
توليد عدد عشوائي
SIN
الجيب (الحجة بالتقدير الدائري )
SQR
الجذر التربيعي
TAN
الظل (الحجة بالتقدير الدائري )

متفرقات

REM
يحمل تعليق المبرمج أو REMark ؛ غالبًا ما تستخدم لإعطاء عنوان للبرنامج وللمساعدة في تحديد الغرض من قسم معين من التعليمات البرمجية.
USR
ينقل التحكم في البرنامج إلى روتين فرعي للغة الآلة ، وعادة ما يتم إدخاله كسلسلة أبجدية رقمية أو في قائمة عبارات البيانات.
CALL
شكل بديل USRموجود في بعض اللهجات. لا يتطلب معلمة اصطناعية لإكمال بناء الجملة الشبيه بالوظيفة USR، وله طريقة محددة بوضوح لاستدعاء إجراءات مختلفة في الذاكرة.
TRON
يتم تشغيل عرض كل رقم سطر أثناء تشغيله ("TRace ON"). كان هذا مفيدًا لتصحيح الأخطاء أو تصحيحها في البرنامج.
TROFF
يوقف عرض أرقام الأسطر.
ASM
بعض المجمعات مثل Freebasic ، [37] Purebasic ، [38] و Powerbasic [39] تدعم أيضًا لغة التجميع المضمنة ، مما يسمح للمبرمج بالخلط بين الكود عالي المستوى ومنخفض المستوى ، ويبدأ عادةً بـ "ASM" أو "!" صياغات.

أنواع البيانات والمتغيرات

أو "E" ، حيث كانت OR كلمة رئيسية. سلسلةعادة ما يتم تمييز المتغيرات في العديد من لهجات الحواسيب الصغيرة من خلال إضافة $ إلى أسمائها كـ sigil ، وغالبًا ما يتم تحديد القيم على أنها سلاسل من خلال تحديدها بواسطة "علامات اقتباس مزدوجة". يمكن أن تحتوي المصفوفات في BASIC على أعداد صحيحة أو متغيرات سلسلة أو فاصلة عائمة.

تدعم بعض لهجات المصفوفات الأساسية وعمليات المصفوفات ، وهي مفيدة لحل مجموعات المعادلات الجبرية الخطية المتزامنة. ستدعم هذه اللهجات بشكل مباشر عمليات المصفوفة مثل التخصيص والإضافة والضرب (لأنواع المصفوفات المتوافقة) وتقييم المحدد. العديد من الحواسيب الصغيرة الأساسية لا تدعم هذا النوع من البيانات ؛ كانت عمليات المصفوفة لا تزال ممكنة ، ولكن كان لابد من برمجتها بشكل صريح على عناصر المصفوفة.

أمثلة

أساسي غير منظم

قد يبدأ المبرمجون الأساسيون الجدد على الكمبيوتر المنزلي ببرنامج بسيط ، ربما باستخدام عبارة PRINT الخاصة باللغة لعرض رسالة على الشاشة ؛ من الأمثلة المعروفة والتي يتم تكرارها في كثير من الأحيان أغنية "Hello، World!" لكيرنيغان وريتشي . البرنامج :

10 اطبع "Hello، World!" 20 نهاية  
 

يمكن استخدام حلقة لا نهائية لملء الشاشة بالرسالة:

10 اطبع "Hello، World!" 20 اذهب 10  
  

لاحظ أن ENDالعبارة اختيارية وليس لها أي إجراء في معظم لهجات اللغة الأساسية. لم يتم تضمينها دائمًا ، كما هو الحال في هذا المثال. يمكن تعديل هذا البرنامج نفسه لطباعة عدد ثابت من الرسائل باستخدام FOR...NEXTالعبارة المشتركة:

10 LET N = 10 20 FOR I = 1 إلى N 30 اطبع "مرحبًا ، أيها العالم!" 40 التالى _  
    
  
  

تدعم معظم إصدارات BASIC من الجيل الأول ، مثل MSX BASIC و GW-BASIC ، أنواع البيانات البسيطة ودورات الحلقة والمصفوفات. المثال التالي مكتوب لـ GW-BASIC ، ولكنه سيعمل في معظم إصدارات BASIC مع الحد الأدنى من التغييرات:

10 INPUT "ما اسمك:" ؛ 20 دولارًا أمريكيًا اطبع "مرحبًا" ؛ 30 دولارًا أمريكيًا INPUT "كم عدد النجوم التي تريدها:" ؛ N 40 S $ = "" 50 بالنسبة إلى I = 1 إلى N 60 S $ = S $ + "*" 70 NEXT I 80 PRINT S $ 90 INPUT "هل تريد المزيد من النجوم؟" ؛ 100 دولار إذا كان LEN ( A $ ) = 0   
   
   
   
      
     
  
  
   
     بعد ذلك ، انتقل إلى 90110 A $ = LEFT $ ( A $ ، 1 ) 120 IF A $ = "Y" أو A $ = "y" ثم انتقل 30130 PRINT " Goodbye " ؛ 140 دولارًا أمريكيًا (أو ما يعادله بالعملة المحلية)  
    
           
   
 

قد يشبه مربع الحوار الناتج:

ما اسمك: مايك
اهلا مايك
كم عدد النجوم التي تريدها: 7
*******
هل تريد المزيد من النجوم؟ نعم
كم عدد النجوم التي تريدها: 3
***
هل تريد المزيد من النجوم؟ رقم
وداعا مايك

كانت Dartmouth Basic الأصلية غير عادية في وجود كلمة رئيسية مصفوفة ، MAT. [و] على الرغم من أنه لم يتم تنفيذه بواسطة معظم مشتقات المعالجات الدقيقة اللاحقة ، إلا أنه يُستخدم في هذا المثال من دليل عام 1968 [40] الذي يحسب متوسط ​​الأرقام التي يتم إدخالها:

5 LET S = 0 10 MAT INPUT V 20 LET N = NUM 30 IF N = 0 ثم 99 40 لأني = 1 إلى N 45 LET S = S + V ( I ) 50 NEXT I 60 اطبع S / N 70 انتقل إلى 5 _ 99 النهاية    
    
     
       
       
       
   
   
    
 

منظمة أساسية

الجيل الثاني من الأساسيات (على سبيل المثال ، VAX Basic و SuperBASIC و True BASIC و QuickBASIC و BBC BASIC و Pick BASIC و PowerBASIC و Liberty BASIC و (يمكن القول) COMAL ) قدم عددًا من الميزات في اللغة ، والتي تتعلق بشكل أساسي بالمنظمة والإجراءات- البرمجة الموجهة. عادةً ما يتم حذف ترقيم الأسطر من اللغة واستبداله بملصقات (لـ GOTO ) وإجراءات لتشجيع التصميم الأسهل والأكثر مرونة. [41] بالإضافة إلى الكلمات الأساسية والهياكل لدعم التكرار والاختيار والإجراءات مع المتغيرات المحلية تم إدخالها.

المثال التالي موجود في Microsoft QuickBASIC:

مثال REM QuickBASIC

إعلان REM Forward - يسمح للكود الرئيسي باستدعاء 
روتين REM الذي تم تحديده لاحقًا في كود المصدر 
DECLARE SUB PrintSomeStars ( StarCount! )   

برنامج REM الرئيسي يتبع 
INPUT "ما هو اسمك" ، UserName $ PRINT "Hello" ؛ اسم المستخدم $ DO INPUT "كم عدد النجوم التي تريدها:" ، NumStars CALL PrintSomeStars ( NumStars ) DO INPUT "هل تريد المزيد من النجوم؟" ، أجب $ LOOP حتى إجابة $ <> "" Answer $ = LEFT $ ( إجابة $ ، 1 ) حلقة أثناء استخدام UCASE $ ( إجابة $ ) = "  
  

     
    
   
        
       
      
    
اطبع "وداعا" ؛ اسم المستخدم $ END  


تعريف روتين REM 
SUB PrintSomeStars ( StarCount ) REM يستخدم هذا الإجراء متغيرًا محليًا يسمى Stars $ Stars $ = STRING $ (StarCount ، " * " ) PRINT Stars $ END SUB  
           
      
    
 

وجوه المنحى الأساسية

قدمت لهجات الجيل الثالث الأساسية مثل Visual Basic و Xojo و Gambas و StarOffice Basic و BlitzMax و PureBasic ميزات لدعم نموذج البرمجة الموجهة للكائنات والموجهة بالأحداث. يتم الآن تمثيل معظم الإجراءات والوظائف المضمنة على أنها طرق للكائنات القياسية بدلاً من كونها عوامل تشغيل . أيضًا ، أصبح نظام التشغيل متاحًا بشكل متزايد للغة الأساسية.

المثال التالي موجود في Visual Basic .NET :

 السؤال عن الوظيفة الخاصة لبرنامج StarsProgram للوحدة النمطية  العامة ( موجه كسلسلة ) كوحدة تحكم سلسلة . اكتب ( موجه ) عودة وحدة التحكم . ReadLine () وظيفة النهاية
         
      
       
    

   Public  Sub  Main () 
      Dim  userName  =  Ask ( "What is your name:" ) 
      Console . WriteLine ( "مرحبًا {0}" ،  اسم المستخدم )

       إجابة  خافتة كسلسلة _ 

      قم بعمل 
         Dim  numStars  =  CInt ( اسأل ( "كم عدد النجوم الذي تريده:" )) 
         خافت  النجوم  كسلسلة  جديدة  ( "*" c ، numStars ) Console . اكتب ( نجوم ) 
         

         قم 
            بالإجابة  =  اسأل ( "هل تريد المزيد من النجوم؟" ) 
         تكرار  حتى  الإجابة  <>  "" 
      التكرار  أثناء  الإجابة . StartsWith ( "Y" ،  StringComparison . OrdinalIgnoreCase )

      وحدة التحكم . WriteLine ( "Goodbye {0}" ،  userName ) 
   End  Sub 
End  Module

المعايير

  • معيار ANSI / ISO / IEC لأساسيات الحد الأدنى:
    • ANSI X3.60-1978 "لأدنى حد أساسي"
    • ISO / IEC 6373: 1984 "معالجة البيانات - لغات البرمجة - الأساسيات الدنيا"
  • ECMA -55 Minimal BASIC (تم سحبه ، على غرار ANSI X3.60-1978)
  • معيار ANSI / ISO / IEC للأساسيات الكاملة:
    • ANSI X3.113-1987 "لغات البرمجة الأساسية الكاملة"
    • INCITS / ISO / IEC 10279-1991 (R2005) "تكنولوجيا المعلومات - لغات البرمجة - أساسيات كاملة"
  • وحدات تعريف ملحق ANSI / ISO / IEC:
    • ANSI X3.113 Interpretations-1992 "BASIC Technical Information Bulletin # 1 Interpretations of ANSI 03.113-1987"
    • ISO / IEC 10279: 1991 / Amd 1: 1994 "الوحدات النمطية وتحسين إدخال الأحرف الفردية"
  • ECMA -116 BASIC (تم سحبه ، على غرار ANSI X3.113-1987)

المجمعين والمترجمين الفوريين

مترجم مؤلف شبابيك يونكس مثل أنظمة تشغيل أخرى نوع الرخصة
ايس بيسك ديفيد بن رقم رقم نعم ( AmigaOS ) GPLv2 +
AppGameKit صانعي اللعبة نعم نعم رقم امتلاكي
B4X ايريل عوزيل نعم نعم ( Android ، iOS ) نعم (JVM) رخصة أباتشي 2.0
بليتز ماكس بليتز ريسيرش نعم نعم ( Linux ، OS X ) رقم ترخيص zlib
دارك بيسك صانعي اللعبة نعم رقم رقم ترخيص معهد ماساتشوستس للتكنولوجيا
FreeBASIC فريق تطوير FreeBASIC نعم نعم دوس GPLv2 +
جامباس بينوا مينيسيني رقم نعم رقم GPLv2 +
GFA الأساسي فرانك أوستروفسكي نعم رقم أميغا ، شارع أتاري ، دوس امتلاكي
الزئبق RemObjects نعم نعم ( Linux ، OS X ، Android ، iOS ) نعم ( تجميع الويب ) امتلاكي
PowerBASIC (Turbo Basic سابقًا) PowerBASIC، Inc. نعم رقم دوس امتلاكي
PureBasic برنامج Fantaisie نعم نعم نعم امتلاكي
QB64 جاليون نعم نعم نعم LGPLv2.1
كويك بيسك مايكروسوفت رقم رقم دوس امتلاكي
صحيح الأساسي صحيح الأساسي نعم رقم رقم امتلاكي
VSI BASIC لنظام الذاكرة الافتراضية المفتوح صحيح الأساسي رقم رقم نظام الذاكرة الافتراضية المفتوح امتلاكي
Xojo (REALbasic سابقًا) Xojo Inc. (برامج Real سابقًا) نعم نعم نعم امتلاكي
مترجم مؤلف شبابيك يونكس مثل أنظمة تشغيل أخرى نوع الرخصة
Bywater BASIC (bwBASIC) تيد كامبل رقم نعم ؟ GPL
الحرية الأساسية أنظمة Shoptalk نعم رقم رقم امتلاكي
GW-BASIC مايكروسوفت رقم رقم MS-DOS امتلاكي
QBasic مايكروسوفت نعم رقم رقم امتلاكي
السنجاب الأساسية رونالد نيكلسون الابن نعم نعم نعم مجانية
TI Basic شركة Texas Instruments رقم رقم TI-99 / 4A امتلاكي
TI Extended Basic شركة Texas Instruments رقم رقم TI-99 / 4A امتلاكي
روكي ماونتن بيسك [عبر العصر] نعم رقم HP 9000 امتلاكي
باس مايكل هاردت رقم نعم رقم ترخيص معهد ماساتشوستس للتكنولوجيا
ياباسيتش مارك أوليفر إيههم نعم نعم رقم ترخيص معهد ماساتشوستس للتكنولوجيا
SmallBASIC SmallBASIC نعم نعم Android ، OS X GPLv3 +
الكمبيوتر الأساسي روب هاجيمانز نعم نعم OS X GPLv3 +

انظر أيضا

ملاحظات

  1. ^ كان لدى Fortran's DOcontinueلهذا الغرض ، لكنه لا يزال يتطلب إدخال رقم السطر.
  2. ^ فرضت Tymshare حوالي 10 دولارات للساعة (ما يعادل 67 دولارًا في عام 2020) للوصول إلى أنظمتها.
  3. ^ يُنظر إلى مساحة ذاكرة PDP-8 على نطاق واسع على أنها أول مصغرة "حقيقية" ، وقد سمحت بمساحة ذاكرة 12 بت بـ 4096 عنوانًا من 12 بت لكل منهما ، أو 6144 بايت.
  4. ^ يتشابه المترجمون الفوريون في النهاية مع المترجمين في المهام التي يؤدونها ، وتحويل كود المصدر إلى كود الآلة ، لكنهم يختلفون عند أدائهم. يقوم المترجمون بتحويل البرنامج بالكامل مرة واحدة وإخراج برنامج منفصل قابل للتشغيل. يحول المترجمون الفوريون عمومًا سطرًا واحدًا فقط في كل مرة (أو حتى جزء منه) ثم يطلقون هذا الرمز فورًا بمجرد اكتمال تشغيل السطر. هذا يعني أنها لا تتطلب سوى ذاكرة كافية لتشغيل سطر واحد ، ولا تتطلب شكلاً من أشكال الذاكرة الثانوية عالية الأداء مثل محرك الأقراص الثابتة.
  5. ^ ترك Microsoft BASIC 780 بايت مجانًا لرمز برنامج المستخدم والقيم المتغيرة على جهاز 4K ، وكان ذلك يعمل بإصدار مختزل يفتقر إلى متغيرات السلسلة والوظائف الأخرى.
  6. ^ من الإصدار 3 فصاعدًا.

المراجع

  1. ^ كيميني ، جون جي ؛ كيرتس ، توماس إي (1964). أساسي: دليل للغة BASIC ، اللغة الجبرية الأولية المصممة للاستخدام مع نظام مشاركة الوقت في دارتموث (PDF) (الطبعة الأولى). هانوفر ، نيو هامبشاير: مركز حساب كلية دارتموث.
  2. ^ "هاي ماث في هانوفر" . الوقت . 23 فبراير 1959.
  3. ^ a b c d e f الوقت 2014 .
  4. ^ رانكين ، جوي ليزي (2018) ، تاريخ الحوسبة للناس في الولايات المتحدة ، كامبريدج ، ماساتشوستس: مطبعة جامعة هارفارد ، ISBN 9780674970977، ص. 23
  5. ^ "أساسي" . ملف المصطلحات اللغوية . تم الاسترجاع 13 يونيو ، 2017 .
  6. ^ "توماس إي كورتز - تاريخ لغات برمجة الكمبيوتر" . cis-alumni.org . تم الاسترجاع 13 يونيو ، 2017 .
  7. ^ ألفريد ، راندي (5 يناير 2008). "1 مايو 1964: تشغيل أول برنامج أساسي" . سلكي . تم الاسترجاع 13 يونيو ، 2017 .
  8. ^ بروكس ، ديفيد (11 يونيو 2019). "أخيرًا ، علامة تاريخية تتحدث عن شيء مهم" . كونكورد مونيتور . مؤرشفة من الأصلي في 11 يونيو 2019 . تم الاسترجاع 11 أغسطس 2019 .
  9. ^ باور ، دبليو إف ، تصميم الكمبيوتر من وجهة نظر المبرمج أرشفة 23 يوليو 2016 ، في آلة Wayback . (مؤتمر الكمبيوتر المشترك الشرقي ، ديسمبر 1958) أحد الأوصاف الأولى لمشاركة الوقت على الكمبيوتر.
  10. ^ "IBM VS the World: هذا كيف هو" . عالم الكمبيوتر . 5 ديسمبر 1973.
  11. ^ بورن ، تشارلز ؛ هان ، ترودي بيلاردو (أغسطس 2003). تاريخ خدمات المعلومات عبر الإنترنت ، 1963-1976 . ص. 387. ISBN 9780262261753.
  12. ^ "نظام المشاركة بالوقت 2000" .
  13. ^ "اجتياز علامة العشر سنوات" . التدبير مجلة . هيوليت باكارد. أكتوبر 1976.
  14. ^ ماركس ، شيرلي (ديسمبر 1971). سنوات JOSS: تأملات في تجربة (PDF) (تقرير تقني). راند.
  15. ^ Savetz ، Kevin (أبريل 2013). "ديف أهل وبيتسي آه" (مقابلة).
  16. ^ أ ب أهل ، ديفيد هـ. (1973). 101 ألعاب كمبيوتر أساسية . موريستاون ، نيوجيرسي: مطبعة الحوسبة الإبداعية. OCLC 896774158 . 
  17. ^ أهل ، ديفيد هـ. (11 مايو 1981). "ألعاب الكمبيوتر" . إنفوورلد . المجلد. 3 ، لا. 9. ص. 44. ISSN 0199-6649 . 
  18. ^ Dijkstra ، Edsger W. (18 يونيو 1975). "كيف نقول الحقائق التي قد تكون مؤذية" (PDF) . كتابات مختارة عن الحوسبة: منظور شخصي . Springer-Verlag (تم نشره عام 1982). ص  129 - 131 . رقم ISBN  978-0387906522. OCLC  693424350 .
  19. ^ "لدينا أساسي" . متحف نيو مكسيكو للتاريخ الطبيعي والعلوم . مؤرشفة من الأصلي في 30 نوفمبر 2012 . تم الاسترجاع 18 أبريل ، 2007 .
  20. ^ بيتمان ، توم. "كان عليك دفع 5 دولارات مقدمًا للحصول عليها ..." . www.ittybittycomputers.com . تم الاسترجاع 14 يونيو ، 2017 .
  21. ^ أهل ، ديفيد هـ. (1979). المزيد من ألعاب الكمبيوتر الأساسية . موريستاون: مطبعة الحوسبة الإبداعية. رقم ISBN 978-0894801372. OCLC  839377789 .
  22. ^ أهل ، ديفيد هـ. (1984). ألعاب الكمبيوتر الكبيرة . موريس بلينز ، نيوجيرسي: مطبعة الحوسبة الإبداعية. رقم ISBN 978-0916688400. OCLC  872675092 .
  23. ^ "أوزبورن 1" . oldcomputers.net . تم الاسترجاع 14 يونيو ، 2017 .
  24. ^ ليان ، ديفيد (1981). الكتيب الأساسي (الطبعة الثانية). سان دييغو ، كاليفورنيا: Compusoft Publishing. ص. داخل الغطاء. رقم ISBN 0-932760-00-7.
  25. ^ برافين ، جاين (2011). فئة جافا . تعليم بيرسون الهند. رقم ISBN 9788131755440.
  26. ^ "GNE: لغة البرمجة C" . fysh.org . تم الاسترجاع 14 يونيو ، 2017 . خلال الثمانينيات من القرن الماضي ، انتشرت برامج التحويل البرمجي للغة C على نطاق واسع ، وأصبحت لغة C لغة شائعة للغاية.
  27. ^ "25 عامًا من دلفي ولا توجد أوراكل في الأفق: ليس قاتل Visual Basic ولكن من الصعب القتل" .
  28. ^ "إرشادات دورة حياة عائلة المنتج لبرنامج Visual Basic 6.0" . Msdn2.microsoft.com. 31 مارس 2005 . تم الاسترجاع 16 يونيو ، 2009 .
  29. ^ "دعم Visual Basic المخطط لـ .NET 5.0" . 11 مارس 2020.
  30. ^ برين ، ديفيد (14 سبتمبر 2006). "لماذا لا يستطيع جوني البرمجة" . صالون . مؤرشفة من الأصلي في 18 سبتمبر 2013 . تم الاسترجاع 19 يونيو ، 2017 .
  31. ^ "سمول بيسك" . شبكة مطوري Microsoft . مؤرشفة من الأصلي في 17 مارس 2014 . تم الاسترجاع 19 يونيو ، 2017 .
  32. ^ "الصفحة الرئيسية BASIC-256" .
  33. ^ "دارتموث تخطط للاحتفال بالذكرى الخمسين للغة الأساسية للكمبيوتر" . زعيم اتحاد نيو هامبشاير . 28 أبريل 2014 . تم الاسترجاع 14 يونيو ، 2017 .
  34. ^ "الذكرى الخمسين لـ BASIC - بحث Google" . جوجل .
  35. ^ "BASIC at 50 - Event Schedule" . كلية دارتموث . تم الاسترجاع 14 يونيو ، 2017 .
  36. ^ "BASIC at 50" . كلية دارتموث . تم الاسترجاع 14 يونيو ، 2017 .
  37. ^ "KeyPgAsm" . ويكي FreeBasic . تم الاسترجاع 2 أغسطس ، 2017 .
  38. ^ "Inline x86 ASM" . بيور بيسك . تم الاسترجاع 2 أغسطس ، 2017 .
  39. ^ "استخدام لغة التجميع في التعليمات البرمجية الخاصة بك" . باور بيسك . مؤرشفة من الأصلي في 2 أغسطس 2017 . تم الاسترجاع 2 أغسطس ، 2017 .
  40. ^ كيميني ، جون جي ؛ كيرتس ، توماس إي (يناير 1968). أساسي: دليل للغة BASIC ، اللغة الجبرية الأولية المصممة للاستخدام مع نظام مشاركة الوقت في دارتموث (PDF) (الطبعة الرابعة). هانوفر ، نيو هامبشاير: مركز حساب كلية دارتموث. ص. 53.
  41. ^ "الاختلافات بين GW-BASIC و QBasic" . 12 مايو 2003. مؤرشفة من الأصلي في 19 أكتوبر 2013 . تم الاسترجاع 28 يونيو ، 2008 .

المراجع العامة

روابط خارجية