دانلود مقاله و پروژه و پایان نامه دانشجوئی

دانلود مقاله و پروژه و پایان نامه دانشجوئی

دانلود مقاله و پروژه و پایان نامه دانشجوئی

دانلود مقاله و پروژه و پایان نامه دانشجوئی

بررسی رفتار و ساختار ویروسهای کامپیوتری

فرمت :WORD                                                     تعداد صفحه :37

آشنایی با برنامه های مخرب

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

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

 

1-2 انواع برنامه های مخرب

     برنامه های مخرب را از لحاظ نوع آسیب رسانی می توان به چهار دسته تقسیم کرد :

 

  • برنامه های مخرب نرم افزارها

این برنامه ها برای ضربه زدن و نابود کردن  یک نرم افزار مشخص یا محصولات یک شرکت                           خاص تولید می شوند .

 

  • برنامه های مخرب سخت افزارها

             این برنامه ها جهت آسیب رساندن به یک قطعه سخت افزاری نظیر مانیتور،  کارت گرافیکی ،  Hard Disk            ،  BIOS IC و ... تهیه می شوند.

 

  • برنامه های مخرب اطلاعات

             این برنامه ها فقط به اطلاعات موجود در بانکهای اطلاعاتی آسیب می رساند .

 

  • برنامه های جاسوسی و نفوذ کننده

این برنامه ها توسط نفوذ کننده ها (Hackers) جهت نفوذ به شبکه ها کامپیوتری ، کامپیوترهای شبکه ،کامپیوترهای شخصی و ... تهیه می شوند .

1-3 راههای انتقال برنامه های مخرب

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

 

1-4 آشنایی با مفهوم ویروس کامپیوتری

 

1-4-1 بمبهای منطقی (Logical Bombs)

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

    از آنجا که فقط یک برنامه کاربردی خاص آلوده می شود در انتها شخص تهیه کننده آن قادر است بمب منطقی را به راحتی از برنامه جدا و سیستم را پاکسازی نماید . برای مثال یک بمب منطقی         می تواند به نحوی برنامه ریزی شود که به برنامه Calculate.exe متصل شده و در هر بار اجرا تاریخ سیستم را بررسی نماید و در صورتی که برابر با تاریخ مشخصی باشد شرط برنامه بمب منطقی برقرار شده عمل تخریب و پاک کردن بانکهای اطلاعاتی و مختل شدن سیستم انجام می پذیرد 

بررسی سیستم عامل ابانتو

فرمت :WORD                                                     تعداد صفحه :35

فهرست مطالب:

فصل اول_لینوکس

فصل دوم_ لینوکس اوبونتو

فصل اول

تاریخچه:

در سال ۱۹۸۴ میلادی ‏ریچارد استالمن که رئیس بنیاد نرم‌افزارهای آزاد بود پروژه گنو (GNU) را آغاز کرد. در این پروژه که یک جنبش نرم‌افزاری محسوب می‌شد برنامه‌نویسان با یکدیگر همکاری می‌کردند (این همکاری تا به حال نیز ادامه دارد).

آن زمان بیشتر ابزارهای پروژه گنو که با زبان برنامه‌نویسی سی و اسمبلی نوشته شده بود آماده کار بود اما تنها چیزی که کم بود وجود یک هستهٔ مناسب و آزاد بود. حتی سیستم‌عامل مینیکس نیز (با وجود در دسترس بودن متن کد آن) آراد نبود و حق نشر مخصوص به خودش را داشت. کار در پروژه گنو به سمت طراحی یک هسته مناسب متمرکز می‌شد اما به نظر می‌رسید که برای ایجاد این هسته حداقل چند سال دیگر زمان احتیاج است.

این تأخیر برای لینوس تُروالدز قابل تحمل نبود. بنابر این خودش دست به کار شد و با الهام از کد مینیکس کار را آغاز کرد. سرانجام در ۲۵ اوت سال ۱۹۹۱ ساعت ۲۰و۵۷ دقیقه شب به وقت گرینویچ پیامی تاریخی به گروه خبری comp.os.minix ارسال شد. ارسال کننده این پیام کسی نبود جز «لینوس بندیک تُروالدز». او یک دانشجوی فنلاندی بود که آن زمان در دانشگاه هلسینکی درس می‌خواند.

 

متن پیام او چنین بود:

«سلام به هر کس که آن بیرون از مینیکس استفاده می‌کند.

من در حال حاضر روی سیستم عاملی آزاد برای رایانه‌های    )AT ۳۸۶(۴۸۶‏ کار می‌کنم (فقط برای سرگرمی؛ مانند پروژهٔ گنو بزرگ و حرفه‌ای نیست). از ماه آوریل کار را آغاز کرده‌ام و هم‌اکنون این سیستم‌عامل آماده‌است و کار می‌کند. دوست دارم از عقیدهٔ دیگران در مورد سیستم‌عاملم با خبر شوم. چه آنهایی که مینیکس را دوست دارند و چه آنهایی که دوست ندارند. چرا که سیستم من تا حدی شبیه به مینیکس است.

در حال حاضر (۱٫۰۸)bash و(۱٫۴۰) gcc را بر روی آن دارم و چیزهای دیگری که به نظر می‌رسد همه درست کار می‌کنند. این بدان معناست که طی چند ماه آینده چیز به‌دردبخوری فراهم خواهم کرد، و دوست دارم بدانم مردم بیشتر چه امکاناتی لازم دارند. به هر پیشنهاد و نظری خوش آمد می‌گویم اما قول نمی‌دهم که آن را انجام دهم!

لینوس (torvalds@kruuna.helsinki.fi).

پ.ن. - بله این نرم‌افزار آزاد است. البته قابل انتقال بر روی انواع دیگر رایانه نیست (چرا که دستورات AT۳۸۶ را به کار می‌برد) و ممکن است غیر از سخت‌دیسک AT چیز دیگری را پشتیبانی نکند. این همه چیزی است که من دارم!»

لینوکس مانند مینیکس (یک سیستم عامل ساده نوشته شده توسط پروفسور آندرو تاننبام که برای آموزش طراحی سیستم‌ عامل به کار می‌رفت) طراحی شده بود. اولین نسخهٔ لینوکس در سپتامبر ۱۹۹۱ در اینترنت منتشر شد. دومین نسخه‌ٔ آن به فاصلهٔ کمی در اکتبر همان سال منتشر شد. از آن پس هزاران برنامه‌نویس (هکر) در سراسر دنیا در این پروژه شرکت کردند. مقالهٔ «کلیسای جامع و بازار» مدل توسعه هسته لینوکس و نرم افزارهای مشابه را تشریح می‌کند.

بررسی سیستم های رزور اینترنتی بلیط های اتوبوس بیرون شهری

فرمت :WORD                                                     تعداد صفحه :28

فهرست مطالب

مقدمه...............................

فصل اول جمع آوری اطلاعات............

مصاحبه..............................

پرسش نامه...........................

بررسی سیستم های مشابه...............

فصل دوم-تجزیه وتحلیل اطلاعات.........

نتایج بدست آمده از مصاحبه وپرسشنامه.

نتایج بدست آمده از سیستم های مشابه..

مودار DFD...........................

نمودار E-R..........................

نمودار گانت فصل دوم.................

 

 

مقدمه

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

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

ما در این جا راه کارهایی ارائه دادیم وسیستم را تحلیل کردیم ونقص ها را بیان کردیم واز مطالب اضافی وتکراری نیز صرف نظر کردیم وفقط مطالب اصلی را بیان کردیم.

 

 

 

 

فصل اول

           جمع آوری اطلاعات

 

ما در این پروژه به 3 طریق اطلاعات مورد نیاز را جمع آوری کردیم:

  • مصاحبه
  • پرسش نامه
  • بررسی سیستم های مشابه

 

مصاحبه

دراین بخش ما به مصاحبه پرداختیم البته فقط مصاحبه با مدیر تعاونی 5 ترمینال شهر خمین آقای مصطفی مرتضوی بسنده کردیم ونتایج ومطالب مهم مصاحبه را در پروژه به کار بردیم

 

با هماهنگی قبلی وزمان مناسب با مدیر تعاونی خمین ضمن شرح موضوع پروژه مصاحبه ای در تهران داشتیم که به شرح زیر می باشد:

بررسی کانال ارتباط بی سیم و سیستم های ماهوارهای

فرمت :WORD                                                     تعداد صفحه :23

فهرست مطالب:

تاریخچه                                        2

مقدمه                                          4

مصارف بی سیم                                   5

انواع شبکه های بی سیم                          5

ایستگاه های ماهواره ای                         8

 ماهواره های ارتباطی همزمان                    10

ماهواره های مدار کوتاه                         14

مقایسه ماهواره و فیبر نوری                     16

 

بررسی کانال ارتباط بی سیم و سیستم های ماهوارهای

تاریخچه

در دهه 1950 و اوایل دهه 1960 مردم سعی کردند تا سیستم ارتباطی از طریق برخورد سیگنالها به بالونهای فلزی ایجاد نمایند. متاسفانه سیگنالهای دریافتی بسیار ضعیف بوده و کاربرد عملی نداشت. سپس نیروی دریایی آمریکا نوعی بالون ثابت را در آسمان یافت (ماه) و سیستمی عملیاتی برای ارتباط دریا به ساحل را به کمک برخورد سیگنالها به آن ایجاد کرد.

استفاده از ماهواره اولین بار توسط دانشمند انگلیسی بنام اتورسی کلارک مطرح شد. لیکن با توجه به محدودیتهای تکنولوژیکی اجرای این ایده تا اوائل دهة 60 میلادی به تعویق افتاد . پرتاب ماهواره موسو م به اکو در سال 1960 میلادی و قرار گرفتن آن در مدار زمین را می‏توان آغاز دوران ارتباطات ماهواره دانست. ماهواره‏های اولیه از مدارهای با ارتفاع کم استفاده می‏کردند و سرعت چرخش این ماهواره‏ها از سرعت چرخش زمین بیشتر بود. در نتیجه امکان ارتباط ایستگاههای زمینی با ماهواره فقط در مدت کمی از روز حدود 100 دقیقه امکان داشت

اولین ماهواره مدار ثابت زمین موسوم به سینکام دوم در سال 1963 به فضا پرتاب شد. این نوع ماهواره‏ها در ارتفاع حدود 40000 کیلومتری سطح زمین و با سرعتی برابر با سرعت زمین این ماهواره‏ها حدود 30 متر و هزینه آنها بالغ بر 2 میلیون دلار بود . تفاوت بین ماهواره مصنوعی و حقیقی این است که ماهواره مصنوعی میتواند سیگنالها را قبل از برگشت تقویت نماید (تغییر از سیستم ساده به سیستم ارتباط قوی).

 

 بعلت پیچیدگی و بزرگ بودن ایستگاههای زمینی ماهواره‏ها، استفاده از این تکنولوژی در کاربردهای خاص و با هزینه بالا امکان پذیر می‏بود. در اوائل دهة 80 میلادی، با پیشرفت تکنولوژی و استفاده از باندهای KU هزینه آنها کاهش یافت و قطر ایستگاههای زمینی نیز تا حدود 22 متر تقلیل یافت.

بررسی وتحلیل سخت افزار شبکه

فرمت :WORD                                                     تعداد صفحه :199

مقدمه

تعریف شبکه :

در این فصل برای درک دقیق و اساسی پروژه بهتر است تعریفی از شبکه کامپیوتری و نیازهای آن داشته باشیم و در فصول بعدی به جزئیات وارد می‌شویم. در تعریف شبکه کامپیوتری می‌توان گفت: یک شبکه کامپیوتری سیستم ارتباطی برای تبادل داده هاست که چندین کامپیوتر و دستگاه جانبی مثل چاپگرها، سیستم‌های ذخیره سازی انبوه، کتابخانه‌های CD-Rom، فکس و بسیاری از دستگاه‌های دیگر را به هم متصل می‌کند. نرم افزار شبکه به کاربران امکان می‌دهد که از طریق پست الکترونیکی به تبادل اطلاعات بپردازند. به طور گروهی روی پروژه‌ها کار کنند، برنامه‌های کاربردی مجوز دار را به اشتراک گذارند و به منابع مشترک دسترسی پیدا کنند. سرپرستان شبکه همه این منابع را مدیریت کرده و خط مشی‌های امنیتی برای تعیین حقوق دستیابی کاربران و محدویت‌های وی اتخاذ می‌کنند.

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

حال باید بررسی کنیم که اصولاً چرا یک شبکه کامپیوتری ایجاد می‌شود. پاسخ این سؤال این است که ممکن است که واضح به نظر آید، اما بسیاری از دلایل این کار می‌توانند شما را در درک مفهوم شبکه و این که چه کاری می‌تواند برای سازمانتان انجام دهد، یاری کنند. از جمله این دلایل عبارتند از:

اشتراک فایل و برنامه : نسخه‌های شبکه ای بسیاری از بسته‌های نرم افزاری معروف با قیمتی بسیار کمتر از کپی‌های مجوز دار جداگانه در دسترس هستند. برنامه‌ها و داده‌های آن در فایل سرور ذخیره شده و بسیاری از کاربران شبکه به آن دسترسی دارند. وقتی که حقوق برنامه‌ها به ثبت می‌رسند، لازم است تنها به تعداد افرادی که همزمان ار برنامه کاربردی استفاده می‌کنند، مجور تهیه کنید.

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

اشتراک بانکهای اطلاعاتی : شبکه‌ها محیط‌های ایده آلی برای برنامه‌های کاربردی بانکهای اطلاعاتی و اشتراک اطلاعاتی هستند. وقتی که ویژگیهای قفل کردن رکوردها پیاده سازی می‌شود، چندین کاربر می‌توانند همزمان به فایلهای بانک اطلاعاتی دسترسی پیدا کنند. قفل کردن رکوردها تضمین می‌کند که هیچ دو کاربری همزمان یک رکود را تغییر نمی دهندو یاتغییرات انجام شده یک شخص دیگر را بازنویسی نمی کنند.

گسترش اقتصادی کامپیوترهای شخصی : شبکه‌ها روش اقتصادی مناسبی برای گسترش تعداد کامپیوترها در یک سازمان ارائه می‌دهند. کامپیوترهای ارزان یا ایستگاه‌های کاری بدون دیسک را می‌توانید برای کاربرانی نصب کنید که به سرویس دهنده‌های قدرتمند داشته باشند و یا چاپگرهای پیچیده و سایر دستگاه‌های جانبی را به اشتراک می‌گذارند.

قابلیتهای گروه کاری : نرم افزار شبکه ای خاصی به نام گروه افزار برای کار در شبکه‌ها طراحی شده است. این نرم افزار به گروه‌های مختلف کاری، صرف نظر از اینکه به طور مشترک از پست الکترونیکی استفاده می‌کنند و یا روی پروژه‌های خاص خود کار می‌کنند، امکان می‌دهد که با یک سازمان ارتباط داشته باشند. با وجود گروه افزار دیگر نیازی به گروه بندی فیزیکی اشخاص نیست. با وجود نرم افزار به آسانی می‌توانید اشخاصی را که در نواحی جغرافیایی مختلف قرار دارند، مثلاً اشخاصی که در گروه‌های فروش قسمتهای مختلف کشور قرار داشته و از فایلها به طور مشترک استفاده می‌کنند، در یک گروه قرار دهید. ارسال پیامها و نامه‌های الکترونیکی به گروهی از کابران نیز آسانتر است.

مدیریت متمرکز : شبکه‌ها می‌توانند سازمانها را در تقویت مدیریت شبکه یاری کنند. سرویس دهنده هایی که قبلاً در چندین دپارتمان توزیع می‌شدند را اینک می‌توان در یک محل مجتمع نمود. انجام این کار مدیریت روند ارتقای سخت افزار، پشتیبان گیری از نرم افزارها، نگهداشت سیستم و حافظت از سیستم را بسیار آسانتر می‌کند. مدیران و دپارتمان‌ها در این حالت کنترل سیستم خود را از دست نمی دهند. درعوض، نگهداشت توسط دپارتمان مرکزی سیستم اطلاعات انجام شده و در عین حال مدیران دپارتمانها نیز کنترل خود را بر روی سرویس دهنده حفظ می‌کنند و این ویژگی به آنها امکان می‌دهد که سیاستهای دستیابی اشخاص تحت مدیریت خود را و یا اشخاص خارجی (بیرون از دپارتمان) که می‌خواهند وجود دستیابی به سرویس دهنده را دریافت کنند، مدیریت کنند.

امنیت : سیستم عامل شبکه باید روشهای امنیت شبکه را از زمان برقراری ارتباط با سیستم آغاز می‌شود، پیاده سازی کند. فقط افراد مجاز می‌توانند سیستم‌های عامل دست یابند و account را طوری می‌توان مطابق بانیازهاتعریف نمود که دستیابی به زمان یا سیستم‌های خاص محدود شوند.

ارتباطات داخلی: امروزه شبکه‌های مدرن به صورت محیط هایی در نظر گرفته می‌شوند که می‌توان هر نوع کامپیوتر را بدون در نظر گرفتن سیستم عامل به آن متصل و تقریباً به هر کاربر شبکه امکان دسترسی به آن سیستم را داد.

بهبود ساختار شرکت : شبکه‌ها می‌توانند ساختار یک سازمان و نحوه مدیریت آن را تغییر دهند. کاربرانی که برای دپارتمان و مدیر به خصوصی کار می‌کنند، دیگر نیازی به حضور فیزیکی در همان محل ندارند، دفتر کار آنها می‌تواند درمناطقی باشد که تخصص آنها بیشتر لازم است. شبکه آنها را به مدیران دپارتمانها و همکارانشان متصل می‌کند. این آرایش برای پروژه‌های به خصوصی که افراد دپارتمانهای مختلف، مثل تحقیقات، تولید و بازاریابی، نیاز به کار جمعی دارند مفید است.

 

 

متدلوژی (روش شناسی) ایجاد یک سیستم 

برنامه مطلب

فرمت :WORD                                                     تعداد صفحه :53

پشگفتار

با تشکر از خداوند متعال که اینجانب را در به پایان رساندن این پروژه یاری کرد.

در این پروژه برای انجام بخشی از کار ها از برنامة مطلب(Matlab ) استفاده شده است. برنامة مطلب یک برنامة قوی جهت دانشجویان و محققین ریاضی و مهندسی است و بیشتر برای حل مسائل تئوری  ماتریسها و جبر خطی و آنالیز های عددی بوجود آمده است.

 در ابتدای این مقاله به معرفی برخی از دستورات مورد نیاز از برنامة مطلب برای انجام دادن این پروژه پرداخته شده است. همچنین مطالبی در مورد درگاه موازی و نحوة استفادة برنامة مطلب از این درگاه بیان شده است. پس از آن مشخصات عناصر سخت افزاری لازم برای انجام این پروژه آورده شده است و در ادامه طراحی سخت افزاری برای دو فاز:

فاز 1: فاز دریافت از pc و قراردادن در حافظة داده

فاز 2: برداشت از حافظة داده شده و نمایش برروی LCD  پرداخته شده است.

 سپس برنامه های مورد نیاز برای انجام این کار آورده شده است که هم شامل برنامه های Matlab و هم برنامه های اسمبلی 8051  بر ای انجام این پروژه است.

از آنجائیکه این پروژه هم برای نمایش عکس و هم انیمیشین کاربرد دارد در انتهای مقاله برنامهCorel R.A.V.E برای ساخت انیمیشین معرفی شده است.

 در پایان لازم است از استاد راهنما جناب آقای مهندس احمدپور که مرا در انجام این پروژه یاری کردند کمال تقدیر و تشکر را داشته باشم.

پروژه:

نمایش عکس و انیمیشین برروی

GRAPHIC LCD

بسم الله الرحمن الرحیم

چکیده:

هدف از انجام این پروژه تبدیل عکس های رنگی با فرمتهای Jpeg .،bmp.، bmp .، gif .، TIF . به حالت سیاه و سفید(Black & White ) و نمایش این تصویر برروی LCD گرافیکی(64*128 ) این پروژه از سه بخش تشکیل شده است.

 بخش اول: عمل تبدیل عکس های رنگی به سیاه و سفید که این کار توسط برنامة مطلب(Matlab ) انجام می شود.

 بخش دوم: عمل انتقال داده از pc به حافظة داده (RAM یا PROME)

بخش سوم: عمل برداشت از حافظة داده و نمایش برروی LCD گرافیکی

بخش اول:

بر ای اینکه بتوان عکس های رنگی را به سیاه و سفید تبدیل کرد از برنامة مطلب استفاده کردیم. در این برنامه توابعی وجود دارد که براحتی عکس های رنگی را به سیاه و سفید(binary Image ) تبدیل می کند.

 بخش دوم:

در این بخش با استفاده از برنامه مطلب و پورت چاپگر موازی و طراحی سخت افزاری برای انتقال داده بصورت موازی به حافظة داده عمل انتقال داده از pc به حافظة داده انجام گرفت.

برنامه نویسی .net

فرمت :WORD                                                     تعداد صفحه :29

مقدمه ای بر برنامه نویسی شی گراء در دات نت

برنامه نویسی شی گراء، بدون شک مهمترین تحول در دنیای نرم افزار طی سالیان گذشته بوده که بیشترین تاثیر را در پیشبرد نرم افزار بدنبال داشته  و ما امروز در صنعت گسترده نرم افزار از دستاوردهای وسیع  آن بهره مند هستیم . در این مقاله قصد داریم ، به بررسی برنامه نویسی شی گراء پرداخته و از این زاویه نگاهی به دات نت  داشته باشیم .

بمنظور شناخت برنامه نویسی شی گراء ، کافی است به اطراف خود نگاهی داشته باشیم .جارو برقی ، قهوه جوش ، پنکه سقفی  و مجموعه بسیار گسترده ای  از سایر اشیاء را پیرامون زندگی خود مشاهده می نمائیم . اشیاء ما را محاصره و یا در محاصره اشیاء می باشیم . برخی از این اشیاء نظیر دوربین ، مستقل عمل نموه و برخی دیگر نظیر تلفن و ماشین های پاسخگو با سایر اشیاء ارتباط دارند . برخی از اشیاء دارای داده ها ئی می باشند که بین کاربران استفاده می گردد(یک دفترچه تلقن) . برخی از اشیاء شامل اشیاء دیگری می باشند، یک دستگاه بستنی ساز درون فریزر ، نمونه ای در این زمینه است .

بسیاری از اشیاء از لحاظ عملکرد با یکدیگر مشابه ولی از لحاظ اهداف با یکدیگر متفاوت می باشند . مثلا" وان حمام و سینک آشبزخانه هر دو امکان استفاده از آب را فراهم می نمایند ،ولی این کار بندرت اتفاق خواهد افتاد که شما در سینک آشبزخانه دوش گرفته و یا ظروف آشبزخانه خود را در وان حمام بشوئید! بهرحال وان حمام و سینک آشبزخانه موجود در منزل ، احتمالا" از یک لوله آب مشترک در ساختمان استفاده و اینترفیس آنها در موارد متعددی مشترک است ( پیچ آب گرم وسرد ، یک شیر آب ، یک فاضلاب ) .

در صورت تامل در ارتباط با اشیاء فوق ، با سوالات متعددی مواجه خواهیم شد . چه تفاوت هائی بین یک وان حمام و سینک آشبزحانه ، وجود دارد ؟ آیا اختلاف موجود به  محل آنها ، اندازه لگن و یا  گودی  آنها از سطح زمین برمی گردد. شباهت موجود بین اشیاء فوق چیست ؟
در برخی موارد انجام عملات یکسان در ارتباط با یک شی ، رفتارهای متفاوتی را بدنبال خواهد داشت . یک شی  قادر به انجام عملیات متفاوتی با توجه به ماهیت وضعیت بوجود آمده است . مثلا "  زمانیکه دکمه Play  یک دستگاه کنترل کننده DVD و یا VCD فعال می گردد ، دستگاه قوق ، یک فیلم را پخش و ما شاهد نمایش آن بر روی صفحه تلویزیون خواهیم بود. اما اگر یک CD در دستگاه Player باشد ، همزمان با فشردن دکمه Play ، دستگاه Player باعث پخش CD صوتی شده و ما شاهد نواختن موسیقی از بلندگوهای مربوطه خواهیم بود.  همانگونه که مشاهده می گردد در چنین وضعیتی ، فعال نمودن دکمه ها ی مشابه ، عملیات یکسان ولی با  نتایج متفاوت را بدنبال داشته است .

برنامه نویسی CNC

فرمت :WORD                                                     تعداد صفحه :305

فصل اول :

این فصل مقدمه ای برای تکنیکهای برنامه نویسی CNC در کتاب حاضر می باشد.  که در رابطه با اکثرتکنیکهای که قسمتی از یک برنامه را به یک روش سازماندهی شده درآوریم صحبت می کند. به همین منظور با استفاده از یک نقشه ساده مهندسی پروسه های مورد نیاز جهت برنامه نویسی نهایی را بررسی می کنیم. در گام بعدی با نوشتن پله به پله برنامه، مراحل برنامه نویسی را طبقه بندی می کنیم . این کار برای آن است که برنامه نویسCNC با توجه به تعدد مراحل، مراحل را با یکدیگر اشتباه نکند . برای مثال تغییری در انتخاب و نصب یا  sctup ابزار در عرض یا عمق برش می تواند تأثیر بگذارد . به این نکته تا پایان فصل توجه کنید .

برنامه نویسی نقشه :‌

نقشه زیر در این فصل مورد ارزیابی ه قرار می گیرد، این نقشه شامل همه جزئیات مورد نیاز ،‌ محاسبات و توضیحات اختصاصی هر مرحله برای نوشتن برنامه CNC می باشد . نقشه شامل تعدادی از عملیاتهای ماشینکاری مرسوم مانند روتراشی سوراخکاری ،‌مسیر زنی[1] ،‌گود تراشی دایره ای[2] و یک شیار فرزکاری شده می باشد . نقشه و طرح عمدا ساده در نظر گرفته شده است .

ارزیابی نقشه :‌

اولین کاری که یک برنامه نویس CNC بایستی همیشه  بایستی قبل از نوشتن برنامه به یاد داشته باشد این است  که نقشه را به منظور گرفتن یک ایده کلی درباره قطعه مورد ارزیابی قرار دهد . که هر ارزیابی شامل چندین مشاهده خلاصه شده زیر می تواند باشد :‌

1) واحدها و مقیاس نقشه ،‌ 2) نوع اندازه گذاری ،‌ 3)  شکل ،‌ نوع ،‌ اندازه و جنس مواد ،4) ‌صافی سطح مورد نیاز ،‌5)  اطلاعات جدول ،6) ‌ تجدید نظر نقشه ،‌ 7) هزینه مواد اگر در دسترس می باشد ، اشتباهات یا از قلم افتادگی نقشه در نقشه مورد تحلیل واحدهای اندازه گیری مستقیما مشخص نشده اند ،‌اما همانطور که  از نقشه مشخص است این اندازهها در واحد متریک می باشند . مقیاس همیشه در نقشه ذکر نمی شود این به این دلیل است که انواع کپی های مختلفی که از این نقشه گرفته می شود ممکن است با نقشه اصلی مطابقت نداشته باشد . نقشه مورد نظر یک نقشه با مقیاس یک به یک ( 1:1) می باشد و تمامی اندازه ها نیز لحاظ شده اند ابعاد نقشه همیشه برای برنامه نویس CNC مهم می باشد حداقل به دو دلیل :‌

 یک :‌ به منظور انتخاب و بنای یک شکل خام برای قطعه و

دو : جهت ارزیابی مبناء صفر قطعه اندازههای نقشه از گوشه سمت چپ و پائین قطعه اندازه گذاری شده اند . در این مورد این قسمت برای صفر قطعه بسیار مناسب است .  این را به خاطر داشته باشید که همیشه این دلیلی برای مبنا دهی نمی باشد. تلرانسها بسیار به اندازه ها وابسته اند . این نقشه شامل همه تلرانسها  نمی باشد بنابراین برنامه نویس (و اپراتور )‌باید از استانداردهای کلی (شرکتی )‌استفاده نماید .همه نقشه ها جنس  قطعه را ذکر نمی کنند ، برنامه نویس باید بتوانند قطعه را از نظر  شکل ،‌وضع ،‌نوع و اندازه بلوک خام مورد ارزیابی قرار دهد.  جنس قطعه و اندازه آن در نقشه مشخص شده است  . جنس قطعه از  آلومینیوم 6061  است که امکان ماشین کاری آسان و امکان استفاده از سرعتهای برشی و پیشروی بالا جهت ماشین کاری را فراهم می آورد.  می دهد . اندازه قطعه طبق نقشه

90* 65*13 (l*w*d) میلیمتر است . که این موارد از اولین پارامترهای مستقیم انتخاب ابزار و عملیات ماشین کاری محسوب می شوند . طول و عرض قطعه خام به اندازه طول و عرض قطعه نهایی می باشد اما در مورد برای ضخامت قطعه خام اینطور نیست . البته یک تفاوت یک میلیمتری را  می توان در طول برنامه نویسی یا هنگام Setup ابزاربه ضخامت قطعه اعمال کرد نظر گرفت .

صافی سطح برای همه قسمتهای مشخص شده در نقشه می تواند 3.2 در نظر گرفته شود . همه نقشه ها صافی سطح همه قسمتها را مشخص نمی کنند .

مقدار 3.2 خطای مجاز صافی سطح بر حسب mm است . در عمل صافی سطح 3.2 با تیغه فرزهای استاندارد در سرعتهای دورانی بالای محور و پیشروی مورد نیاز با فرض Setup  صحیح و کیفیت مناسب ابزار ایجاد می شود.

نقشه های کوچک و ساده به ندرت دارای جدول نقشه می باشند . جدول نقشه معمولا یک مساحت مستطیلی کوچکی درگوشه نقشه است که شامل اطلاعاتی نظیر اسم نقشه ،‌ شماره قطعه  ،‌نام طراح ،‌ داده ها ،‌ تجدید نظرات ،‌جنس و  می باشد .

تجدید نظرها یا بازبینی ها، تغییراتی از نقشه به نسخه مبنا را اعمال می کنند و برای برنامه نویس CNC مهم می باشند، همیشه از آخرین نقشه بازبینی شده جهت تهیه برنامه استفاده کنید  و یک کپی از آن داشته باشید. هزینه مواد  لیست مخصوصی است که شامل مولفه های  مورد نیاز جهت تولید قطعه می باشد. این مولفه ها  شامل، هزینه قطعه خام ،‌ اقلام خریداری شده و سایر قطعات مختلف مورد نیاز برای مونتاژ قطعه  می باشند . هزینه که مواد  نقشه های  بزرگ و پیچیده از نقشه ساده وکوچک متعاقبا بیشتر می باشد. یک قسمت مهمی از نقشه،  ارزیابی و جستجوی خطاها،‌ از قلم افتادگی ها ،‌ اشتباهات و سایر مغایرتها می باشد . بهترین کار ابتدا به بررسی اندازه های بحرانی و ضروری که از قلم افتاده اند پرداخته شود برنامه نویس بایستی به بررسی اندازههایی  بپردازد که مغایر با اندازههای  دیگرمی باشند .

جنس و قطعه خام:‌

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

پوسته :frake

حالت  قطعه به  کیفیت برو سطح قطعه خام،‌ پوسته ها، عملیات‌ پیش ماشین کاری وسختی آن برمی گردد . برای مثال این مهم است که مواد برای نقشه مورد مثال اندازه 90*65 (l×w )باید دقیقا رعایت شود  و گوشه ها گونیا باشند این اندازه ها ، اندازه های نهایی هستند که نیاز  به ماشین کاری ندارند . اضافه تراشی کوچکی برای سطح بالای قطعه خام که طبق اندازه ضخامت قطعه نهایی می خواهد  براده برداری شود باید در نظر گرفت.

ثابت کردن قطعه :

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

نقطه ارجاع قطعه:

این نقطه به  نامهای صفر قطعه و نقطه مرجع نیز می تواند باشد . قبل از  انتخاب مسیر ابزار همچنین طبق یک قانون کلی جهت در نظر گرفتن نقطه صفر قطعه کار روی گیره باید جایی در نظر گرفته شود که قطعه  از فکهای ثابت موقعیت دهی شود و از  ویک استپر (برای تکرار عملیات) نیز برای گذاشت وبرداشت قطعه بعدی برای جلوگیری از برهم خوردن صفر قطعه قبلی با بعدی استفاده می شود.

موقعیت دهی قطعه :‌

 این که چگونه قطعه خامی که درگیره موقعیت دهی شده است در روش ماشین کاری تأثیر می گذارد . به نقشه نگاه کنید قطعه  می تواند هم به صورت عمودی و هم افقی موقعیت دهی شود به جهت اپراتورCNC  توجه کنید . مزیت  موقعیت دهی افقی این است که قطعه با نقشه مطابقت  داده می شود و دیگر اینکه گوشه سمت چپ و پائین قطعه در تقاطعی از فک ثابت گیره و استپر بنا خواهد شد. تنها مزیت موقعیت دهی  عمودی این است که عرض  قسمت در گیر پاکیزه بجای 65 میلیمتر در حالت افقی به 90 میلیمتر در حالت عمودی تبدیل می شود   و این تفاوت باعث جلوگیری هر گونه انحراف یا خمیدگی متأثر از فشار فکها در قطعه  می شود . برای این کار موقعیت دهی افقی انتخاب شده که تفاوت  25  میلیمتر در عمل مشکلی  را به وجود نمی آورد .

 انتخاب صفر قطعه :‌

با توجه به ملاحظات قبلی،  انتخاب صفر قطعه برای محورهای xوy  مشکلی ایجاد نمی کند . گوشه سمت چپ و پائین قطعه صفر قطعه خواهد بود . که این برای افست  کاری  G54  نیز استفاده می شود .

 


[1] contouriny

[2] Circular pocket

برنامه نویسی با پاسکال

فرمت :WORD                                                     تعداد صفحه :28

فهرست :

فصل 1  ( مفاهیم مقدماتی ) :

1- مقدمه     ……………………………………………………………………………… 1

2-تاریخچه زبان پاسکال …………………………………………………………….2

3- نمونه ای از برنامه های ساده پاسکال …………………………………...9

فصل 2 ( داده های ورودی  و اطلاعات خروجی ) :

1- دستور     READ  و  READLN  ………………………12

2- دستور WRITE و WRITELN ……………………16

فصل 3 ( دستورهای کنترلی ) :

  1. دستور WHILE-DO ……………………………….19
  2. دستور FOR ……………………………………20
  3. دستور  IF  …………………………………….22

فصل 4 ( تابع function و proceduer ) :…………25

1-معرفی توابع ………………………………….25

2- معرفی برنامه های فرعی از نوع proceduer  ………..28

  1. چند مثال  …………………………………...28

 

 

 

 

 

 

 

 

 

 

مقدمه :

تمام کامپیوترهای رقمی ، بدون توجه به اندازه انها ، اساسا دستگاههای الکترونیکی ای هستند که برای انتقال ، ذخیره وپردازش اطلاعات ( یعنی داده ها) مورد استفاده قرار می گیرند . کامپیوتر ها قادرند انواع مختلفی از داده ها را پردازش کنند . از این میان می توان داده های عددی ، کا راکتری (نام ، ادرس ) داده های گرافیکی ( نمودار ،رسم ، عکس ) وصوت ( موسیقی ، سخنرانی ) را نام برد.

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

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

می خواهیم برنامه ای بنویسیم که مساحت یک دایره را با استفاده از دستور a=πr² محاسبه کند . داده ورودی شعاع دایره r است که یک مقدار عددی است . در برنامه به مراحل زیر نیاز داریم :

  1. مقدار عددی شعاع دیره را بخوانید .
  2. با استفاده از دستور بالا،  مقدار مساحت را محاسبه کنید . این مقدار همراه با داده ورودی ، در حافظه کامپیوتر ذخیره می شود .
  3. مقادیر شعاع ومساحت متناظر با ان را چاپ کن .
  4. پایان .

پایان مقدمه

تاریخچه زبان پاسکال :

انواع زبانها ی برنامه نویسی :

زبانهای مختلف ومتعددی وجود دارد که به کمک انها می توان برای کامپیوتر برنامه نوشت . ابتدایی ترین این زبان , زبان ماشین است که از مجموعه ای از دستورهای رمزی با 0 و11 با جزئیات کامل برای کنترل مدارهای داخل کامپیوتر تشکیل شده است .معمولا یک برنامه کامپیوتری به یک زبان سطح بالا نوشته می شود که مجموعه دستورهای ان زبان با زبان طبیعی و فرایند اندیشه انسان سازگار است . اکثر این زبانها ، مانند زبان پاسکال ، زبان همه منظوره هستند . از دیگر  زبان های همه منظوره می توان زبان C , C+ +و فورترن را نام برد .

علاوه بر این زبان های یک منظوره متعددی وجود دارد که برای کاربرد های خاص طراحی شده اند مانند زبانهای CSMP و SIMAN که معروفتر از بقیه هستند . زبان های یک منظوره اخیر مخصوص شبیه ساز هستند . زبان یک منظوره LIST زبان پردازش لیست است که از ان به طور گسترده ای برای برنامه های کاربردی هوش مصنوعی استفاده می شود .

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

از سال 1983 ، شرکت borland که یک شرکت کوچک نرم افزاری است ، کامپایلر پاسکال ارزان قیمتی به نام توربو پاسکال tuorbo pascal  برای استفاده روی کامپیوتر های شخصی به بازار عرضه کرده است . توربو پاشکال ، به خاطر قیمت پائین و استفاده ساده از ان موقیت فراوانی کسب کرده است این کامپایلر همراه با توسعه و تکامل زبان پاسکال ، به یک محیط برنا مه نویسی کامل تبدیل شده است که حاوی یک ویرایشگر و یک اشکال زدای سؤال و جوابی است.

ساختار یک برنامه پاسکال :

مراحل برنامه نوسی :

  1. برسی صورت مساله و اجزای مربوطه
  2. شناسایی پارامتر های ورودی و انتخاب نام یا شاخص مناسب برای هر کدام
  3. شناسایی پارامتر های خروجی و انتخاب شاخص مناسب برای هر کدام
  4. طراحی دستورالعمل با الگوریتم مناسب برای حل مساله با توجه به داده های ورودی و اطلاعات مورد نیاز خروجی . نوشتن الگوریتم به زبان فلوچارت با استفاده از علائم استاندارد مورد نیاز .
  5. ترجمه الگوریتم طراحی شده به خطوط برنامه های زبان مورد نظر .
  6. تایپ متن برنامه در محیط نرم افزار مورد نظر .
  7. کامپایل کردن و ترجمه برنامه به زبان ماشین ( این کار توسط ابزار برنامه نویسی انجام می شود .
  8. اجرای برنامه و رفع اشکالات جواب خروجی ( این اشکالات  ناشی از الگوریتم اشتباه می باشد .

مراحل ساختن فایلهایی که در کامپیوتر برای تولید یک برنامه مورد نیاز است :

Exe /code

Object

code

Source

code

source code متن برنامه نوشته شده می باشد که از الگوریتم برنامه ترجمه شده است .

برنامه نویسی به زبان C++

فرمت :WORD                                                     تعداد صفحه :58

نکاتی درمورد زبان  c++

 

  1. بعد از هر دستور سیمی کالن وجود دارد ولی قبل از else  وجود ندارد.(در زبان C قبل ازelse   سیمی کالن هست.) 
  2. در زبان  برخلاف پاسکال قبل و بعد از هر رشته دو کوتیشن قرار می گیرد.
  3. در زبان  حروف بزرگ و کوچک با هم فرق دارند.
  4. دستور انتساب در    )c  (است به جای =: در پاسکال و می تواند درتعریف متغیر استفاده شود.
  5. زبان  فاقد متغیر نوع Boolean ,String  می باشد.در زمان استفاده صفر به معنای False   وباقی اعداد برای True  به کاربرده می شود.
  6. در C++,C  از علامت های (// و/* و*/ ) برای تو ضیحات استفاده می شود.
  7. می توان متغیر مورد  نیاز هر دستوررا قبل از آن دستور تعریف کرد.
  8. دستور  include  باید حتما در اولین خط برنامه باشد.
  9. C  متغیر ها را مقدار دهی اولیه نمی کند.

عملگر ها:

کاراکتر های خاصی  که برای انجام عملیات مختلف مورد استفاده قرار می گیرند.

1.عملگر های ریاضی

+ ، - ، * ، / ، % ، = ، -- ، ++

2. عملگر های منطقی

!= ، == ، => ، =< ، > ، <  ، && ، || ، !

3. عملگر های بیتی

^ ، & ، |

** چنانچه اشتباهی در کاربرد عملگر ها  صورت گیرد به طور مثال اگر به جای (==) از (=) استفاده شود . هیچ خطایی  اعلام نمی شود تنها جواب مورد نظر به دست نمی آید.

 

 

دستور cout

برای چاپ مقداری در خروجی مورد استفاده قرار می گیرد.

 

 

برنامه 1:

#include <iostream.h>

  •  
  •  

cout <<”***”;

  •  

برنامه 2:

#include <iostream.h>

  •  
  •  

cout <<”***”<<”**”;

}

 

 

برنامه3:

#include <iostream.h>

  •  
  •  

cout <<”***”<<”**”<<endl<<”*”;

}

برنامه4:

#include <iostream.h>

  •  
  •  

cout <<”*”<<endl<<”**”<<endl<<”***”;

}

خروجی

*

**

***

برنامه5:

#include <iostream.h>

  •  
  •  

cout <<”12+3=”<<12+3;

}

خروجی

12+3=15

 

دستور cin

مقداری را از ورودی گرفته و به یک متغیر خاص نسبت می دهد.

 

نحوه تعریف متغیر

 ;اسم متغیر  نوع متغیر  

برنامه 6:

#include <iostream.h>

  •  
  •  

Int  x,y;

  •  

Cin>>y;

//cin >>x>>y;

 

cout <<x+y;

}

برنامه7:

 

#include <iostream.h>

  •  
  •  

Int  x,y;

  •  

Cin>>y;

//cin >>x>>y;

cout <<”x+y”<<”=”<<x+y;