روابط سريعة
هل سبق لك أن رغبت في برمجة كمبيوتر قديم؟ إذا استخدمت لغة البرمجة BASIC وقمت بتشغيل محاكاة لجهاز Apple II الأسطوري في متصفحك، فسيكون الأمر سهلاً! ستحصل على فكرة ممتازة عن شكل البرمجة في أواخر السبعينيات وأوائل الثمانينيات.
بالطبع، إذا كان لديك جهاز Apple II حقيقي، فيمكنك المتابعة أيضًا. وإلا، فسنستخدم محاكي Apple II سهل الاستخدام يسمى ابل )(js) تم إنشاؤه بواسطة ويل سكولين. سنغطي أساسيات لغة BASIC ونقوم بتشغيل برنامجين بسيطين.
لماذا كان جهاز Apple II مهمًا جدًا
تم تقديمه في عام 1977، ابل 2 تم إطلاقه كجزء من فئة من أجهزة الكمبيوتر الصغيرة غير المكلفة التي أصبحت ممكنة بفضل تقنية المعالجات الدقيقة. سمحت هذه الأجهزة الشخصية للناس بامتلاك وتشغيل أجهزتهم الخاصة بسهولة نسبية. قبل ذلك، كانت معظم أجهزة الكمبيوتر باهظة الثمن ولا تمتلكها (أو تتقاسمها) إلا المنظمات الكبيرة.
تميز جهاز Apple II بتكلفته المنخفضة ورسوماته الملونة. كما كان به سبع فتحات توسعة داخلية تعمل مع نظام القرص المرن الأقل تكلفة في العالم في ذلك الوقت، وهو Disk II. ستيف وزنياكإن البراعة في تصميم الدوائر الكهربائية سمحت بوضع كل هذه الميزات في جهاز مكتبي صغير مع هيكل بلاستيكي خفيف الوزن.
كان جهاز Apple II نجاحًا مذهلاً لشركة Apple. فعلى مدار عمره الافتراضي الذي بلغ 16 عامًا تقريبًا (تم إيقاف إنتاجه في عام 1993)، استضافت منصة Apple II سبعة إصدارات من تصميم الكمبيوتر الأصلي لوزنياك. وكان جهاز كمبيوتر Apple II النموذجي مزودًا بذاكرة وصول عشوائي (RAM) سعة 48 أو 64 كيلوبايت، ووحدة معالجة مركزية بسرعة 1.022 ميجاهرتز 6502. ويمكنك برمجة كل طراز بلغة BASIC.
أساسيات لغة BASIC
من أواخر السبعينيات وحتى أوائل الثمانينيات، تضمنت معظم أجهزة الكمبيوتر الشخصية لغة برمجة تُعرف باسم أساسي، وهو اختصار لـ Beginners’ All-purpose Symbolic Instruction Code (كود التعليمات الرمزية لجميع الأغراض للمبتدئين). ظهرت لغة BASIC في عام 1964 على نظام تقاسم الوقت بكلية دارتموثسرعان ما أصبحت أداة تعليمية شائعة لعلوم الكمبيوتر بسبب سهولة استخدامها.
تم إطلاق جهاز Apple II بنسختين رئيسيتين من لغة BASIC على مر السنين: لغة Integer BASIC التي ابتكرها Wozniak، ولغة Applesoft. وقد أنشأت شركة Microsoft لغة Applesoft قبل فترة طويلة من شهرتها بنظام Windows.
في هذه المقالة، استخدمنا Applesoft BASIC.
بعض النصائح حول بناء الجملة
يتألف كل برنامج BASIC على جهاز Apple II من أسطر من التعليمات البرمجية. كل سطر له رقم، وعندما يتم تشغيل البرنامج، يقوم الكمبيوتر بتنفيذ كل سطر بالترتيب العددي من الأقل إلى الأكبر. يتم إدخال كل سطر في ذاكرة الكمبيوتر بالضغط على مفتاح Return.
ستكون هذه الأوامر الأساسية الثلاثة مفيدة دائمًا.
- في أي وقت أثناء البرمجة، يمكنك رؤية محتويات برنامجك عن طريق كتابة
LIST
يأمر. - لبدء برنامج جديد (مسح البرنامج الحالي من الذاكرة)، اكتب
NEW
. - لمسح الشاشة، اكتب
HOME
.
إذا ارتكبت خطأ أثناء الكتابة في البرنامج، فسيعيد جهاز Apple II رسالة “SYNTAX ERROR” عند تشغيل البرنامج، وسيتضمن رقم السطر الذي حدث فيه الخطأ. ما عليك سوى إعادة كتابة السطر المخالف، والتحقق مرة أخرى من الأخطاء المطبعية المحتملة.
فهمت؟ لنبدأ.
برنامجك الأول
أولاً، سنكتب برنامجًا بسيطًا للغاية يقوم بالعد التصاعدي إلى الأبد. إنها طريقة سريعة لاختبار ما إذا كانت لغة BASIC تعمل بشكل صحيح على أي نظام.
إذا كان لديك جهاز Apple II أصلي، فقم بتشغيله. تأكد من استخدام جهاز يحتوي على برنامج Applesoft في ذاكرة القراءة فقط، مثل Apple II Plus أو إصدار أحدث، أو جهاز Apple II أصلي مزود ببطاقة اللغة المناسبة.
إذا كنت تتابع بدون جهاز Apple II حقيقي، فافتح نافذة متصفح جديدة على محاكي Apple (js)تستخدم Apple )(js لغة JavaScript لمحاكاة الدوائر الكهربائية لجهاز Apple II حقيقي في البرنامج. في الأساس، ستقوم بتشغيل نظام Apple II بالكامل في متصفح الويب (يعمل بشكل أفضل في جوجل كروم).
عندما تقوم بتحميل المحاكي لأول مرة (أو تشغيل جهاز Apple II بدون نظام قرص مرن)، سترى شاشة مثل الشاشة الموضحة أدناه.
اضغط أو انقر فوق “إعادة تعيين”.
ستسمع صوت صفير، ثم ترى موجه “)” مع مؤشر وامض.
عند المطالبة، اكتب ما يلي واضغط على Enter (أو Return) في نهاية كل سطر:
10 X=X+120 PRINT X
30 GOTO 10
إذا ارتكبت خطأ، فما عليك سوى استخدام مفتاح السهم الأيسر على لوحة المفاتيح لتحريك المؤشر إلى الخلف وإجراء التصحيحات. ستحل الأحرف الجديدة التي تكتبها محل الأحرف القديمة. يمكنك أيضًا إعادة كتابة السطر بالكامل.
في كل مرة تكتب سطرًا من التعليمات البرمجية برقم سطر معين، يقوم BASIC باستبدال كل ما تم تخزينه مسبقًا على رقم السطر هذا بالإدخال الجديد.
عند استخدام لغة البرمجة BASIC على نظام قديم، مثل Apple II، من الشائع ترقيم الأسطر بمضاعفات الرقم 10. وهذا يمنحك مساحة لإضافة أسطر جديدة من التعليمات البرمجية بينها لاحقًا إذا لزم الأمر.
بعد ذلك اكتب LIST
، ثم اضغط على Enter (أو Return) لرؤية قائمة ببرنامجك.
إذا انتهى بك الأمر عن طريق الخطأ إلى كتابة أسطر لا تحتاجها (على سبيل المثال، إذا كتبت 32 بدلاً من 30)، فما عليك سوى كتابة رقم السطر ثم اضغط على Enter (أو Return) لحذفه.
إذا كان كل شيء يبدو على ما يرام، فقد حان الوقت لتشغيل البرنامج. اكتب RUN
عند موجه ) ثم اضغط على Enter (رجوع).
يقوم البرنامج بالعد تصاعديًا بمقدار واحد إلى الأبد، ويطبع كل رقم على سطر جديد في أسفل الشاشة.
لإيقاف البرنامج، اضغط على Ctrl+C. سيؤدي هذا إلى BREAK
البرنامج، مما يؤدي إلى مقاطعة تنفيذه.
إذن، كيف يعمل هذا البرنامج؟ دعنا نشرحه بالتفصيل سطرًا بسطر:
10 X=X+120 PRINT X
30 GOTO 10
- الخط 10: هنا، نخبر البرنامج أن المتغير المسمى “X” يساوي نفسه زائد واحد. في بداية البرنامج، “X” يساوي صفرًا. لذا، في أول محاولة له، يضيف البرنامج واحدًا إلى الصفر، مما ينتج عنه واحد.
- الخط 20: سوف يستخدم البرنامج
PRINT
أمر لعرض محتويات المتغير “X” على الشاشة. - الخط 30: نحن نستخدم
GOTO
أمر لإعادة البرنامج إلى السطر 10 في حلقة. يتم إدخال قيمة المتغير “X” (التي تمت زيادتها الآن بمقدار واحد) مرة أخرى إلى السطر 10. ثم يكرر البرنامج هذه العملية إلى الأبد، مع العد تصاعديًا بمقدار واحد، ثم طباعة النتيجة في كل حلقة.
برنامج إدخال بسيط
الآن بعد أن حصلت على تجربة كتابة البرنامج وإدراجه وتشغيله وإيقافه، دعنا نلقي نظرة على البرنامج الذي يمكنه القيام بشيء ما باستخدام المدخلات التي تقدمها له.
أولا، اكتب NEW
، ثم اضغط على Enter (رجوع). سيؤدي هذا إلى مسح آخر برنامج لدينا من الذاكرة، حتى نتمكن من البدء من جديد.
اكتب السطر التالي سطرًا تلو الآخر، ثم اضغط على Enter (رجوع) في نهاية كل سطر:
10 PRINT "WHAT IS YOUR NAME?"20 INPUT N$
30 PRINT "HELLO, ";N$
عندما تنتهي، LIST
البرنامج للتحقق من أنك كتبته بشكل صحيح.
النوع التالي RUN
واضغط على Enter (رجوع) لتشغيله. سيطلب منك البرنامج إدخال بيانات بعلامة استفهام ( ?
). اكتب اسمك ثم اضغط على Enter (رجوع) للإجابة على السؤال.
مثل نوع من السحر الأسود الغامض، كان البرنامج يعرف اسمك ويرد عليك! كيف كان يعمل؟ دعنا نلقي نظرة على كل سطر:
10 PRINT "WHAT IS YOUR NAME?"20 INPUT N$
30 PRINT "HELLO, ";N$
- الخط 10: يعرض البرنامج سطرًا من النص على الشاشة. كل سطر من النص تريد عرضه
PRINT
يجب أن يكون بين علامتي الاقتباس. - الخط 20: البرنامج يطلب
INPUT
منك ويخزن النتيجة في متغير يسمىN$
. علامة الدولار هي اختصار لكلمة “string”. يجب أن يكون كل متغير يحتوي على أحرف متغيرًا من نوع السلسلة. - الخط 30: تم عرض البرنامج
Hello
، متبوعًا بفاصلة ومسافة، ثم يتم طباعة محتويات المتغيرN$
. لقد أمرت الفاصلة المنقوطة البرنامج بالطباعةN$
على نفس السطر دون إدراج فاصل للسطر.
خدش السطح
الآن بعد أن تذوقت لغة البرمجة BASIC على جهاز Apple II، يمكنك إخبار جميع أصدقائك بأنك قمت ببرمجة جهاز كمبيوتر قديم! في الواقع، يمكنك حتى إخبار ستيف وزنياك على تويتر.
إذا كنت ترغب في التعمق أكثر في Applesoft BASIC، فنحن نوصيك بـ هذا البرنامج التعليمي الرائع عبر الإنترنت بواسطة يوري ياكيمينكو. إنه يدخل في تفاصيل أكثر بكثير مما لدينا هنا. هناك أيضًا هذا مرجع سريع وسهل الاستخدام من أوامر Applesoft BASIC.
مسح كامل لـ دليل البرمجة الأساسية لجهاز Apple II يتوفر أيضًا كتاب من عام 1978. وهو يشرح بالتفصيل كيفية حفظ برامجك وتحميلها.
لقد تم برمجة آلاف الألعاب والتطبيقات الرائعة في Applesoft على مدار الـ 42 عامًا الماضية، لذا فإن السماء هي الحد الأقصى لما يمكنك فعله بها. (في الواقع، فإن كمية ذاكرة الوصول العشوائي (RAM) في جهازك هي الحد الأقصى، ولكن هذا أقل شاعرية بكثير.)
لجميع مستخدمي Apple II القدامى، يسعدنا أن نسمع قصصكم حول استخدام BASIC في التعليقات. برمجة سعيدة!