رفع الإبهام عن مصائب المايكرو العظام
Ir al canal en Telegram
Mostrar más
El país no está especificadoLa categoría no está especificada
212
Suscriptores
Sin datos24 horas
-47 días
-430 días
Archivo de publicaciones
⚠️ فقط في Part 3 - نقطة إطفاء التايمر
ذكر ان شغل كل الـ IR
وخلي ماسك على IR0، الحل صحيح
ولكن الأصح كما ذكروا بالمختبر
IN AL,21
OR AL,01
OUT 21,AL
HLT
السبب
من شغلت كل الـ IR ممكن يكون
بعضهم كان اساسًا مطفي وشغلته !
فـ الحل
نقرأ حالته (IN AL,21) ونغير
فقط حالة البت الاول
الّي هيّه 0 ونريد نسوي 1 (OR AL,01)المختصر في شرح التايمر
شرح : مصطفى رافد
Part 1
https://youtu.be/rWFnaxgoRKc
Part 2
https://youtu.be/EV3znNGXBhk
Part 3
https://youtu.be/KANCW96GV0U
Part 4
https://youtu.be/9H-JO0WE55Eاذا باجر طلبوا نطبق ن2 بس
طبعا ميحتاج تسوي هاي
مباشرة وانت تكتب
CALL 100
بدل ما تخلي 319 تخلي [SI]هنا مجرد غيرنا على كود ن1
ان مساع تردد اني محدده هسه لاا
حسب مواقع الميمري فـ لازم اغير بـ 104
⚠️ الكود الاصلي بالفانكشن من كتبنا
104
الامر البعده كان موقعه 107
هنا لان ميمري الشسمه الحجم يختلف
من اكتب الامر بـ 104
راح اشوف الي بعده 106
فـ علمود ارهمها وما اخرب الاول وتالي
اخلي موقع 106 NOP
⚠️ كل هذا الكلام بس لان هنا اريد اطبق نقطة الاولى بعدين الثانية فـ اختصارًا للوقت بدل ما اعيد كلشي من بداية فقط اعدل كود نقطة الاولى
2)
E 500 05 01 00 FF 7F 10 00 EE FF 20 03 A 104 MOV AX,[SI] NOP A = 400 MOV BL,[500] MOV SI,501 NEXT : CALL 100 CALL 200 CALL 300 CALL 200 ADD SI,2 DEC BL JNZ NEXT HLT
1)
E 500 5 A 400 MOV BL,[500] NEXT : CALL 100 CALL 200 CALL 300 CALL 200 DEC BL JNZ NEXT HLT
A 100 MOV AL,B6 OUT 43,AL MOV AX,319 OUT 42,AL MOV AL,AH OUT 42,AL IN AL,61 MOV AH,AL OR AL,3 OUT 61,AL RET A 200 MOV DX,FFF d1 : MOV CX,FF d2 : NOP NOP LOOP d2 DEC DX JNZ d1 RET A 300 MOV AL,AH OUT 61,AL RET
3)
- A 420
MOV CX,3
MOV BL,[201]
MOV BH,0
ADD BX,202
SUB BX,3
NEXT:
MOV AH,2
MOV DL,[BX]
INT 21
INC BX
LOOP NEXT
HLT
- G = 400 439بالـ ن
3 نفس الكود السابق بس الفكرة
منين يبدي يطبع
اول ثلاث احرف سهله اعرف منين يبدي
بس اخر ثلاث شلون ؟
ببساطة لازم اوصل لنهاية الاسم واطرح ثلاثه
هنا هيّه البداية الّي منها لوب يطبع ثلاث احرف
شلون اوصل للنهاية ؟
شرحنها بـ كود ن1 بـ فقرة ج
نفس المبدأ هنا راح يكون ☺
⚠️ اني اعرف طول النص (موقع 201)
واعرف بداية نص مالتي (يبدأ من موقع 202)
أجمعهم علمود اوصل نهاية النص
بعدين الناتج اطرح منه ثلاثه
MOV BL,[201]
MOV BH,0
ADD BX,202
SUB BX,3الـ
CX عداد قيمته 3
واستخدمت فانكشن AH = 2
بحيث يطبع حرف واحد بعدين الثاني وهكذا
بدءًا من موقع 202 ,طبعا هنا لوب
يتكرر حسب قيمة الـ CX منها أحدد كم حرف يطبع
⚠️ تذكر [DS:BX]2)
- A 420
MOV CX,3
MOV BX,202
NEXT:
MOV AH,2
MOV DL,[BX]
INT 21
INC BX
LOOP NEXT
HLT
- G = 400 42F2) 3)
طلب نعدل على الكود السابق بحيث بدل ما يطبع
الاسم بالكامل يطبع أول ثلاث احرف منه (ن2)
أو اخر ثلاث احرف منه (ن3)
فـ بالبداية من وين راح يتم التعديل ؟
يتم التعديل من كود الطباعة (فقرة هـ)
نشوف اشگد الاوفست كان 420
فـ التعديل يكون من هنا ونضيف كود طباعة جديد
وحسب المطلوب