دانلود با لینک مستقیم و پر سرعت .
لینک دانلود و خرید پایین توضیحات
فرمت فایل word و قابل ویرایش و پرینت
تعداد صفحات: 132
همه چیز در مورد کامپیوتر (رایانه)
رایانه یا کامپیوتر دستگاهی است که برای پردازش اطلاعات تحت یک روال معین استفاده میشود.
واژه کامپیوتر
مدتی در فارسی به کامپیوتر «مغز الکترونیکی» میگفتند. بعد از ورود این دستگاه به ایران در اوایل دهه ۱۳۴۰ نام کامپیوتر بهکار رفت. واژه رایانه در دو دهه اخیر رایج شده و بهتدریج جای کامپیوتر را میگیرد. واژه رایانه پارسی است و از فعل پارسی رایاندن به معنی سامان دادن و مرتب کردن آمده. معنی واژگانی رایانه میشود ابزار دستهبندی و ساماندهی.
در زبان انگلیسی طی سالیان متمادی واژههای هم ارزش بسیاری برای این واژه بکار میرفته، و کلمات دیگری نیز وجود داشتهاند که از آنها به عنوان کامپیوتر یاد میشود اما معانی متفاوتی را در خود داشته اند. یف شاعرانه تری بکار میرود، tölva که واژه ایست مرکب و به معنای «زن پیشگوی شمارشگر!» میباشد. در چینی رایانه dian nao یا «مغز برقی» خوانده میشود. در انگلیسی واژهها و تعابیر گوناگونی استفاده میشود، بهعنوان مثال دستگاه داده پرداز یا data processing machine
تعریفها
با تعریفهای بالا میتوان به همهٔ ماشینهای مکانیکی محاسبه مانند خطکش محاسبه و یا چرتکه نیز بههمان صورت که برای ماشینهای امروزی بهکار میرود، رایانه گفت. البته عبارات و واژههای بهتری نیز میتواند توصیف فعالیتهای این ماشینها باشند، واژههایی مانند: دادهپرداز، سامانههای پردازش اطلاعات و همچنین کنترلگر.
هنگامی که رایانههای امروزی را درنظر میگیریم، اغلب ویژگی درخور نگرشی میتوانند تمامی ویژگی که در سایر دستگاهها پردازشی که اختراع میشوند تقلید نمایند (به هر حال یقینا با سرعت پایین تر). گهگاه، این آستانه قابلیت یک محک سودمند برای شناسایی «رایانههای همهکاره» از ابزارهای با کارایی ویژه قدیمی میباشد. این تعریف «همه کاره» میتواند بصورت رسمی در این تعریف که یک ماشین معین باید بتواند رفتارهای ماشین تورینگ (Turing machine) را تقلید نماید، بکار گرفته شود. ماشینهایی که این نیازمندی را تأمین کرده باشند بهعنوان تورینگ کامل (Turing-complete) خطاب میشوند. تا هنگامی که بصورت فیزیکی تأمین فضای ذخیره نامتناهی و احتمال zero crashing وجود نداشته باشد لفظ تورینگ کامل بصورت آسان گیرانهای به ماشین با ظرفیت ذخیره سازی بالا (نامتناهی) و با قابلیت اطمینان واقعی، گفته میشود. نخستین سری از این ماشینها در سال ۱۹۴۱ بوجود آمد: Z۳ ساخت کونراد زوسه (Konrad Zuse)که توسط برنامه کنترل میشد(اما ویژگی تورینگ کامل آن در سال ۱۹۹۸ به آن داده شد.). ماشینهای دیگری نیز بصورت آشفته و با عجله در سراسر دنیا توسعه یافتند. برای اطلاعات بیشتر به تاریخچه رایانه نگاه کنید.
تاریخچه
لایبنیتز (leibniz) ریاضیدان آلمانی از نخستین کسانی است که در ساختن یک دستگاه خودکار محاسبه کوشش کرد. او که به پدر حسابدارش در تنظیم حسابها کمک میکرد، از زمانی که برای انجام محاسبات صرف میکرد گلهمند بود.
چارلز بابیج (Charles Babbage) یکی از اولین ماشینهای محاسبه مکانیکی را که به آن ماشین تحلیلی گفته میشد، طراحی نمود، اما بخاطر مشکلات فنی موجود در زمان حیاتش همچون ماشینی ساخته نشد(در سال ۱۹۹۳ در موزه علوم لندن مدلی که بر اساس طرح بابیج کار میکرد ساخته شد).
در گذشته دستگاههای مختلف مکانیکی سادهای مثل خطکش محاسبه و چرتکه نیز کامپیوتر خوانده میشدند. در برخی موارد از آنها بهعنوان رایانههای آنالوگ نام برده میشود. چراکه برخلاف رایانههای رقمی، اعداد را نه بهصورت اعداد در پایه دو بلکه بهصورت کمیتهای فیزیکی متناظر با آن اعداد نمایش میدهند. چیزی که امروزه از آن بهعنوان «رایانه» یاد میشود در گذشته به عنوان «رایانههای رقمی (دیجیتال)» یاد میشد تا آنها را از انواع «رایانههای آنالوگ» جدا سازد(که هنوز در برخی موارد استفاده میشود مثلاً نشانک پرداز آنالوگ یا analog signal processing
رایانهها چگونه کار میکنند ؟
از زمان رایانههای اولیه که از سال ۱۹۴۱ تا کنون فناوریهای دیجیتالی بصورت شگرفی رشد نموده است، اغلب رایانهها از معماری فون نویمن که در اواخر دهه ۱۹۴۰ از سوی جان فون نویمن ابداع گردید سود میجویند.
معماری فون نوِیمن یک رایانه را به چهار بخش اصلی توصیف میکند: واحد محاسبه و منطق (Arithmetic and Logic Unit یا ALU)، واحد کنترل یا حافظه، و ابزارهای ورودی و خروجی (که جمعا I/O نامیده میشود). این بخشها توسط اتصالات داخلی سیمی به نام گذرگاه (bus) با یکدیگر در پیوند هستند.
حافظه
در این سامانه، حافظه یک توالی شماره گذاری شده از خانهها است، هرکدام محتوی بخش کوچکی از دادهها میباشند. دادهها ممکن است دستورالعملهایی باشند که به رایانه میگویند چه کاری را انجام دهد باشد. خانه ممکن است حاوی اطلاعات مورد نیاز یک دستورالعمل باشد.
محتوای هر خانه حافظه ممکن است هر زمان تغییر یابد و بیشتر شبیه دفتر چرکنویس میماند تا یک لوح سنگی.
اندازه هر خانه، وتعداد خانه ها، در رایانهٔ مختلف متفاوت است، همچنین فناوریهای بکاررفته برای اجرای حافظه نیز از رایانهای به رایانه دیگر در تغییر است(از بازپخش کنندههای الکترومکانیکی تا تیوپها و فنرهای پر شده از جیوه و یا ماتریسهای ثابت مغناطیسی و در آخر ترانزیستورهای واقعی و مدار مجتمعها با میلیونها خازن روی یک تراشه تنها).
پردازش
واحد محاسبه و منطق یا ALU دستگاهی است که عملیات پایه مانند چهار عمل اصلی حساب (جمع و تفریق و ضرب و تقسیم)، عملیات منطقی (و،یا،نقیض)، عملیات قیاسی (برای مثال مقایسه دو بایت برای شرط برابری) و دستورات انتصابی برای مقدار دادن به یک متغیر را انجام میدهد. این واحد جاییست که «کار واقعی» در آن صورت میپذیرد. البته CPUها به دو دسته کلی RISC و CISC تقسیم بندی میشوند. نوع اول پردازش گرهای مبتنی بر اعمال ساده هستند و نوع دوم پردازشگرهای مبتنی بر اعمال پیچیده هستند. پردازشگرهای مبتنی بر اعمال پیچیده در واحد محاسبه و منطق خود دارای اعمال و دستوراتی بسیار فراتر از چهار عمل اصلی یا منطقی میباشند. تنوع دستورات این دسته از پردازندهها تا حدی است که توضیحات آنها خود میتواند یک کتاب با قطر متوسط ایجاد کند. پردازندههای مبتنی بر اعمال ساده اعمال بسیار کمی را پوشش میدهند و در حقیقت برای برنامه نویسی برای این پردازندهها بار نسبتاً سنگینی بر دوش برنامه نویس است. این پردازندهها تنها حاوی ۴ عمل اصلی و اعمال منطقی ریاضی و مقایسهای به علاوه چند دستور بی اهمیت دیگر هستند.
(قابل ذکر است پردازندههای اینتل از نوع پردازنده مبتنی بر اعمال پیچیده هستند.)
واحد کنترل همچنین این مطلب را که کدامین بایت از حافظه حاوی دستورالعمل فعلی اجرا شونده است را تعقیب میکند، سپس به واحد محاسبه و منطق اعلام میکند که کدام عمل اجرا و از حافظه دریافت شود و نتایج به بخش اختصاص داده شده از حافظه ارسال گردد. بعد از یک بار عمل، واحد کنترل به دستورالعمل بعدی ارجاع میکند(که معمولاً در خانه حافظه بعدی قرار دارد، مگر اینکه دستورالعمل جهش دستورالعمل بعدی باشد که به رایانه اعلام میکند دستورالعمل بعدی در خانه دیگر قرارگرفته است).
ورودی/خروجی
بخش ورودی/خروجی (I/O) این امکان را به رایانه میدهد تا اطلاعات را از جهان بیرون تهیه و نتایج آنها را به همان جا برگرداند. محدوده فوق العاده وسیعی از دستگاههای ورودی/خروجی وجود دارد، از خانواده آشنای صفحهکلیدها، نمایشگرها، نَرمدیسک گرفته تا دستگاههای کمی غریب مانند رایابینها (webcams).
چیزی که تمامی دستگاههای عمومی در آن اشتراک دارند این است که آنها رمز کننده اطلاعات از نوعی به نوع دیگر که بتواند مورد استفاده سیستمهای رایانه دیجیتالی قرار گیرد، هستند. از سوی دیگر، دستگاههای خروجی آن اطلاعات به رمز شده را رمزگشایی میکنند تا کاربران آنها را دریافت نمایند. از این رو یک سیستم رایانه دیجیتالی یک نمونه از یک سامانه دادهپردازی میباشد.
دستورالعملها
هر رایانه تنها دارای یک مجموعه کم تعداد از دستورالعملهای ساده و تعریف شده میباشد. از انواع پرکاربردشان میتوان به دستورالعمل «محتوای خانه ۱۲۳ را در خانه ۴۵۶ کپی کن!»، «محتوای خانه ۶۶۶ را با محتوای خانه ۰۴۲ جمع کن، نتایج را در خانه ۰۱۳ کن!»، «اگر محتوای خانه ۹۹۹ برابر با صفر است، به دستورالعمل واقع در خانه ۳۴۵ رجوع کن!».
دستورالعملها در داخل رایانه بصورت اعداد مشخص شدهاند - مثلاً کد دستور العمل (copy instruction) برابر ۰۰۱ میتواند باشد. مجموعه معین دستورالعملهای تعریف شده که توسط یک رایانه ویژه پشتیبانی میشود را زبان ماشین مینامند. در واقعیت، اشخاص معمولاً به [زبان ماشین]] دستورالعمل نمینویسند بلکه بیشتر به نوعی از انواع سطح بالای زبانهای برنامه نویسی، برنامه نویسی میکنند تا سپس توسط برنامه ویژهای (تفسیرگرها (interpreters) یا همگردانها (compilers) به دستورالعمل ویژه ماشین تبدیل گردد. برخی زبانهای برنامه نویسی از نوع بسیار شبیه و نزدیک به زبان ماشین که اسمبلر (یک زبان سطح پایین) نامیده میشود، استفاده میکنند؛ همچنین زبانهای سطح بالای دیگری نیز مانند پرولوگ نیز از یک زبان انتزاعی و چکیده که با زبان ماشین تفاوت دارد بجای دستورالعملهای ویژه ماشین استفاده میکنند.
معماری ها
در رایانههای معاصر واحد محاسبه و منطق(ICU) را به همراه واحد کنترل در یک مدار مجتمع که واحد پردازشی مرکزی (CPU) نامیده میشود، جمع نموده اند. عموما، حافظه رایانه روی یک مدار مجتمع کوچک نزدیک CPU قرار گرفته. اکثریت قاطع بخشهای رایانه تشکیل شدهاند از سامانههای فرعی (به عنوان نمونه، منبع تغذیه) و یا دستگاههای ورودی/خروجی.
برخی رایانههای بزرگتر چندین CPU و واحد کنترل دارند که بصورت همزمان با یکدیگر درحال کارند. اینگونه رایانهها بیشتر برای کاربردهای پژوهشی و محاسبات علمی بکار میروند.
کارایی رایانهها بنا به تیوری کاملاً درست است. رایانه دادهها و دستورالعملها را از حافظه اش واکشی (fetch) میکند. دستورالعملها اجرا میشوند، نتایج ذخیره میشوند، دستورالعمل بعدی واکشی میشود. این رویه تا زمانی که رایانه خاموش شود ادامه پیدا میکند. واحد پردازنده مرکزی در رایانههای شخصی امروزی مانند پردازندههای شرکت ای-ام-دی و شرکت اینتل از معماری موسوم به Pipeline استفاده میشود و در زمانی که پردازنده در حال ذخیره نتیجه یک دستور است مرحله اجرای دستور قبلی و مرحله واکشی دستور قبل از آن را آغاز میکند. همچنین این رایانهها از سطوح مختلف حافظه نهانگاهی استفاده میکنند که در زمان دسترسی به حافظه اصلی صرفه جویی کنند.
برنامه ها
برنامه رایانهای فهرستهای بزرگی از دستورالعملها (احتمالاً به همراه جدولهایی از داده) برای اجرا روی رایانه هستند. خیلی از رایانهها حاوی میلیونها دستورالعمل هستند، و بسیاری از این دستورات به تکرار اجرا میشوند. یک رایانه شخصی(PC) نوین نوعی (درسال ۲۰۰۳) میتواند در ثانیه میان ۲ تا ۳ میلیارد دستورالعمل را پیاده نماید. رایانهها این مقدار محاسبه را صرف انجام دستورالعملهای پیچیده نمیکنند. بیشتر میلیونها دستورالعمل ساده را که توسط اشخاص باهوشی «برنامه نویسان» در کنار یکدیگر چیده شدهاند را اجرا میکنند. برنامه نویسان خوب مجموعههایی از دستورالعملها را توسعه میدهند تا