تطبيق لغة البرمجة QBasic باستخدام JavaCC

من ويكي الهندسة المعلوماتية
اذهب إلى: تصفح، ابحث

مقدّمة

الهدف من هذا العمل تسهيل الطريق لبناء تطبيق باستخدام JAVACC مشابه لـQBasic Compiler ! (حقيقةً فإن لغة QBasic تستخدم مفسّر Interpreter وليس Compiler)

مراحل العمل

تعلّم اللّغة

لكي يتمّ إعداد عمل مشابه لهذا العمل يجب دائماً البدء يتعلّم اللّغة ... اللغة هذه قديمة جدّاً لذا فقد تكون مصادر تعلمها قليلة، نذكر منها: [١]

تحديد الكلمات التي يجب تقطيع TOKENS

لكل لغة مجموعة من الـTokens يتمّ تحديدها لكي يعمل المفسّر على تقطيع الجملة على أساسها، وبلغة QBasic هي:

LET
ERASE
REDIM
NEXT
EXIT FOR
EXIT DO
TYPE
AS
STRING
SINGLE
INTEGER
DOUBLE
+
*
/
\
MOD
FUNCTION
STATIC
SHARED
SUB
END
IF
THEN
ELSE
AND
OR
USING
DIM
DO
WHILE
LOOP
FOR
RETURN
GOSUB
GOTO
SELECT CASE
=
<>
><
-
>
<
>=
=>
<=
=<
20.6: الأرقام
A: الأحرف كلهابشكليها
%
#
!
$
,
(
)
[
]
'
"": أي نص بين هاتين الإشارتين يُعتبر Token واحد اسمة String !

تحديد الحالات والقواعد العامة

IF

المميّز بها: - ضرورة وجود "\n" بعد Then - ضرورة وجود "\n" بعد Else في حال Nested If

حالة 1
If 2 > 3 Then
	X = 3
End If
حالة 2
If X > Y Then
	GOTO MyLabel
	Else
		If X < Z Then
		Print X
		End If
End If
حالة 3
If 4 Then
	Print "Yes"
End If

Deceleration

حالة 1
Let X = 4
حالة 2
X = 3
حالة 3
Dim X AS Integer
حالة 4
Y$ = "JAEGER"
حالة 5
Dim Y AS String
حالة 6
Dim A(3)