View Full Version : چند مطلب ساده درباره آدرس سگمنت
alirah84
شنبه 11 آبان 1392, 22:18 عصر
سلام
دوستان اگه موارد زیر رو برام به صورت ساده توضیح بدید ممنون میشم.
آدرس دهی سگمنت
آفست آدرس
آدرس Logical
آآدرس فیزیکی
من تو گوگل سرچ کردم ،توضیحات سایتهای مختلف رو خوندم ولی درست متوجه نشدم.
بازم خواهش میکنم ساده توضیح بدید
ممنون
alirah84
یک شنبه 12 آبان 1392, 19:00 عصر
کسی نیست کمک کنه؟
pe32_64
یک شنبه 12 آبان 1392, 21:55 عصر
من خیلی ساده برات میگم:
تو معماری 16 بیت برا ادرس دهی حافظه از سیستم "ادرس سگمنت و ادرس افست" استفاده میشه.
یعنی یکجایی تو حافظه رو با 2تیکه ی 8بیتی بیان میکنیم. به صورت: ادرس افست:ادرس سگمنت
سگمنت جایی هستش که برنامه داده هاشو قرار میده وهمچنین کدش رو (ادرس شروعش همون ادرس سگمنته ).
شما برای اینکه به داخلش دسترسی داشته باشی، از ادرس افست استفاده میکنی.یعنی چقدر داخل شه.
ترکیب ادرس سگمنت و ادرس افست که 16 بیت میشه رو میگن ادرسLogical که به یک ادرس تو رم اشاره میکنه.این ادرس تو رم رو میگن فیزیکی.
به همین راحتی!!!!!!!!!!!!
alirah84
پنج شنبه 16 آبان 1392, 12:10 عصر
برای بدست آوردن آدرس فیزیکی باید آدرس سگمنت رو در 16 ضرب کرد و با آدرس آفست جمع کرد.
میشه با یه مثال اینو توضیح بدید.
m.j_banitaba
پنج شنبه 16 آبان 1392, 16:10 عصر
برای کدوم معماری رو می خواهی بدونی 16بیتی 32 بیتی 64 بیتی؟
در 16 بیتی آدرس منطقی یا logical نداریم , segment*0x10+offset=physical address
مثلا برای آدرس دهی خانه 0x10004 سگمنت برابر 0x1000 و افست برابر 0x4 باشد و یا مثلا سگمنت برابر 0xF00 و افست برابر 0x1004 باشد به یک آدرس اشاره دارند اما در 32 روش بدست آوردن آدرس فیزیکی فرق دارد سگمنت با توجه به جداول مربوط به آدرس منطقی تبدیل می شود سپس آدرس منطقی بر اساس جداول صفحه بندی به آدرس فیزیکی تبدیل می شود.
vBulletin® v4.2.5, Copyright ©2000-1404, Jelsoft Enterprises Ltd.