slide1
Download
Skip this Video
Download Presentation
مبحث اول: مقدمه ای بر درس و نحوة ارائه آن

Loading in 2 Seconds...

play fullscreen
1 / 27

مبحث اول: مقدمه ای بر درس و نحوة ارائه آن - PowerPoint PPT Presentation


  • 168 Views
  • Uploaded on

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

loader
I am the owner, or an agent authorized to act on behalf of the owner, of the copyrighted work described.
capcha
Download Presentation

PowerPoint Slideshow about ' مبحث اول: مقدمه ای بر درس و نحوة ارائه آن' - korbin


An Image/Link below is provided (as is) to download presentation

Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author.While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server.


- - - - - - - - - - - - - - - - - - - - - - - - - - E N D - - - - - - - - - - - - - - - - - - - - - - - - - -
Presentation Transcript
slide2
مقدمه ای بر درس و نحوه ارائه آنفهرست مطالب
  • سازمان کامپیوتر
  • زبان های برنامه نویسی
  • روش ایجاد برنامه ساخت یافته
  • مشخصات دوره
slide3
سازمان کامپیوترتعریف کامپیوتر

سخت افزاری

  • متشکل از قطعات الکترونیکی

برای انجام محاسبات به صورت

  • پذیرفتن و ذخیره سازی داده ها و دستورات
  • اجرای سریع و دقیق دستورات بر روی داده ها
  • امکان تحویل نتایج و اطلاعات به انسان
slide4
سازمانکامپیوتربخش های مختلف کامپیوتر
  • واحد ورودی (Input unit)
  • واحد خروجی (Output unit)
  • واحد حافظه (Memory unit)
  • واحد محاسبه و منطق (ALU)
  • واحد کنترل (Control unit)
slide5
سازمان کامپیوتراجزای سخت افزاری کامپیوترها
  • CPU(واحد پردازش مرکزی) (مغز کامپیوتر)
    • ALU، کنترل درخواستهای ورودی/ خروجی
  • Main Memory
    • ذخیرة داده های مورد نیاز جهت پردازش
    • انواع آن: RAM و ROM
  • Secondary Memory
    • ذخیره سازی داده ها و برنامه ها
    • انواع آن: دیسک، دیسک سخت، CD
  • Input Devices
  • Output Devices
  • Network Connction
slide6
سازمانکامپیوترمقایسه انسان و کامپیوتر
  • دقت و صحت کار و قابلیت اعتماد:
    • عملکرد یکسان در دفعات اجرای متفاوت و صحت و دقت عملکرد در صورت صحت داده ها و دستورالعملهای ورودی در کامپیوتر
    • انسان در دفعات و شرایط مختلف (جسمی و روحی) ممکن است عملکردهای متفاوتی داشته باشد.
  • نحوة ذخیره سازی اطلاعات و سرعت دستیابی به آنها
    • دریافت اطلاعات از طریق حواس در انسان و از طریق دستگاه های ورودی در کامپیوتر
    • قدرت ذخیره سازی بالای اطلاعات در کامپیوتر
    • پردازش اطلاعات
      • در کامپیوتر: انجام میلیون ها دستورالعمل در کسری از ثانیه
      • در انسان: قدرت شناسایی تصویر در کسری از ثانیه (در کامپیوتر چندین سال طول می کشد)
slide7
سازمانکامپیوترداده های کامپیوتر
  • داده های مورد استفاده انسان
    • ارقام 4، 5، 9
    • حروف A، B، Z
    • علائم ! ، ^ ، %
  • کامپیوتر
    • استفاده از نمایش دودویی و باینری (تبدیل تمام داده ها به 0 و 1)
    • یک بیت: اطلاعات صفر یا یک
    • یک بایت: مجموعه ای از 8 بیت
slide8
سازمان کامپیوترآشنایی با نرم افزار کامپیوتر
  • نرم افزار های کاربردی
    • برنامه هایی که برای موضوعات و کاربردهای خاص کاربر نوشته شده اند.
    • باعث فراگیر شدن استفاده از سیستم می شوند.
    • برخی نرم افزارهای کاربردی عمومی:
    • Word Processors
    • Presentation Managers
    • Drawing Programs
slide9
سازمان کامپیوترآشنایی با نرم افزار کامپیوتر -2
  • نرم افزارهای سیستمی
    • برنامه هایی که اجرای سایر برنامه ها را پشتیبانی می کنند.
    • انواع نرم افزارهای سیستم:
      • سیستم های راه انداز (Operating Systems)
        • مرتب کردن سیستم
        • توانایی کنترل ورودی / خروجی با تعداد زیادی از دستگاه ها
        • مثال: MSDOS، Windows، Unix
      • سیستم های مفسر (Translation Systems)
slide10
زبان های برنامه نویسیتاریخچه زبان های برنامه نویسی
    • نسل اول: (زبان ماشین) (اواخر دهه 1940)
    • استفاده از ارقام صفر و یک برای ایجاد کد دستورالعمل ها
  • نسل دوم: (زبان اسمبلی) (اوایل دهه 1950)
    • استفاده از حروف برای کدگذاری کدهای ماشین (زبان نیمانیک)
  • نسل سوم: (زبان های سطح بالا) (اواخر دهه 1950)
    • زبان های رویه گرا
    • اولین زبان فرترن
  • نسل چهارم: (زبان های فوق بالا)(اواسط دهه 1970)
    • شبیه زبان های طبیعی
    • غیر رویه گرا؛ عدم تشریح چگونگی عملیات
slide11
زبان های برنامه نویسیدسته بندی سطح زبان های برنامه نویسی

سطح زبان:

  • سطح پایین: (Macro-Assembler, Assembler)
    • دسترسی مستقیم به حافظه (زبان ماشین)
    • کار کردن با مفاهیم بیت، بایت و آدرس (با استفاده از مفهوم باینری)
  • 0010 0000 0000 0100
  • 1000 0000 0000 0101
  • سرعت اجرای بسیار بالا
  • سطح میانی: (Java, Forth, C, C++)
  • سطح بالا: (Pascal, Ada, Cobol, Basic)
    • قابلیت خوانایی بالا (دستورالعمل ها به زبان محاوره ای نزدیک است)
  • cost = price + tax;
syntax semantic
زبان های برنامه نویسینحوه و معنی (Syntax & Semantic)
  • نحوه:
    • ساختار دستوری مربوط به جملات زبان نحوه نوشتن آن ها را مشخص می کند. (ظاهر زبان را Syntax گویند)
  • معنی:
    • مفهومی که به آن ساختار منتسب می شود درک ما را از آن زبان و نحوه عملکرد زبان را نشان می دهد:
    • مثال:
    • Pascal

Var A: array [0..9] of integer;

    • C

int A[10];

معنی تقریباً یکسان بازای دو نحوه نگارش متفاوت

slide13
زبان های برنامه نویسیاجرای برنامه
  • کامپایلر
    • تغییر متن یک برنامه در زبانA بدون تغییر در معنی و مفهوم آن به زبان B
    • تبدیل زبان سطح بالا به زبان سطح پایین
  • مفسر
    • برنامه ای برای دریافت یک برنامه با زبان منبع اجرای آن
slide14
زبان های برنامه نویسیدسته بندی ساختار زبان های برنامه نویسی
  • ساختار زبان:
    • زبان ساخت یافته
      • Pascal, Ada, C, Java
      • قابلیت خوانایی و درک بالا
      • ساختار منظم متشکل از توابع
      • توانایی استفاده از حلقه های تکرار
      • زبانهای شیء گرا (Object Oriented) مانند C++
    • زبان غیر ساخت یافته
      • (Fortran, Cobol)
slide15
زبان های برنامه نویسیدلایل پیدایش برنامه نویسی ساخت یافته
  • مشکلات برنامه های غیرساخت یافته
    • تأخیر در زمان بندی تولید نرم افزار
    • هزینه های بالای تولید
    • عدم وجود قابلیت اطمینان بالا
  • ویژگی های برنامة ساخت یافته
    • روش منظم برای نوشتن برنامه
      • تصور برنامه به صورت مجموعه ای از فعالیت ها بر روی داده ها
      • هر مسأله به مجموعه ای از مسائل کوچکتر تجزیه می شود.
      • تجزیه تا رسیدن به برنامه های ساده قابل درک ادامه می یابد.
    • خوانایی بالای برنامه
    • تست و اصلاح ساده
slide16
زبان های برنامه نویسیدلایل پیدایش برنامه نویسی شیء گرا
  • امکان استفاده از قطعات نرم افزاری در برنامه های مختلف
    • افزایش سرعت تولید نرم افزار
    • افزایش قابلیت خوانایی برنامه
    • سادگی تست و اصلاح برنامه ها

هدف مدلسازی اشیای دنیای واقعی

    • اشیاء (جاندار، بی جان)
    • تمام اشیاء از طریق مشاهده و بررسی صفات و رفتارهای آنها قابل شناسایی هستند.
slide17
زبان های برنامه نویسیدلایل پیدایش برنامه نویسی شیء گرا - 2

اشیاء ساخته شده در برنامه به عنوان بخشی از برنامه ساخت یافته اند

باید با

برنامه نویسی ساخت یافته

به خوبی آشنا شد

slide18
روش ايجاد برنامه ساخت يافتهموارد مهم در برنامه نویسی
  • برنامه نویسی نوعی حل مسأله است
    • تعیین خواسته های مسأله
    • تحلیل مسأله
    • طراحی الگوریتم حل مسأله
    • پیاده سازی الگوریتم
    • تست و کنترل برنامه
    • نگهداری و نوسازی برنامه
slide19
روش ايجاد برنامه ساخت يافتهاجزای حل مسأله
  • تعیین خواسته های مسأله
    • شناخت مسأله به وضوح و بدون ابهام
    • درک موارد لازم برای حل مسأله
    • نادیده گرفتن جنبه های بی اهمیت و پرداختن به مسائل اصلی
    • در صورت لزوم مذاکره با طراح مسأله
slide20
روش ايجاد برنامه ساخت يافتهاجزای حل مسأله - 2
  • تحلیل مسأله
    • تعیین ورودی ها و خروجی ها
      • ورودی: داده هایی که مسأله بر روی آنها کار می کند.
      • خروجی: نتایج مورد انتظار
    • تعیین نیازها و محدودیت های مسأله
    • تعیین فرمت اطلاعات خروجی و تعیین ارتباط ورودی و خروجی
slide21
روش ايجاد برنامه ساخت يافتهاجزای حل مسأله - 3
  • طراحی الگوریتم
    • مشکل ترین بخش حل مسأله
    • نوشتن بخشها به صورت قدم به قدم برای حل مسأله (الگوریتم)
    • بررسی توانایی و صحت الگوریتم در حل مسأله
    • سعی در طراحی «بالا به پایین» در حل مسأله
    • مراحل کلی عمومی الگوریتم ها:
      • خواندن داده ها
      • انجام محاسبات
      • چاپ نتایج
    • حل هر مرحله به صورت جداگانه (بهینه سازی الگوریتم)
slide22
روش ايجاد برنامه ساخت يافتهاجزای حل مسأله – 4
  • پیاده سازی الگوریتم
    • تبدیل الگوریتم به برنامه
    • تبدیل هر مرحله متناسب با برنامه به یک یا چند دستور زبان
  • تست و کنترل برنامه
    • تعیین توانایی برنامه در اجرای خواستة مورد نظر
    • اعمال ورودی های مختلف و بررسی حالات ممکن در مسأله
  • نگهداری و نوسازی برنامه
    • اصلاح برنامه جهت حذف خطاهای قبلی
    • نوسازی آن جهت پاسخگویی به نیازهای فعلی
slide23
مشخصات دورهمشخصات دوره
  • تعداد واحد: 2 واحد نظری
  • نوع درس: پایه
  • نحوة ارائه: حضوری تعداد جلسات: 16جلسه (معادل 32ساعت)
  • پیشنیاز درس:
    • درس پیشنیاز از لحاظ سر فصل: اصول و مبانی رایانه و شبکه
    • دانشجو باید به امکانات ذیل دسترسی آسان داشته باشد:
      • کامپیوتر و اینترنت
      • C++ Compiler
slide24
مشخصات دورهسرفصل مطالب درس
  • الگوریتم نویسی
  • آشنایی با مبانی زبان ++C
  • آشنایی با برنامه نویسی در MatLab
  • ساختارهای کنترلی
  • توابع و كلاس های حافظه
  • آرایه ها و رشته ها
  • اشاره گرها
slide25
مشخصات دورهمراجع
  • مبانی کامپیوتر و الگوریتم ها ، عین اله جعفرنژاد قمی،

انتشارات علوم رایانه.

  • برنامه نویسی به زبان++C (مرجع کامل)، عین اله جعفرنژاد قمی، انتشارات علوم رایانه.
  • سایر مراجعدپارتمان مرBMEcenter.ir
  • انواع کتب برنامه نویسی به زبان ++C.
  • The C++ Programming Language, Third Edition, BjarneStroustrup, Murray Hill, New Jersey, 1997.
  • C++ How to Program- Fourth Edition,  by H. M. Deitel, P. J. Deitel, Prentice Hall, New Jersey, 2003.

مراجع اصلی

slide26
مشخصات دورهنحوة ارتباط
  • مراجعه حضوري:
    • فقط در ساعاتپاسخگویی
  • استفاده از پست الکترونيکي:
  • تلفن تماس:

Office: 6613000-3 (Int. 346)

slide27
مشخصات دورهنحوة ارزیابی

بخش اصلی:

  • کوئیزهای کلاسی: (2 نمره)
  • تمرینات کامپیوتری: (3 نمره)
  • آزمون میان ترم: (6 نمره)
  • آزمون پایان ترم: (9 نمره)

بخش فرعی: (در صورت کسب حداقل %50 از مجموع نمرات بخش اصلی)

    • حضور منظم (حداکثر 0/5 نمره)
    • حل تمرین (حداکثر 1/5 نمره)

مراجعه به سایت درس:

http://azarnoosh.mshdiau.ac.ir/AC/AC.htm

ad