لو حضرتك تكتبها انجلش افضل لأنه ممكن تتفهم 512 ميجا bytes !
ما هي هي ؟؟ ٥١٢ ميجا بايت = 512 ميجا bytes
بصراحة مش فاهم قصدك ؟؟
اقصد انها 512 Mbit ميجا بت
هي فعلا بايت وليس بت
512 Mega Bytes
البروسيسور بينظر للذاكرة على انها سلسلة من bytes فأول عنوان هيكون 0x00000000 والعنوان اللي بعده هيكون 0x00000004 لان البروسيسور بتاعنا ٣٢ بت فهيقدر يكتب ٤ بايت في الذاكرة دفعة واحدة لحد ما نوصل لأخر عنوان وهو 0xFFFFFFFF والرقم ده لو حولته للنظام العشري هيكون 4294967295 يعني ٤ جيجا بايت.
عموما لما هنتكلم على الذاكرة يبقي بالبايت اما لو هنتكلم على سرعة نقل البيانات مثلا كسرعة النت بنتستخدم البت
تم اضافة فيديو الدرس الثالث
الفيديو أجاب على تساؤلات كثيره فجزاك الله خير
السلام عليكم ورحمة الله وبركاته
انا قرأت و سمعت الفديوهات الى الدرس الثالث اكثر من مرة لكن تقريبا نسبة فهمي للموضوع الى الان في حدود 30 % كثير من المصطلحات لم افهمها ولم اقدر على تخيل الموضوع وربط الافكار
.انا ادرس بالفرقة الاولى ميكانيكا اريد فهم هذا المعالج لعله ينفعني في مشروع تخرج او يكون اضافة لى , بماذا تنصحني هل اكمل ام اننى لن استطيع تحصيل الفائدة…
للتوضيح فالدرس الثالث والرابع معا عبارة عن مقدمة عن المعالج وهي ضرورية قبل ان نبدا عملي على الاقل يكون عندنا فكرة بسيطة.
الدرس الرابع سيتم تعديله واضافة بعض الموضوعات رايت انها مهمة للمقدمة وسيتم اعداد الفيديو في خلال الاسبوع القادم ان شاء الله.
وسيكون هناك درس خاص لبعض الموضوعات في الدرس مثلا Interrupts سيكون لها درس خاص كذلك ISA ولغة الاسمبلي سيتم التحدث عنها بالتفصيل في درسين. كذلك سيكون هناك درس للتعامل مع الذاكرة.
ولذلك لا داعي للقلق حول بعض الموضوعات التي لم يتم تغطيتها بصورة كافيه لانه سيتم اعادة شرحها بتفصيل اكثر
اهلا مهندس مصطفي
شكرا على متابعتك والاهتمام بالدروس.
في الحقيقة معالجات ARM Cortex-M وبرمجتها تعتبر نوعا ما متقدمة وصعبة حتى لمن لدية خبرة ببرمجة الميكروكنترولر ولكن الموضوع ليس مستحيل يمكنك المتابعة وفي حالة وجود اي جزء صعب الفهم ممكن اساعدك بتوضيحه اكتر.
وللعلم فهذه الدروس حتى الان مقدمة نظرية للمعالج وفكرة عامة وفي خلال الجزء العملي ستتمكن من الاستيعاب اكثر وستضح الصورة.
مع الاخد في الاعتبار انك قسم ميكانيكا في أول سنة وليس لديك خبرة بالميكروكنترولر فما وصلت اليه جيدا جدا وتقدم ملحوظ وان شاء الله مع الوقت ستصبح أفضل.
جزاك الله خيرا .
طمأنت قلبي طمأن الله قلبك .
مستمر باذن الله .
احب اضيف كمان انه مهم جدا انك تكون عارف برمجة كويس ودي اهم حاجة ولازم تتعملها وهتفيدك في كل حاجة ولو انت عندك اهتمام بالميكروكنترولر يبقي يفضل انك تتعلم لغة السي وحتى ممكن تبدا بيها وسيكون سهل عليك تتعلم اي لغة تانية لو حبيت
ان شاء الله سيتم العمل على ذلك ,الله المستعان
ربنا يبارك لنا في المهندس أحمد الديب زي ما تفضل بالتأكيد على لغة البرمجة السي، ثم أرشح لك بعض الأساسيات، أول ثماني دروس من هذه القائمة
https://goo.gl/eJQEyj
جزاك الله خيرا مهندس عبدالله
pc register will be changed every fetch happened its ok then if it find
a function it will make a jump to the new address and pc register will be the
next instruction in the function and the link register will save the return
address which means when the function end pc register will take the value
in link register am i right !! if so then what happened if there is 2
nested function calling how the link register save 2 return addresses?
Yes, you are right, but when you want to call funtion 2 from the current function 1, you will need to store the current link register into the stack before you call function 2, this is the return address of function 1.
Now you go to function 2, the link register will be updated with return address of function 2, after function 2 is finished you return back to function 1. But the link register is now with return address of function 2, so now you will need to load the link register with the value saved in the stack which is the return address of function 2.
يعطيك الف عافيه
هو الرقم ده 0xFFFFFFFF لو حولته للنظام العشري هيكون 4294967296 يعني ٤ جيجا بايت وليست 4 ميجا بايت
شكرا على التصحيح، وتم التعديل في المشاركة بالاعلى