مهندسی نرم افزار1 جلسه اول

بخش اول

فصل1 

مهندسی نرم افزار

FAQ هایی راجع به مهندسی نرم افزار: 

 

نرم افزار چیست ؟

 نرم افزار شامل برنامه های کامپیوتری همراه است با مستندات و داده های پیکربندی است که برای درست کارکردن برنامه ضروری است .

 دو نوع محصول نرم افزاری :

 1- محصولات کلی

 2- محصولات سفارشی

 

 

مهندسی نرم افزار چیست؟

یک نظام مهندسی است که با جنبه های نرم افزاری محصول ، از مراحل اولیه تعیین مشخصات سیستم تا نگهداری سیستم ، سروکار دارد .

 شامل مراحل زیر است :
....
ادامه نوشته

معماری کامپیوتر جلسه ششم

فصل سوم
نمایش اعداد و محاسباتی کامپیوتر

 

چکیده

- مقدمه

 - نمایش عددی و مکمل دو

- طراحی واحد محاسبه ,منطق

 - ضرب و تقسیم صحیح

 - اعداد اعشاری

 

نمایش عددی

- آنچه پیچیده به نظر می رسد:

اعداد منفی را چگونه نمایش دهیم

دامنه (Range) اعداد چیست؟

.....

ادامه نوشته

ذخیره و بازیابی اطلاعات  جلسه هفتم (جلسه آخر)

- ادامه مبحث درهم سازي

 اگر دو رکورد به يک مکان در فايل انتقال يابند به آن برخورد مي گويند.

 روش ايده آل مقابله با برخوردها اين است که بتوان الگوريتم تبديلي پيدا کرد که به طور کلي از برخوردها جلوگيري کند. به چنين الگوريتمي الگوريتم درهم سازي کامل گفته مي شود.

 

 چندين راه مختلف براي کاهش تعداد برخوردها وجود دارد که بعضي از آنها عبارتند از :

 

 ۱) پراکنده کردن رکوردها

 

 ۲) استفاده از حافظه اضافي

 

 ۳) قرار دادن بيش از يک رکورد در يک آدرس

 .....

ادامه نوشته

شیوه ارائه مطالب علمی و فنی   جلسه هفتم

ساختار چند ارائه دانشگاهي

 

گزارش << مطالعه بیشتر >> ( تحقیق ) در چارچوب یک درس:

گزارشی مطالعه ای است که دانشجو در چارچوب یک درس به پیشنهاد یا به تکلیف استاد انجام می دهد و هدف اصلی اش کسب آگاهی بیشتر پیرامون موضوع با ایده ای است که استاد معمولا مرتبط با محتوای درس مطرح میکند .

اجزاء و ساختار گزارش << مطالعه بیشتر >> : 

- جلد

- صفحه سفید

- صفحه عنوان

- صفحه رعایت شئون فرهنگی

- پیشگفتار

- صفحه فهرست مطالب

- صفحه فهرست شکلها و جدولها

......

ادامه نوشته

طراحی الگوریتم ها جلسه هفتم(جلسه آخر)

 

 

  فصل هفتم (جلسه آخر):

 

مقدمه ای بر پیچیدگی محاسباتی:

 مسئله مرتب سازی

1- 7 پیچیدگی محاسباتی

 

- پیچیدگی محاسباتی عبارت از مطالعه تمام الگوهای امکن پذیر برای حل یک مسئله مفروض است.

 

- در تحلیل پیچیدگی محاسباتی کوشش می کنیم تا حد پایینی کارایی همه ی الگوریتم ها را برای یک مسئله مفروض به دست آوریم.

- تحلیل پیچیدگی محاسباتی را با مطالعه مسئله مرتب سازی معرفی می کنیم.

- این انتخاب دو دلیل دارد:

 1- چند الگوریتم ابداع شده اند که که مسئله را حل می کنند.

 

 2- مسئله مرتب سازی یکی از معدود مسائلی است که در بسط الگوریتم هایی با پیچیدگی زمانی نزدیک به حد پایینی برای آن موفق بوده ایم.

 

2-7 مرتب سازی درجی و مرتب سازی انتخابی

 

 ..... 

ادامه نوشته

زبان ماشین و اسمبلی  جلسه هفتم

ساير حالتهاي آدرس دهي

 

حالتهای آدرس دهی به اختصار در شکل زیر آمده است

Image and video hosting by TinyPic

 

حالت‌هاي آدرس‌دهي

 

عملوندهاي دستورالعمل‌ها، به سه گروه عمده تقسيم مي‌شوند.

 ...

 

ادامه نوشته

برنامه نویسی ++C  جلسه هفتم

13- توابع‌ بي‌واسطه

تابعي که به شکل بي‌واسطه تعريف مي‌شود، ظاهري شبيه به توابع معمولي دارد با اين فرق که عبارت inline در اعلان و تعريف آن قيد شده است.

مثال‌ 16-5 تابع‌ cube() به شکل بي‌واسطه

اين‌ همان‌ تابع‌ cube() مثال‌ 3-5 است‌:

inline int cube(int x)

{ // returns cube of x:

 return x*x*x;

}

تنها تفاوت‌ اين‌ است‌ كه‌ كلمۀ‌ كليدي‌ inline در ابتداي عنوان تابع ذکر شده. اين‌ عبارت به‌ كامپايلر مي‌گويد كه‌ در برنامه به جاي cube(n) کد واقعي (n)*(n)*(n) را قرار دهد.

. به برنامۀ آزمون زير نگاه کنيد:

....

ادامه نوشته

برنامه نویسی C  جلسه هفتم

دستور if و if-else

 دستورهاي شرطي براي انجام آزمون منطقي و برگزيدن يکي از دو حالت ممکن که به نتيجة آزمون بستگي دارد استفاده مي‌شود. به عبارت ديگر اين دستورها موجب مي‌گردند تا در صورت وجود شرط يا شرايطي، مجموعه‌اي از دستورها اجرا گردند و يا در صورت وجود شرط يا شرايطي، يك مجموعه از دستورها و در صورت عدم وجود آن، مجموعة ديگري از دستورها اجرا شوند. اين دستورها را ساختارهاي تصميم نيز مي نامند.

دستور if به ‌صورتهاي if وif-else به كار می‌رود. ساده‌‌ترين شکل دستور if به صورت زير است.

....



ادامه نوشته

غیبت

سلاااااااااااااام
حال شما؟ من واقعا شرمندم که این مدت وبلاگ رو آپ نکردم.یه مشکل فنی پیش اومده بود ک 2 هفته گریبانگیرمون شده بود ولی خوشبختانه همه چی درست شد.بعد از حدود 15 روز با دست پر اومدم واستون چندتا درس جدید هم میذارم تا حداکثر استفاده رو ببرین.نظرات خودتون هم از ما دریغ نکنین.

خسرو شكيبايي به خاطره‌ها پيوست

خسرو شكيبايي به خاطره‌ها پيوست

خسرو شكيبايي - بازيگر مطرح سينماي ايران - درگذشت

Image and video hosting by TinyPic

به گزارش خبرنگار سينمايي  اين چهره‌ي مطرح سينماي ايران كه با نقش‌ ماندگاري چون «حميد هامون» تير) در سن 64سالگي بر اثر سكته‌ي قلبي در منزل خود، به بیمارستان پارسیان منتقل شد ودر همان جا دار فانی را وداع گفت و به خاطره ها پیوست .

ازاین بازیگران تو سینمای ایران خیلی کمه که روز به روز دارن کمتر میشن و از بین ما میرن. ولی کیه که قدرشون رو بدونه.همه بعد از مرگشون می فهمیم که واقعا چه کسانی رو از دست دادیم

زمان و مكان مراسم تشييع پيكر زنده‌ياد خسرو شكيبايي از طرف خانه سينما پيگيري مي‌شود.  

من که خیلی متاثر شدم وقتی این خبر رو شنیدم. روحش شاد

سیستم هاي عامل  جلسه ششم

فصل ششم

همزمانی: بن بست و گرسنگی

اصول بن بست:

- بن بست را به صورت مسدود بودن دائمی مجموعه ای از فرآیند ها که برای منابع سیستم رقابت می کنند یا با یکدیگر در ارتباط هستند .

 

- راه حل کارامدی برای بن بست وجود ندارد.

 

- تمام بن بستهابی نیاز های متضاد دو فرآیند یا بیشتر ،برای منابع هم راه هستند.

 

انواع منابع:


....

ادامه نوشته

شیوه ارائه مطالب علمی و فنی   جلسه ششم

اجزاء آغازين ارائه كتبي

در اینجا به شرح بعضی از اجزاء بخش آغازین در یک ارائه کتبی می پردازیم 

 

جلد :

در بعضی از گونه های ارائه کتبی لازم ودر بعضی دیگر لازم نیست. معمولا در آن گونه هایی که نیاز به جلد دارند محتوای صفحه عنوان روی جلد هم درج می شود .

 

صفحه عنوان :

در بیشتر گونه های ارائه کتبی صفحه عنوان صفحه جداگانه ای است که صورت و محتوای خاص خود را دارد. 

....

ادامه نوشته

معماری کامپیوتر جلسه پنجم

انشعاب ها

- در بیشترپردازشگرها“شمارنده برنامه“(PC)آدرس دستورالعمل بعدی را نگه می دارد:واکشی ازM[(PC)]

- به طور عادی بعداز اینکه یک دستورالعمل تمام شدCPU  n تا به PC اضافه می کند n  تعداد بایت ها در دستورالعمل است

- انشعاب هابه یک برنامه اجازه می دهند واکشی کنند از مکانهای متفاوت

- انشعابها استفاده میشوند برای به کاربردن همه روند کنترلی فرمانهای زبان های سطح بالا ازقبیل if-then-else, for, switch, etc .

 

طبقه بندی انشعاب ها

- دو نوع اساسی از پرشها:

.....

 

ادامه نوشته

زبان ماشین و اسمبلی جلسه ششم

فصل ششم

روال ها

 

روال‌ها

کلمه روال در زبان پاسکال و ساير زبانهاي برنامه‌نويسي سطح بالا براي بيان زير برنامه‌اي که تقريباً يک واحد کاملي مي‌باشد، بکار مي‌رود.

آرگومانها بايستي متناظر با پارامترهاي مجازي روال مزبور باشند. در زبان پاسکال نوع ديگري از زير برنامه‌ به نام تابع وجود دارد. يک تابع در زبان پاسکال شبيه يک روال مي‌باشد بجز اينکه آن را در داخل يک عبارتي با ذکر نام و آرگومانهاي مربوطه در داخل پرانتز، فراخواني مي‌کنيم. يک تابع مقداري را بر مي‌گرداند که اين مقدار در عبارت مربوطه مورد استفاده قرار مي‌گيرد.

آدرس برگشت به برنامه فراخواننده زير برنامه روي پشته ذخيره مي‌شود مي‌توان مقادير ثبات‌ها در زمان فراخواني يک زيربرنامه را روي پشته ذخيره نموده و در زمان برگشت به برنامه فراخواننده مقادير ثبات‌ها را با استفاده از پشته بازسازي نمود، با استفاده از پشته مي‌توان آرگومانها را به يک زيربرنامه انتقال داده و يا مقاديري را از يک زيربرنامه فراخواننده انتقال داد، و حتي مي‌توان فضاي لازم براي متغيرهاي محلي را روي پشته تخصيص داد.

.....
ادامه نوشته

سیستم هاي عامل  جلسه پنجم

فصل پنجم

همزمانی:

انحصار متقابل و همگام سازی

همه موضات محوری در طراحی سیستم عامل به مدیریت فرایند ها و نخ ها مربوط است.

 

چند برنامه ای : مدیریت فرایند فرایندهای متعدد در داخل یک کامپیوتر تک پردازنده ای.

چند پردازشی: مدیریت فرایند فرایندهای متعدد در داخل یک کامپیوتر چند پردازنده ای.

پردازش توزیعی: مدیریت فرایند فرایندهای متعدد در روی سیستم های کامپیوتری متعدد.

برای هر سه زمینه فوق مسئله هم زمانی است.

همزمانی در سه زمینه متفاوت طراحی می گردد:

 ....

ادامه نوشته