fa
Feedback
رفع الإبهام عن مصائب المايكرو العظام

رفع الإبهام عن مصائب المايكرو العظام

رفتن به کانال در Telegram

نمایش بیشتر
کشور مشخص نشده استدسته بندی مشخص نشده است
212
مشترکین
اطلاعاتی وجود ندارد24 ساعت
-47 روز
-430 روز
آرشیو پست ها
⚠️ فقط في 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

خل ادز كود تجربة الثالثة :)

⚠️ كود فقرة الـ new line كان بي نقص وتم تعديله 🙄

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 = 40
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 نفس الكود السابق بس الفكرة منين يبدي يطبع اول ثلاث احرف سهله اعرف منين يبدي بس اخر ثلاث شلون ؟ ببساطة لازم اوصل لنهاي
بالـ ن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 42F
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 42F

2) 3) طلب نعدل على الكود السابق بحيث بدل ما يطبع الاسم بالكامل يطبع أول ثلاث احرف منه (ن2) أو اخر ثلاث احرف منه (ن3) فـ بالبداية من وين راح يتم التعديل ؟ يتم التعديل من كود الطباعة (فقرة هـ) نشوف اشگد الاوفست كان 420 فـ التعديل يكون من هنا ونضيف كود طباعة جديد وحسب المطلوب