أوامر GPSS :

· BVARIABLE

يعرف كائن متغير من النوع Boolean

· CLEAR

يصفر العدادات الإحصائية ويتخلص من المتعامل Transaction

· CONDUCT

يجري تجربة

· CONTINUE

يكمل المحاكاة ، يجعلها تستمر بعد توقف

· EQU

يعطي قيمة لمتغير المستخدم

· EXIT

ينهي جلسة او دورة GPSS

· FUNCTION

تعرف كائن دالة

· FVARIABLE

يعرف كائن من نوع Fvariable (متغير تسهيلة)

· HALT

يوقف المحاكاة ويمحي كل الأوامر المنتظرة التنفيذ Queued Commands

· INCLUDE

يقرأ ويترجم ملف نموذج ثانوي

· INITIAL

يستهلل او يطور محول منطقي Logicswitch أو قيمة حفظ Savevalue أو كائن مصفوفي Matrix Entity

· INTEGRATE

يكامل تلقائيا مشتقة زمنية في متغير المستخدم User Variable

· MATRIX

يعرف كائن مصفوفي

· QTABLE

يعرف كائن من نوع Qtable (جدول طابور)

· REPORT

يضع إسما لملف التقرير أو يستخدم لطلب تقرير فوري

· RESET

يصفر إحصائيات المحاكاة

· RMULT

يضع نواة المولدات السبعة الاولى للأعداد العشوائية

· SHOW

يقدر evaluate و يعرض display العبارات Expression

· START

يعطي قيمة لعداد الإنهاء Termination Count ويبدأ المحاكاة

· STEP

يجري المحاكاة خطوة بخطوة بتجربة عدد محدد من القوالب

· STOP

يضع شرط توقف إعتمادا علي محاولات دخول القالب

· STORAGE

يعرف كائن مخزن Storage Entity

· TABLE

يعرف كائن جدول Table Entity

· VARIABLE

يعرف كائن متغبر Variable Entity

عبارات قوالب GPSS

The GPSS Block Statements

ADOPT

يغير مجموعة التجميع Assembly Set

ADVANCE

يضع متعامل Transaction علي قائمة الأحداث المستقبلية Future Events Chain

ALTER

يختبر ويعدل المتعاملين في مجموعة Group

ASSEMBLE

ينتظر وينهي المتعاملين المرتبطين related Transactions

ASSIGN

يعدل معلم المتعامل Transaction Parameter

BUFFER

يضع المتعامل في نهاية قائمة الأحداث الحالية Current Events Chain

CLOSE

ينهي إدخال بيانات

COUNT

يضع تعداد count الكائنات في معلم المتعامل Transaction Parameter

DEPART

ينقص من محتويات كائن طابور Queue Entity

DISPLACE

يغير القالب المتسلسل التالي Next Sequential Block للمتعامل

ENTER

امتلك او انتظر وحدات مخزن في كائن مخزن Storage Entity

EXAMINE

يختبر إنتماء الى او عضوية مجموعة group

EXECUTE

يقوم بنشاط حدد بواسطة قالب آخر

FAVAIL

يغير من حالة status كائن تسهيلة Facility Entity إلى " متوفرة "  "available"

FUNAVAIL

يغير من حالة status كائن تسهيلة Facility Entity إلى " غير متوفرة "  "not available"

GATE

يختبر كائن ويعدل إنسياب المتعامل Transaction flow

GATHER

ينتظر المتعاملين المرتبطين related Transactions

GENERATE

يولد Create متعامل Transaction ويضعه في قائمة الأحداث المستقبلية Future Events Chain

INDEX

يعدل معلم متعامل Transaction Parameter

INTEGRATION

يحول تكامل دالة مستخدم من On  إلى Off

JOIN

يضع عضوا في مجموعة عددية او مجموعة متعامل Numeric or Transaction Group

LEAVE

يترك او يحرر وحدات مخزن storage units لكائن مخزن Storage Entity

LINK

ينقل او يحرك متعامل الى كائن قائمة مستخدم Userchain Entity

LOGIC

يعدل كائن محول منطقي Logicswitch Entity

LOOP

ينقص من قيمة معلم ويقفز الي قالب آخر إذا كانت النتيجة غير صفرية

MARK

يضع قيمة ساعة النظام في معلم المتعامل Transaction Parameter

MATCH

ينتظر المتعاملين المرتبطين لكي يصلوا إلي قالب MATCH المقترن

MSAVEVALUE

يعطي قيمة لعنصر كائن مصفوفة Matrix Entity

OPEN

يستهلل إدخال بيانات

PLUS

يقدر او يحسب تعابير PLUS ويحفظ النتيجة في معلم

PREEMPT

يزيح او يستولي على ملكية التسهيلة

PRIORITY

يعدل افضلية متعامل

QUEUE

يزيد محتويات كان طابور

READ

يحضر السطر التالي من ملف بيانات

RELEASE

حرر كائن التسهيلة Facility Entity

REMOVE

يخرج عضوا من مجموعة عددية او مجموعة متعامل Numeric or Transaction Group

RETURN

يحرر كائن التسهيلة Facility Entity

 

SAVAIL

غير حالة كائن المخزن إلى " متوفر "

SAVEVALUE

ضع قيمة لكائن Savevalue

SCAN

اختبر مجموعة متعاملين وضع القيمة في معلم

SEEK

غير مؤشر السطر في بيانات مدخلة

SEIZE

امتلك أو انتظر كائن تسهيلة

SELECT

ضع رقم الكائن المختار في معلم المتفاعل

SPLIT

اخلق متفاعل مرتبط

SUNAVAIL

غير حالة كائن المخزن إلى " غير متوفر "

 

TABULATE

جدد كائن جدول

TERMINATE

انهي متعامل وانقص عداد الإنهاء

TEST

اختبر الشرط الحسابي arithmetic condition وعدل إنسياب المتعامل

TRACE

ضع مؤشر تعقب Trace Indicator للمتعامل النشط Active Transaction

TRANSFER

حرك او انقل الى القالب المحدد

UNLINK

ازل المتعامل من كائن قائمة المستخدم

UNTRACE

اغلق مؤشر التعقب للمتعامل النشط

WRITE

ارسل قيمة الي ملف البيانات

الصفات العددية للنظام المتوفرة في GPSS

SNAs available in GPSS:

· A1 

مجموعة التراكم Assembly Set للمتعامل النشط. قيمة صحيحة

· AC1 

قيمة ساعة النظام المطلقة. الوقت المحاكى من آخر CLEAR. قيمة حقيقية

· BVEntnum 

نتيجة تقدير كائن متغير بولي Boolean Variable Entity يسمى Entnum . قيمة حقيقية

· C1 

قيمة ساعة النظام النسبية. الوقت المحاكى من آخر RESET. قيمة حقيقية

· CAEntnum  

متوسط محتوى قائمة المستخدم. المتوسط الموزون لعدد ازمنة المتعاملين المتسلسلين في قائمة مستخدم تسمى Entnum.  قيمة حقيقية

· CCEntnum 

عدد الدخول الكلي لقائمة مستخدم. تعداد كل المتعاملين المسلسلين إلى قائمة المستخدم المسماة Entnum . قيمة صحيحة

· CHEntnum 

محتويات قائمة مستخدم حالية. عدد المتعاملين الحاليين المسلسلين إلى قائمة المستخدم المسماة Entnum . قيمة صحيحة

· CMEntnum 

اعلى محتوى لقائمة مستخدم. اعلى عدد من المتعاملين المسلسلين إلى قائمة المستخدم المسماة Entnum . قيمة صحيحة

· CTEntnum 

متوسط زمن المكوث في قائمة مستخدم. متوسط مكوث متعامل في قائمة المستخدم المسماة Entnum . قيمة حقيقية

· FEntnum

تسهيلة مشغولة. إذا كان كائن التسهيلة المسماة Entnum مشغول حاليا، Fentnum  ترجع 1 وإلا ترجع 0 قيمة صحيحة

· FCEntnum

تعداد شغل التسهيلة. عدد المرات التي امتلك SEIZE او افرغ PREEMPT كائن التسهيلة المسمي Entnum بمتعامل. قيمة صحيحة

· FIEntnum 

التسهيلة المسماة Entnum قوطعت. إذا كان كائن التسهيلة Entnum افرغ حاليا، FIEntnum ترجع 1 وإلا ترجع 0 . قيمة صحيحة

· FNEntnum 

دالة. نتيجة تقييم كائن الدالة Entnum . قيمة حقيقية

· FREntnum 

فعالية التسهيلة. الجزء من الزمن الذي  كان فية كائن التسهيلة Entnum  مشغول. ويمثل كجزء من 1000 جزء ولهذا يرجع قيمة بين 0 و 1000 إشتمالا، وقد يكون غير صحيح (يشمل جزء عشري) . قيمة حقيقية

· FTEntnum  

متوسط زمن إمساك التسهيلة. متوسط الزمن الذى امتلك فيه كائن التسهيلة Entnum  بمتعامل. قيمة حقيقية

· FVEntnum  

تسهيلة في حالة توفر. FVEntnum ترجع 1 إذا كان كائن التسهيلة Entnum في حالة توفر (أي فارغة) وإلا ترجع 0. قيمة صحيحة

· GNEntum 

تعداد مجموعة عددية. GNEntnum ترجع تعداد عضوية مجموعة عددية Entnum . قيمة صحيحة

· GTEntnum 

تعداد مجموعة متعاملين. GTEntnum ترجع تعداد عضوية مجموعة متعاملين Entnum . قيمة صحيحة

· LSEntnum 

محول منطقي جاهز. LSEntnum تعيد 1 إذا كان كائن المحول المنطقي في حالة " جاهز " وإلا تعيد 0 . قيمة صحيحة

· MBEntnum 

يوفق Match عند قالب. MBEntnum يعيد 1 إذا وجد متعامل عند قالب Entnum والذي له نفس مجموعة التجميع Assembly Set كالمتعامل النشط Active Transaction. MBEntnum تعيد 1 وإلا 0 . قيمة صحيحة

· MPParameter 

زمن الإنتقال، معلم. قيمة ساعة النظام المطلقة الحالية ناقصا قيمة المعلم Parameter . قيمة حقيقية

· MXEntnum(m,n)

قيمة حفظ مصفوفي. يعيد (يعطي) القيمة في السطر m والعمود n لكائن المصفوفي Entnum

· M1 

الوقت الإنتقالي. M1 يعيد ساعة النظام المطلقة ناقصا زمن التجهيز "Mark Time" للمتعامل. قيمة حقيقية

· NEntnum 

تعداد دخول قالب. يعاد عدد المتعاملين الكلي الذي دخل القالب Entnum . قيمة صيحة

· PParameter or *Parameter 

قيمة المعلم. Pparameter أو *Parameter يعيد قيمة المعلم Parameter للمتعامل النشط. قيمة صحيحة او حقيقية او حرفية

· PR 

افضلية متعامل. قيمة افضلية متعامل نشط. قيمة صحيحة

· QEntnum 

محتويات الطابور الحالي. تعداد قيمة محتوى كائن الطابور الحالي Entnum . قيمة صحيحة

· QAEntnum 

متوسط محتوي الطابور. المتوسط الزمني الموزون للعدد في كائن الطابور Entnum . قيمة حقيقية

· QCEntnum 

العدد الكلي الداخل للطابور. جمع جميع تعدادات الدخول إلي كائن طابور Entnum . قبمة صحيحة

· QMEntnum 

أقصى محتوى للطابور. التعداد الأقصى لكائن الطابور Entnum . قيمة صحيحة

· QTEntnum  

متوسط زمن المكوث في طابور. المتوسط الزمني الموزون للتعداد لكائن الطابور Entnum . قيمة صحيحة

· QXEntnum 

متوسط زمن المكوث في طابور مع عدم إعتبار المدخلات الصفربة. المتوسط الزمني الموزون للتعداد لكائن الطابور Entnum مع عدم حساب الداخلين التي لها ازمنة مكوث صفرية. قيمة حقيقية

· QZEntnum 

تعداد الداخلين الصفريين للطابور. عدد الداخلين لكائن الطابور Entnum  التي لها ازمنة مكوث صفرية. قيمة صحيحة

· REntnum 

متوسط سعة المخزن. محتويات المخزن المتاحة للإستعمال بالمتعاملين الداخلين إلي كائن المخزن Entnum . قيمة صحيحة

· RNEntnum 

رقم عشوائي. RNEntnum  يعيد رقم  صحيح عشوائي بين 0-999 من مولد الارقام العشوائية Entnum . قيمة صحيحة 

· SEntnum 

التخزين المستخدم. SEntnum  يعيد مقدار محتويات المخزن المشغولة حاليا بالمتعاملين الداخلين كائن المخزن  Entnum . قيمة صحيحة

· SAEntnum 

متوسط التخزين المستخدم. SAEntnum يعيد المتوسط الزمني الموزون لسعة المخزن المستعملة عند كائن المخزن Entnum . قيمة حقيقية

· SCEntnum 

تعداد إستخدام المخزن. العدد الكلي لوحدات المخزن المشغولة من كائن المخزن Entnum . قيمة صحيحة

· SEEntnum 

المخزن فارغ. SEEntnum تعيد 1 إذا كان كائن المخزن Entnum متوفر بكامله وإلا تعيد 0 . قيمة صحيحة

· SFEntnum 

المخزن ممتلئ. SFEntnum تعيد 1 إذا كان كائن المخزن Entnum ممتلئ بكامله وإلا تعيد 0 . قيمة صحيحة

· SREntnum 

فعالية المخزن. كسر من الإستخدام الكلي متمثل بمتوسط المخزن المستخدم في كائن المخزن Entnum . ويعبر عنه كجزء من الف جزء ويعيد قيمة بين 0-1000 حصريا وقد يأخذ قيمة كسرية. قيمة حقيقية

· SMEntnum 

أقصى مخزون في الإستعمال في كائن المخزن Entnum . قيمة صحيحة

· STEntnum 

متوسط زمن المكوث لكل وحدة في كائن المخزن Entnum  . قيمة حقيقية

· SVEntnum 

المخزن في حالة التوفر. SVEntnum تعيد 1 إذا كان الكائن Entnum في حالة توفر وإلا تعيد 0 . قيمة صحيحة

· TBEntnum 

المتوسط غير الموزون للقيم في كائن الجدول Entnum . قيمة حقيقية

· TCEntnum 

تعداد قيم الجدول الغير موزونة في كائن الجدول Entnum . قيمة صحيحة

· TDEntnum 

الإنحراف المعياري لقيم الجدول الغير موزونة في كائن الجدول Entnum . قيمة حقيقية

· TG1 

الباقي في عداد الإنهاء. TG1 تعيد العد الذي يتناقص بواسطة القوالب TERMINATE التي يكون فيها المعلم A موجب ، وهي التي تستهل بعبارة START وتبين إنتهاء المحاكاة عندما تكون قيمتة 0 . قيمة صحيحة

· VEntnum 

نتيجة تقييم كائن المتغير Entnum الحسابي او النقطة العائمة floating point . قيمة حقيقية

· WEntnum 

تعداد القالب الحالي. عدد المتعاملين الحاليين في كائن القالب Entnum . قيمة صحيحة

· XEntnum 

قيمة محفوظة Savevalue . تعاد قيمة الكائن قيمة محفوظة Entnum . قيمة صحيحة او حقيقية او حرفية

· XN1

رقم المتعامل النشط. يعاد رقم المتعامل للمتعامل النشط. قيمة صحيحة

· Z1

الذاكرة الحرة. قيمة تعاد بواسطة نظام التشغيل. قيمة صحيحة

ملاحظات:

رمز W22 (صفة العددية للنظام SNA)  يعيد عدد المتعاملين المنتظرين في القالب رقم 22 . معرف القالب في هذه الحالة هو الرقم 22 ولكن يوجد اشكال اخرى للتعبير نفسة وهي:

· Wj 

حيث j عدد صحيح موجب، رقم القالب في المحاكاة

· W$Name 

حيث Name هو موقع القالب المعني

· W*j

حيث j عدد صحيح موجب، رقم معلم المتعامل النشط الذي يحوي رقم القالب المعني. وهذه عنونة غير مباشرة indirect addressing

· W*Name 

حيث Name هو إسم معلم المتعامل النشط الذي يحوي رقم القالب المعني. وهذه عنونة غير مباشرة

· W*$Name 

حيث Name هو إسم معلم المتعامل النشط الذي يحوي رقم القالب المعني. مكافئة لسابقتها

· W*Parameter 

وتبين إمكانية إستخدام أي من  W*j او  W*Name او  W*$Name

العمال المستخدمة في GPSS:

^  

الرفع لأس. A^B تعيد A مرفوع للقوة B.

#  

ضرب. A # B تعيد النتيجة العددية لضرب A في B

/  

قسمة. A / B تعيد نتيجة قسمة A على B

\  

القسمة الصحيحة Integer Division. A \ B تعيد نتيجة القسمة الصحيحة لـ A على B

المتبقي الصحيح Integer Remainder. A @ B تعيد باقي قسمة Modulo Division لـ A على B

-  

طرح. A - B تعيد الفرق بين A و B

+

جمع. A + B تعيد مجموع A و B

>= ‘GE’  

أكبر من أو يساوي. A >= B تعيد 1 إذا كانت A اكبر أو تساوي عدديا  B وإلا تعيد 0 غير ذلك

<= ‘LE’  

أقل من أو يساوي. A <= B تعيد 1 إذا كانت A أقل أو تساوي عدديا  B وإلا تعيد 0 غير ذلك

> ‘G’  

أكبر من. A > B تعيد 1 إذا كانت A أكبر عدديا من  B وإلا تعيد 0 غير ذلك

< ‘L’  

أقل من. A < B تعيد 1 إذا كانت A أقل عدديا من  B وإلا تعيد 0 غير ذلك

= ‘E’  

مساوى. A = B تعيد 1 إذا كانت A مساوى عدديا من  B وإلا تعيد 0 غير ذلك

!= ‘NE’

ليس مساوى لـ . A != B تعيد 1 إذا كانت A مختلفة عدديا من  B وإلا تعيد 0 غير ذلك

& ‘AND’  

و المنطقية. A & B تعيد 1 إذا وفقط إذا كان كل من A و B غير صفرية وإلا تعيد 0 غير ذلك

Logical And. A & B returns 1 if and only if both A and B are non zero, 0 otherwise.

| ‘OR’  

أو المنطقية. A ‘OR’ B تعيد 1 إذا كان A أو B أوكلاهما غير صفري وإلا تعيد 0 غير ذلك

ملاحظة:

الكائنات التالية يجب إعلانها declared قبل أن يمكن إستخدامها:

·       كائنات المخزن يجب إعلانها بعبارة STORAGE

·       المتغيرات الحسابية يجب إعلانها بعبارة VARIABLE

·       متغيرات النقطة العائمة Floating point يجب إعلانها بعبارة FVARIABLE

·       المتغيرات البوولية Boolean يجب إعلانها بعبارة BVARIABLE

·       المصفوفات يجب إعلانها بعبارة MATRIX

·       الجداول يجب إعلانها بعبارة TABLE

·       جداول الطابور Qtables يجب إعلانها بعبارة QTABLE

·        الدوال يجب إعلانها بعبارة FUNCTION وعبارة مايتبع الدالة

·       معالم المتعاملين Transaction Parameters يجب إعلانها بعبارات ASSIGN و MARK و READ و SELECT و SPLIT و COUNT و TRANSFER SUB