برنامه نويسي به زبان اسمبلي براي كامپيوترهاي شخصي

حافظه داخلي

وحافظه فقط (RAM) دو نوع حافظه داخلي روي كامپيوتر عبارتند از:حافظه با دستيابي تصادفي

شماره گذاري مي شوند به طوري كه OO بايت هاي حافظه به ترتيب با شروع از (Ram) خواني

هرمكاني داراي يك آدرس منحصر به فردي مي باشد

شامل يك تراشه حافظه بخوصوصي است كه فقط مي تواند خوانده شود. چون دستورالعمل :ROM

هاودادها به طور دائمي در داخل تراشه هاجايگزاري شده اند نمي توانندتغيير داده شوند.سيستم

68 شروع شده ودستگاههاي ورودي / خروجي نظير K از أدرس (BIOS) ورودي – خروجي پايه

960 شروع مي K كنترل كننده ديسك سخت را مديريت مي كند. حافظه فقط خواني كه از

شودعمليات اساسي كامپيوترنظير امتحان كردن خود كامپيوتر در موقعروشن شدن ،الگوهاي نقطه

اي گرافيكي وبار كننده خود ديسك را كنترل مي كند.وقتي كه كامپيوتر را روشن مي كنيد،حافظه

RAM كنترلهاي گوناگوني را انجام داده واطلاعات مخصوص سيستم را از ديسك به حافظه ROM

بار گذاري مي كند.

ارتباط دارد كه بهتر بود درحافظه خواندن – نوشتن RAM يك برنامه نويس اصولا با حافظه : RAM

به عنوان يك برگه كاري براي ذخيره سازي موقت واجراي برنامه RAM نام گذاري مي شد.حافظه

محتوي)از بين مي رود بايد از ) RAM ها بكار مي رود چون در موقع خاموش شدن كامپيوتر حافظه

حافظه خارجي براي نگهداري برنامه ها و داده ها استفاده كنيم.وقتي كه كامپيوتر را روشن مي كنيد،

بار گذاري مي كند. سپس مي توانيد RAM بخشي از سيستم عامل ر ابه داخل ROM روال راه اندازي

را از آن درخواست كنيد. RAM انجام عملياتي نظير بار گذاري يك برنامه از ديسك به داخل

آدرس دهي داده ها در حافظه

بسته به مدل،پردازنده مي تواند در هر زمان به يك يا چند بايت از حافظه دسترسي داشته باشد عدد

0526 است نمايش آن به دو بايت يا H دهدهي 1315 را در نظر بگيريد نمايش هگزا دسيمال آن

يك كلمه از حافظه نياز دارد.آن شامل با ارزش ترين بايت يعني 05 و كم ارزش ترين بايت يعني

29 مي باشد.

سيستم داده را در حافظه به ترتيب معكوس ذخيره مي كند:بايت داراي كم ارزشتر در آدرس پايين

ترو بايت داراي ارزش بيشتر در آدرس بالاتر حافظه ذخيره مي شود.

پردازنده انتظار دارد كه داده هاي عددي در حافظه به ترتيب معكوس قرار گيرند و داده ها را مطابق

با آن پردازش مي كند .

سگمنت ها و آدرس دهي.

يك سگمنت ناحيه خاصي است كه در يك برنامه تعريف شده واز مرز پاراگراف شروع مي شود

يعني از مكاني كه همواره بر ١٦ يا ١٠ شانزده شانزدهي بخش پذير است. هر چندكه يك سمگنت

64 باشد ولي نقطه به k مي تواند در هر جايي از حافظه قرار بگيرد و در حالت حقيقي مي تواند تا

اندازه اي فضا لازم دارد كه برنامه براي اجرا شدن به آن نياز دارد.

ممكن است هر تعداد سگمنت وجود داشته باشد ، براي آدرس دهي سگمنت مورد نظر فقط لازم

است كه آدرس مو جود در يك ثبات سگمنت مناسبي را تغيير داد. ٣ سگمنت اصلي عبارتند از

سگمنت هاي داده ، پشته وكد

سگمنت كد

سگمنت كد شامل دستورالعمل هاي ماشين است اجرا مي شوند. معمولا اولين دستورالعمل اجرايي

در شروعاين سگمنت قرار دارد. وسيستم عامل به آن مكان پيوند داده مي شود تا اجراي برنامه را

سگمنت كد را آدرس دهي مي ، (cs) شروع كند همانطور كه از نام آن پيداست ، ثبات سگمنت كد

64 نياز داشته باشد ، برنامه ممكن است نياز داشته باشد كه بيش k كند.اگر ناحيه كد شما به بيش از

از يك سگمنت كد را تعريف كند.

سگمنت داده ها

سگمنت داده ها شامل داده ها ، ثابت ها و نواحي كاري يك برنامه مي باشد ثبات سگمنت داده ها

64 نياز داشته باشد در k سگمنت داده ها را آدرس دهي مي كند . "اگر ناحيه داده به بيش از (DS)

برنامه مي توانيد بيش از يك سگمنت داده را تعريف كنيد ".

سگمنت پشتر

به زبان ساده ، پشتر حاوي هر گونه داده و آدرسي است كه براي ذخيره موقت و يا جهت استفاده

سگمنت پشتر را آدرس (ss) توسط زير روال هاي فراخواني شده لازم است . ثبات سگمنت پشته

دهي مي كند.

حدود يك سگمنت

يك ثبات سگمنت حاوي آدرس شروع يك سگمنت مي باشد همانطور كه قبلا ذكر شد يك

سگمنت بر روي مرز پارا گراف شروع مي شود كه آدرسي است كه همواره بر ١٦ تقسيم پذير است

088 شروع مي شود در نظر بگيريد چون دراين مورد EOH يك سگمنت داده را از مكان حافظه

وتمام موارد ديگرراستي ترين رقم شانزده شانزدهي برابر صفر است طراحان كامپيوتر تشخيص

038E 038 به صورت EOH دادند كه ذخيره كردن رقم صفر درثبات سگمنت لازم نيست . لذا

ذخيره مي شود كه صفر سمت راست آن بديهي است. 


Download