عفوا يا سيدي… وآسف على التأخير بالرد…
قبل ما أبدا… هذي دعوه للكل إنهم يشاركون في التفكير في الشغله… خلونا نستفيد مع بعض…
فيه نقطتين أحب أوضحهم قبل ما ندخل في التفاصيل…
1- ترا من أهم أهداف تخصص الكمبيوتر إنه يعلم الطالب وشلون يقسم المشكله لمشاكل صغيره يقدر يحلها… لأنه بعض المشاكل لو حاول الواحد يحلها بدون تقسيم… بيتعب…
يعني مثلا البروجكت هذا… ما ينوخذ قطعه وحده… لازم نشتغل فيه قطعه قطعه… ولا نعدي وحده من القطع إلا وحنا متأكدين إنها تشتغل…
وبعدين الأستاذ يحيى الله يخليه ما قصر… مقسم لكم البروجكت خلقه… ومعطيكم خطوات تمشون عليها عشان ما تضيعون…
2- ترا ما يحتاج تستخدم البورتات 18-25…
البورتات 2-9 هي بورتات bi-directional… يعني رايح جاي…
طيب بتقول لي… لو جهازين A و B مشبوكين… و A قاعد يرسل لـ B… و B يبغى يرسل… وش اللي بيصير؟؟؟
اباقولك… هذي مره بسيطه…
شف يا عزيزي… الاتصالات ثلاث أنواع
Simplex: في اتجاه واحد… من A إلى B مثلا
Half dublex: في اتجاهين في أوقات مختلفه… يعني الخط يشتغل من A إلى B… أو من B إلى A… بس ما يشتغل بالاتجاهين…
Full dublex: في اتجاهين في نفس الوقت… زي التلفون مثلا…
في حالة الـ Half-dublex… اللي هي موضوعنا في هالبروجكت… لو A قاعد يرسل لـ B… وB يبغى يرسل لـ A… البيانات اللي عند B بتنتظر تلقائيا (في الـ hardware حق الـ parallel port) حتى تخلص البيانات اللي جايه من A… بعدها يستلم B الخط ويبدا يرسل…
يعني الخلاصه… البورتات من 2-9 تكفي… ولا تتعب نفسك بالباقي…
طيب السؤال يقول… وين نبدأ؟؟
أول شي… لازم نفهم وش اللي قاعد يصير…
المطلوب الأول… هو كتابة برنامج فيه
(two routines… a “read” routine and a “write” routine)
تقدر البرامج الثانيه تستخدمها عشان تتعامل مع الـ parallel port.
وعشان البرامج الثانيه تقدر تستخدم الـ routines هذي… لازم إن الـ routines تكون ساكنه في الذاكره حتى بعد ما البرنامج اللي “وداها” (يعني سوا لها Installation) هناك يخلص…
النوعيه هذي من الـ routines تتسمى
Terminate and stay resident (TSR) routines
بعد ما تثبت هالـ routines بالذاكره… تقدر كل البرامج تناديها عن طريق software interrupts…
يمكن مثلا تصير مهمة واحد من الـ routines إنه ياخذ address ويسوي output لهالـ address وكل الـ addresses اللي بعده حتى يجيه “\0” مثلا…
معناه المفروض نبدا بالكتابه والقرايه لـ parallel port… (وأهم شي فيها وشلون تتعامل مع الـ interrupts حقات البورت…)… وإذا انضبطت نحولها إلى TSR… ونستعملها من البرامج الثانيه…
أتمنى تكون الأمور وضحت شويه…
وياليت تحاول تبدا وتعلمنا بالتطورات…
وترا الكتاب اللي حاطه استاذكم “The art of assembly language programming”… فيه كل شي… من طقطق للسلام عليكم… ولا تنسى الانترنت… ترا فيها كل شي عن الاسيمبلي… وياما (بعد الله) انقذتنا من مشاكل…
أخوك
Pathfinder