ولی من خونده بودم که جهت گذرگاه ادرس فقط از پردزانده به خارج هست.
خب حتما هم بايد به اينگونه باشد براي اينكه احتياجي اين cpu هست كه داده در اختيار گذرگاه آدرس قرار ميدهد .
مثلا وقتی بخواد ادرس حافظه رو در گذرگاه ادرس قرار بده ,اول باید از گذرگاه داده اونا
به cpu انتقال بوده و بعد در گذرگاه ادرس...(این استنباط من بود)...اینطور نیست؟
درسته شما گذردگاه آدرس را مانند رگها بدانيد كه خون را به ساير اعضا كه قطعات سخت افزاري نصب شده روي مادر برد هستند انتقال مي دهد. البته اين انتقال خلاصه شده است به فقرار دادن يك عدد چن بيتي و اعلام ههشدار به قطعه مربوطه براي دريافت و شروع به كار.
این کتابی که گفتید اسم کاملش چیه؟؟
ريز پردازنده 8088 (سخت افزار / نرم افزار / ارتباط دهي / كاربردها ) نوشته جيمزال.آنتوناكوس ترجمه مهران رضايي
این کتاب خوبه و اسه یادگیری عمیق و پایه ای؟
8080/Z80 Assembly Language: Techniques for Improved Programming
پردازنده قديمي ولي پركاربرد براي اتوماسيون صنعتي
سوال:1-در این صورت ما حد اکثر میتونیم از 1 مگابایت و 64 کیلوبایت 15 بیت کمتر ( به دلیل
اینکه بزرگترین ادرس برابر با FFFF0 میشه که 15 بیت از 1 مگابایت کمتر هست و اگر از این ادرس به عنوان شروع سگمنت استفاده کنیم , 64 کیلوبایت اضافه میشه.) از رم استفاده کنیم.
2- اگر حتما بخواهیم شروع سگمنت رو ضریبی از 16 بگیریم پس فضاهای بالا استفاده چی میشن.؟

براي اينكه بهتر مطلب را درك كنيد يك مقداري از ادرس فاصله بگيريد و به پايه هاي موجود در گذرگاه ادرس نگاهي بيندازيد مطمئنا همه اين پايه ها براي ادرس دهي به كار برده نمي شوند بلكه تعدادي از آنها براي اعلام هشدار و ساير كار ها از جمله clock‌ puls به كار برده ميشوند اگر اين پايه ها را از گذرگاه مورد نظر حذف كنيد منطق آدرس دهي براي شما آشكار خواهد شد.
3-میگم این ثبات های پردازنده ax,bx,cxdx,..... مثلا چرا ما حتما باید از cx برای شمارش و حلقه ها ازش استفاده کنیم و چرا نمیشه با جای این از ax استفاده کرد و کلا از ثبات ها
برای هر منظوری که خواستیم استفاده کنیم....
خب روش كار پردازنده به اين شكل بوده و طبعا بايد از يه سري قوانين پيروي كند مثلا loop براي اينكه عمل پرش را به پايان برساند هميشه چشمش به cx بوده و با صفر بودن cx عمل خود را خاتمه ميدهد شما نمي توانيد عدد را در ax قرار بديد و انتظار داشته باشيد كه loop كار خودش را با محاسبه اي كه شما انجام داديد خاتمه بدهد.
4-دقیقا استفاده ی bp -sp-ip چیه , sp ادرس شروع سگمنت پشته رو نگه میداره؟؟
ip افساري هشت كه شما ميتوانيد توسط آن cpu را به هر طرف هدايت كنيد. ولي bp يك اشاره گر آزاد و بي قيد و بند بوده و در بعضي مواقع خود را قانوني ميكند مثلا بعضي از وقفه ها مقادير برگشتي را لزوما داخل bp قرار ميدهند.
ولي در مورد sp بايد عرض كنم كه اگر برنامه ايرادي نداشته و ويروسي نباشد و به قول معروف صحيصح و سالم باشد ميتواند اندازه داده هاي موجود در سگمنت پشته را براي شما مشخص كند.
bp دقیقا استفادش تو اسمبلی چیه و نقشش در اجرای یک برنامه سطح بالا مثل C++‎‎‎ چیه؟
خب بايد براي بررسي دقيق تر به سورس كد كامپاير مراجعه كنيد و ببينيد كجا ازش استفاده كرده ولي اساسا براي cpu جزو قوانين نيست.
کدوم یک از این 3 ثبات رو میشه توسط برنامه نویس تغییر داد و در چه مواقعی اینکار لازم میشه....؟
اين سه ثبات سحله همه رجيستر ها قابل تغييرند. توضيح در مورد كارشان بحث گسترده اي را ميطلبد كه به مرور زمان و با تمرينات و نياز به كدهاي فوق سطح پايين براي شما آشكار خواهد شد.