Download as ppsx, pdf, or txt
Download as ppsx, pdf, or txt
You are on page 1of 16

‫مبانی برنامه نویسی‬

‫آشنایی با کامپیوتر‬

‫سجاد ابراهیمی‬
‫کامپیوتر چیست؟‬

‫اولین و ساده ترین تعریفی که از کامپیوتر میتوان کرد این است که “کامپیوتر ماشینی است که قابلیت‬ ‫•‬
‫انجام برخی محاسبات ریاضی ومنطقی را دارد”‪.‬‬
‫پس کامپیوتر یک وسیله محاسبه (پردازش) یا همان محاسبه گر است‪ .‬پس هر وسیله یا ابزاری را که‬ ‫•‬
‫قادر به انجام محاسبه ای باشد میتوان یک کامپیوتر در نظر گرفت از انگشتان دست یک کودک گرفته تا‬
‫چرتکه و پیچیده ترین دستگاه های الکترونیکی محاسباتی و همچنین مغز انسان‪.‬‬
‫انواع کامپیوتر‬

‫نسل اول(المپ های خال)‪ :‬در ساخت این کامپیوتر ها از المپ خال استفاده میشد و از سال ‪ ۱۹۴۴‬تا‬
‫‪ ۱۹۵۵‬مورد استفاده قرار میگرفتند‪ .‬برای مثال کامپیوتر انیاک با ‪ ۳۰‬تن وزن ‪ ۱۷۰‬متر مربع مساحت و‬
‫‪ ۱۸۰۰‬المپ یکی از معروف ترین کامپیوتر این نسل است‪ .‬دالیل اصلی کنار گذاشته شدن این نسل از‬
‫کامپوتر ها عبارت اند از ‪:‬‬
‫• کامپیوترهایی بسیار بزرگ بوده و فضای زیادی اشغال میکردند‬
‫• به دلیل استفاده از المپ های خال نیروی برق زیادی مصرف میکردند‬
‫• به دلیل گرمای بیش از حد المپ های خال به وسایل خنک کننده ی قوی نیاز داشتند‬
‫• احتمال سوختن المپ های خال به دلیل دمای زیادشان وجود داشت‬
‫• قیمت المپ های خال باال بود‬
‫نسل دوم(ترانزیستور ها) ‪ :‬اختراع ترانزیستور ها در سال ‪ ۱۹۵۰‬تحول عظیمی در صنایع الکترونیکی‬ ‫•‬
‫بود و در ساخت کامپیوتر ها نیز از ترانزیستور ها به جای المپ خال استفاده شد‪.‬این نسل از کامپیوتر‬
‫ها دارای حجمی کمتر ‪ ,‬مصرف انرژی پایین تر و سرعتی باالتر نسبت به نسل المپ های خال‬
‫بودند‪.‬در این کامپیوتر ها برای اولین بار از حلقه های مغناطیسی به عنوان حافظه اصلی استفاده شده‪.‬این‬
‫کامپیوتر ها در سال های ‪ ۱۳۳۰‬تا ‪ ۱۳۴۰‬شمسی مورد استفاده قرار گرفت‪.‬‬
‫نسل سوم (مدارات مجتمع)‪ :‬مدارهای مجتمع (‪ )Integrated Circuit‬شامل بیش از صد عنصر منطقی‬ ‫•‬
‫هستند که هر عنصر منطقی خود شامل چندین عنصر الکترونیکی مانند دیود و ترانزیستور است که به‬
‫روش خاصی روی صفحاتی از جنس سیلیکون در چند سانتی متر مربع کنار یکدیگر چیده شده‬
‫اند‪.‬استفاده از مدارهای مجتمع در ساخت کامپیوتر ها باعث افزایش سرعت و کاهش حجم آن ها‬
‫گردید‪.‬اولین کامپیوتر این نسل را شرکت‪ IBM‬در سال ‪ ۱۹۶۰‬با نام ‪ IBM360‬به بازار فرستاد که تا‬
‫سال ‪ ۱۹۷۰‬نیز در مراکز تجاری مورد استفاده قرار میگرفت‪.‬‬
‫نسل‪ ‬چهارم(ریزپردازنده ها ‪ :)Microprocessors‬در سال ‪ ۱۹۷۰‬با استفاده از فناوری ‪ VLSI‬و‬ ‫•‬
‫متراکم تر کردن مدارات مجتمع اقدام به تهیه ی ریز پردازنده ها کردند و کامپیوتر های خانگی به بازار‬
‫عرضه شد‪.‬‬

‫نسل پنجم (کامپیوتر های هوشمند) ‪ :‬ایده استفاده از منطق فازی برای طراحی و تولید کامپیوتر هایی با‬ ‫•‬
‫قابلیت هایی همپون استدالل و استنباط توسط بسیاری ازمحققین در حال انجام است‪ .‬این ایده در سال‬
‫‪ ۱۹۸۰‬مطرح گردید ولی تا کنون در عمل موفق به ساخت چنین کامپیوتر هایی نشده ایم‪.‬‬

‫نسل ششم(کامپیوتر های انسان نما) ‪ :‬هدف این دسته از کامپیوتر ها شبیه سازی فعالیت های مغز انسلن‬ ‫•‬
‫است و دستیابی به قابلیت های ادراکی و رفتاری آن است‪.‬‬
‫انواع کامپیوتر از نظر قدرت پردازشی‬

‫‪ : SUPER‬‬ ‫•‬


‫• قدرت پردازشی بسیار باال‬
‫• کاربردهای نظامی‪ ،‬هواشناسی و محاسبات حجیم یا پیچیده‬

‫‪: Main‬‬ ‫•‬


‫• کاربرد به عنوان ایستگاه های کاری در وزارتخانه ها و مراکز بزرگ‬

‫‪: Mini‬‬ ‫•‬


‫• کاربرد در بانک ها و موسسات کوچک‬

‫‪: Micro‬‬ ‫•‬


‫• کامپیوتر های خانگی‪ ،‬لپ تاپ ها‬
‫اجزای پردازش در کامپیوتر‬
‫• واحد ورودی‪ :‬وظیفه این بخش دریافت داده ها از محیط خارج و انتقال آنها به کامپیوتر می باشد‪.‬‬
‫‪ ...‬صفحه کلید‪ ،‬ماوس‪ ،‬صفحه لمسی‪ ،‬قلم نوری‪ ،‬اسکنر و‬
‫• واحد خروجی‪ :‬وظیفه این بخش انتقال اطالعات از کامپیوتر به محیط خارج می باشد‪.‬‬
‫‪ ...‬پرینتر‪ ،‬بلندگو و ‪(Monitor)،‬صفحه نمایش‬
‫واحد محاسبه و منطق‪ :‬مغز اصلی کامپیوتر است که اعمال اصلی همچون جمع‪ ،‬ضرب‪ ،‬تفریق‪ ،‬تقسیم‪،‬‬ ‫•‬
‫مقایسه دو مقدار و ‪ ...‬در آن انجام می پذیرد‪.‬‬
‫واحد کنترل‪ :‬این بخش وظیفه کنترل سایر بخشها را به عهده دارد و تصمیم میگیرد کدام عمل در چه‬ ‫•‬
‫زمانی صورت پذیرد این بخش بهمراه واحد محاسبه و منطق تشکیل واحد پردازش مرکزی‪ CPU‬را‬
‫می دهند‪.‬‬
‫کنترل‬

‫ورودی‬ ‫محاسبه ومنطق‬ ‫حافظه اصلی‬ ‫خروجی‬

‫حافظه جانبی‬
‫حافظه اصلی‬ ‫•‬
‫• این واحد وظیفه نگهداری اطالعات (شامل داده ها و برنامه ها) را بعهده دارد‪ .‬در واقع هر برنامه ای برای اجرا‪،‬‬
‫ابتدا باید به همراه داده های مورد نیاز وارد حافظه اصلی گردد‪ .‬حافظه اصلی به دو دسته اصلی تقسیم می گردد ‪:‬‬
‫• ‪ -‬حافظه با دستیابی تصادفی (‪ ) RAM‬این حافظه قابل خواندن و نوشتن می باشد و برای ذخیره اطالعات‬
‫کاربران بکار می رود‪.‬‬
‫• ‪ -‬حافظه فقط خواندنی (‪ ) ROM‬این حافظه فقط قابل خواندن است و محتویات آن قابل تغییر نیست‪ .‬این حافظه‬
‫معموال در کارخانه سازنده پر شده و حاوی دستورالعمل های الزم برای راه اندازی اولیه کامپیوتر می باشد‪.‬‬
‫حافظه جانبی‬ ‫•‬
‫از آنجا که با خاموش شدن کامپیوتر اطالعات حافظه اصلی پاک می گردد‪ ،‬نیاز به حافظه ای داریم که بتواند داده‬ ‫•‬
‫ها را مدت طوالنی تری در خود نگه دارد‪ .‬حافظه جانبی برای نگهداری طوالنی مدت اطالعات و همچنین‬
‫جابجایی آنها بکار می رود‪ .‬عالوه براین بدلیل سرعت پایینتر نسبت به حافظه اصلی‪ ،‬ارزانتر بوده و درنتیجه‬
‫معموال حجم آن باال تر می باشد‪ .‬نکته مهم آن است که اطالعات برای پردازش ابتدا باید وارد حافظه اصلی گردند‪.‬‬
‫دیسکهای مغناطیسی (‪)Hard Disk and Floppy Disk‬‬ ‫•‬
‫• دیسکهای نوری (‪)CD and DVD‬‬
‫• ‪Flash Disk‬‬
‫حافظه از واحدهای کوچکی بنام بیت(‪ )Bit‬تشکیل شده است که هر بیت قابلیت نگهداری‬
‫یک ‪ 0‬یا ‪ 1‬را در خود دارد‪ .‬به هر ‪ 8‬بیت یک بایت(‪ )Byte‬گفته می شود که واحد اندازه‬
‫گیری حافظه است‪ .‬به هر ‪ 2‬یا ‪ 4‬بایت‪ ،‬یک کلمه(‪ )Word‬می گوییم‪ .‬عالوه براین داریم ‪:‬‬

‫‪1Kb‬‬ ‫‪Bytes 1024‬‬

‫‪1Mb‬‬ ‫‪Kilobytes = 1048576 Bytes 1024‬‬

‫‪1Gb‬‬ ‫‪Megabytes = 1073741824 Bytes 1024‬‬

‫‪1Tb‬‬ ‫‪Gigabytes 1024‬‬


‫اطالعات در کامپیوترها‬
‫مبنای مورد استفاده در کامپیوترهای دیجیتال ‪ 2‬می باشد‪.‬‬
‫در مبنای ‪ 2‬تنها به ‪ 2‬رقم نیاز داریم‪،‬یعنی ‪ 0‬و ‪1‬‬ ‫•‬
‫این دو رقم را می توان توسط هر ابزاری که دارای دو حالت باشد نشان داد‪ .‬مثال یک المپ که‬ ‫•‬
‫خاموش بودن المپ به معنای ‪ 0‬و روشن بودن آن به معنای ‪ 1‬می باشد‪.‬‬
‫این همان ایده ای است که کامپیوترهای دیجیتال از آن استفاده می کنند‪.‬‬ ‫•‬
‫همانطور که قبال نیز گفته شد واحد نگهداری اطالعات در کامپیوتر بیت می باشد که هر بیت قادر‬ ‫•‬
‫به نگهداری ‪ 0‬و یا ‪ 1‬است‪ .‬با کنار هم قرار دادن بیتها‪ ،‬بایتها تشکیل می گردند و بدینوسیله‬
‫اطالعات مورد نظر در قالب بایتها تشکیل می گردند‪.‬‬
‫‪• ‬‬ ‫تبدیل اعداد از مبنای ‪ 10‬به ‪ 2‬و بالعکس بسیار ساده و همانند سایر مبنا ها است‪.‬‬‫•‬
‫• تبدیل از مبنای ‪ 2‬به ‪10‬‬
‫=‬

‫×‪=1× +0× +0× +1× +0× +0× +1× +1‬‬


‫‪= 1 + 0 + 0 + 8 + 0 + 0 + 64 + 128 = 201‬‬
‫‪• ‬‬ ‫تبدیل از مبنای ‪ 10‬به مبنای ‪2‬‬ ‫•‬
‫=‬

‫‪486 2‬‬
‫‪486 243‬‬ ‫‪2‬‬
‫‪121‬‬ ‫‪2‬‬
‫‪0 242‬‬
‫‪1‬‬ ‫‪120‬‬ ‫‪60‬‬ ‫‪2‬‬
‫‪60‬‬ ‫‪30‬‬ ‫‪2‬‬
‫‪1‬‬
‫‪30‬‬ ‫‪15‬‬ ‫‪2‬‬
‫‪0‬‬ ‫‪14‬‬
‫‪0‬‬ ‫‪7‬‬ ‫‪2‬‬
‫‪1‬‬ ‫‪6‬‬ ‫‪3‬‬ ‫‪2‬‬
‫‪1‬‬ ‫‪2‬‬ ‫‪1‬‬ ‫‪2‬‬
‫‪1‬‬ ‫‪0‬‬ ‫‪0‬‬
‫‪1‬‬

‫‪(486)10 = (111100110)2‬‬
‫زبان کامپیوتر‬

‫مجموعه دستوراتی برای برقراری ارتباط در راستای انجام اهدافی خاص که توسط کاربر رایانه نوشته‬ ‫•‬
‫است‪.‬به عبارت کلی تر مجموعه ای از دستورات برای اینکه داده های ورودی از واحد ورودی دریافت‬
‫و در حافظه ذخیره شوند و بعد از انجام پردازشی خاص ‪,‬اطالعات حاصل به واحد خروجی داده شوند‪.‬‬
‫زبان برنامه نویسی زبانی است که برای نوشتن این دستورالعمل ها مورد استفاده قرار میگیرند‪.‬‬ ‫•‬
‫• انواع زبان های برنامه نویسی‪:‬‬
‫زبان ماشین‬ ‫•‬
‫• زبان اسمبلی‬
‫• زبان های سطح باال‬
‫زبان ماشین‪ :‬هر کامپیوتری میتواند بطور مستقیم فقط زبان ماشین خود را درک میکند‪.‬زبان ماشین ‪,‬زبان ذاتی و‬ ‫•‬
‫منحصر به فرد یک کامپیوتر میباشد و به هنگام طراحی سخت افزار کامپیوتر تعریف میشود‪ .‬زبان ماشین یک‬
‫دستگاه فقط بر روی همان نوع از ماشین اجرا میشود‪.‬‬
‫زبان اسمبلی‪ :‬برنامه نویسی زبان ماشین برای بسیاری از برنامه نویسان خسته کننده و ماللت آور است‪ .‬لذا‬ ‫•‬
‫برنامه نویسان از عبارت کوتاه شده زبان انگلیسی برای فهماندن عملیات ابتدایی به کامپیوتر بجای استفاده از‬
‫رشته ای از اعداد(زبان ماشین) که کامپیوتر بتواند بصورت مستقیم آن را درک کند‪ ،‬استفاده کردند‪ .‬این عبارات‬
‫مخفف شده شبیه زبان انگلیسی‪ ،‬مبنای زبان اسمبلی هستند‪ .‬برنامه های مترجم زبان اسمبلی‪ ،‬اسمبلر نامیده می‬
‫شود که زبان اسمبلی را به زبان ماشین ترجمه میکنند‪.‬‬
‫زبان های سطح باال‪ :‬زبان اسمبلی باعث افزایش سرعت برنامه نویسی شد اما هنوز هم مستلزم دستورات فراوانی‬ ‫•‬
‫برای انجام یک عمل ساده بود‪ .‬برای افزایش سرعت برنامه نویسی زبان های سطح باال توسعه پیدا کردند‪ .‬با‬
‫استفاده از یک عبارت میتوانند وظایف و اعمال وسیعتری انجام دهتد‪.‬برای انسان از وضوح بیشتری نسبت به‬
‫زبان های دیگر برخوردارند‪ .‬برای کامپیوتر تا زمانی که به زبان ماشین ترجمه نشود معنایی ندارد‪ .‬برنامه های‬
‫مترجم که وظیفه تبدیل زبان های سطح باال به زبان ماشین را بر عهده دارند کامپایلر نامیده میشوند‪.‬‬

You might also like