تاریخ علوم رایانه

از ویکی‌پدیا، دانشنامهٔ آزاد
(تغییرمسیر از پیشینه علوم رایانه)
پرش به: ناوبری، جستجو

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

در آغاز تاریخ[ویرایش]

در آغاز محاسبات[ویرایش]

سریع‌ترین ابزار شناخته شده در دوران باستان، برای محاسبه٬ چرتکه بوده‌است. چرتکه در حدود ۲۴۰۰ سال قبل در بابل اختراع شد. چرتکه های بابلی در اصل خطوطی روی خاک بودند و دانه های چرتکه، دانه های شن. چرتکه اولین رایانهٔ شناخته شده و پیشرفته‌ترین سیستم محاسباتی شناخته شده تا ۲۰۰۰ سال پیش است .

در ۱۱۱۵ سال پیش از دوران فعلی، در چین باستان ارّابهٔ بندکشی جنوبی اختراع شده بود . آن اختراع اولین سازوکار چرخ دنده شناخته شده بود که در چرخ‌های گوناگون مورد استفاده قرار می‌گرفته‌است و بعداً در کامپیوترهای قیاسی یا آنالوگ استفاده شدند . بعلاوه، در حدود دو قرن پیش از دوران فعلی چینی‌ها چرتکه ماهرتری را اختراع کردند .
در سدهٔ پنجم پیش از دوران فعلی در هند باستان، پانینی متخصص گرامر، دستور زبان سانسکریت را در ۳۹۵۹ قانون شناخته شده قاعده دار وتدوین کرده‌است . مثل آشتادهایی(Ashtadhyayi) که سیار فنی اسلوب داده شده بود . پانینی از قوانین تغییر شکل و بازگشتی‌ها استفاده کرده بود و با این قبیل مهارتی که گرامرش داشت، معادل قدرت محاسبه ماشین تیورینگ بود .
بین ۲۰۰ تا ۴۰۰ سال پیش از این، جاینا ریاضی دان هندی، لگاریتم را اختراع کرد . از قرن سیزدهم جدول لگاریتم توسط ریاضی دانان مسلمان ابداع شد .
باور بر این است که ماشین آنتیکیترا قدیمی‌ترین رایانه قیاسی شناخته شده است. آن ماشین برای اینکه موقعیت‌های نجومی را محاسبه کند طراحی شده بود. آن ماشین در سال ۱۹۰۱ در لاشه کشتی آنتی کیترا در جزیره یونانی آنتی کیترا بین کیترا و کرت حدود ۱۰۰ سال قبل کشف شده بود .
قطعات مکانکی کامپیوتر آنالوگ دو باره در یک هزار سال اخیر در جهان اسلام و در قرون وسطی ظاهر شده و توسط ستاره شناسان مسلمان توسعه داده شده بود . مانند خط استوایی توسط آرزاشل، چرخ دنده‌های مکانیکی توسط ابوریحان بیرونی و نیروی گشتاور توسط جابر ابن افلح . اولین ماشین‌های قابل برنامه ریزی هم توسط مهندسان مسلمان اختراع شده بود .مانند نوازنده فلوت اتوماتیک توسط برادران بنو موسی (Banu Musa) و روباتهای شبه انسان توسط الجازاری . همچنین ریاضی دانان مسلمان مهمترین پیشرفت‌ها را در رمز نگاری کرده بودند مانند پیشرفت در کشف نوشته رمزی و آنالیز فرکانس توسط آلکیندوس .
زمانی که جان نپیر در اوایل قرن هفدهم لگاریتم را برای اهداف محاسباتی کشف کرده بود به دنبال آن یک دوره پیشرفت قابل توجه توسط مخترعان و دانشمندان در ساخت ابزار محاسباتی شروع شد . حدود سال ۱۶۴۰، بلیز پاسکال یک ریاضی دان اهل فرانسه، اولین وسیله جمع مکانیکی را مبنی بر طراحی توصیف شده توسط قهرمان آلکساندر، ریضی دان یونان، ساخته‌است .
در ابتدا هیچ کدام از وسایل محاسباتی واقعاً کامپیوتر در مفهوم پیشرفته نبوده‌اند . آن پیشرفت قابل توجه در ریاضیات و تئوری قبل از اولین کامپیوتر مدرن طراحی شده، گرفته شده‌است .

الگوریتم‌ها[ویرایش]

در قرن هفتم، ریاضی دان هندی، براهام گوپتا اولین توضیح سیستم اعداد هندو – عربی را داد و از صفر با یک حفره یا سوراخ و یک رقم دهدهی استفاده کرد . تقریباً حدود سال ۸۲۵، ریاضی دان فارس، خوارزمی کتابی تحت عنوان « محاسبات با اعداد هندو » نوشته‌است که عمدتاً مسئول برای پخش سیستم شمارش هندی در خاور میانه و اروپا بوده‌است، حدود قرن دوازدهم ترجمه این کتاب به لاتین نوشته شده بود : «Algoritmi De Numero Indorum» در این کتاب مفاهیم جدید تری نمایان شده‌است تا یکسری گام‌ها را در صحیح انجام دادن یک وظیفه اجرا کنند، مانند کاربرد و استفاده محاسباتی قاعده دار در جمع . به وسیله اشتقاق از نام او ما لفظ الگوریتم را داریم .

منطق دودویی[ویرایش]

حدود سه قرن قبل، پینگالا ریاضی دان هندی سیستم اعداد دودویی را کشف کرد . در این سیستم که امروزه هنوز در پردازش کامپیوترهای مدرن استفاده می‌شود، با یک توالی و ترتیب صفرها و یک‌ها می‌توان هر عددی را نماین کرد .
در سال ۱۷۰۳ گاتفرید لیبنیز، منطق مجرد را توسعه داده‌است . ریاضیات تحت سیستم اعداد دودویی با دستنوشته‌های او مفهوم پیدا کرد . در سیستم او علاوه بر صفرها و یک‌ها، صحیح و غلط (True / False) و وضعیت‌های روشن و خاموش نمایان بودند .
اما بیشتر از یک قرن قبل جرج بول، در سال ۱۸۵۴ جبر بولی را منتشر کرد . اولین بار وسایل مکانیکی تحت یک الگوی دودویی که اختراع شده بود حرکت داده شده بود . انقلاب صنعتی، مکانیزم کردن تعدادی وسایل را به جلو حرکت داده بود که این شامل بافندگی نیز می‌شد . در سال ۱۸۰۱ جوزف ماری کارگاه بافندگی را توسط کارتهای پانچ کنترل می‌کرده‌است . جایی که یک حفره روی کارت سوراخ شده باشد یک از نوع دودویی، و نقطه سورهخ نشده، صفر از نوع دودویی را نشان می‌دهد . دستگاه بافندگی نساجی از یک رایانه فاصله دارد . اما با مثال توضییح می‌دهد که با سیستم دودویی می‌توان ماشین‌ها را حرکت داد .

ماشین تحلیلی[ویرایش]

ماشین تحلیلی نبود تا چارلز بابیج (Charles Babbage)، که پدر علم محاسبه بوده‌است آغاز رایانه مدرن با کار او روی ماشین تحلیلی شکل گرفته‌است . ای دستگاه به هر حال با همهٔ وظایف و کارهایی که در طراحی یک رایانه مدرن صورت گرفته‌است، هرگز با موفقیت ساخته نشد . او اولین بار آن را در سال ۱۸۳۷، توصیف و تشریح کرده‌است . بیش از ۱۰۰ سال قبل هر دستگاه مشابهی با موفقیت ساخته شده بود . تفاوت بین ماشین بابیج و ماشین‌های قبلی ساده‌است : « او برنامه ریزی شده طراحی کرده‌است . » در این هنگام همکار او، ریاضی دان، آدا لاولیس (Ada Lavelace)، نخستین برنامه‌های کامپیوتری را در یک دستگاه جامع و فراگیر روی ماشین تحلیلی منتشر کرده‌است . لاولیس به خاطر این کارش محبوب هست و اولین برنامه نویس کامپیوتر لحاظ شده بود . اما تعدادی محقق ادعا کردند برنامه‌های منتشرشده تحت نام او در اصل توسط بابیج ساخته شده‌است .

تولد علم رایانه[ویرایش]

قبل از دهه ۱۹۲۰کامپیوترها(گاهی اوقات کامپیوتورها) کارمندان از نوع انسان بوده‌اند که محاسبات را انجام می‌دادند . آنها معمولاً تحت هدایت یک فیزیک دان بوده‌اند . هزاران کامپیوتر در تجارت، دولت و تشکیل یک تحقیق کار می‌کردند و یا استخدام شده بودند . بیشتر این کامپیوترها زنان بوده‌اند و آنها مدرکی در حسابان داشته‌اند . تعدای از آنها برای سالنامه‌ها محاسبات نجومی را انجام می‌دادند . بعد از دههٔ ۱۹۲۰، بیان ماشین محاسبات، به ماشینی که کار یک کامپیوتر انسانی را انجام می‌داده اطلاق می‌شده‌است . مخصوصا آنها با روشهای موثر قضیه جرج – تیورینگ مطابقت داشته‌اند . این قضیه که روشی است برای یک ریاضی دان، اگر توانایی تنظیم یک لیست دستورالعمل‌ها را بوسیله یک کارمند انسانی با مداد و کاغذ داشته باشد، موثر است . به دلیل ضرورت خیلی زیاد و بدون قوه ابتکار و نبوغ . ماشینهایی که مقادیر متوالی را محاسبه می‌کردند به عنوان نوع آنالوگ یا قیاسی شناخته شده‌اند . آنها از دستگاهی که کمیت عددی متوالی را نشان بدهد استفاده می‌کردند . مانند زاویه چرخش یک گلوله یا اختلاف در پتانسیل الکتریکی .
ماشین‌های دیجیتال در تقابل با آنالوگ ٬توانایی تحویل وضعیت یک مقدار عددی و ذخیره هر تک رقم را داشتند . ماشین دیجیتال قبل از اختراع قطعات سریعتر حافظه، در ماشین‌های مختلف یا دستگاه‌های تقویت نیرو استفاده می‌شده‌است .

عبارت «Computing Machine» (ماشین محاسبه) به تدریج بعد از دهه ۱۹۴۰ از بین رفته‌است . درست بودن عبارت کامپیوتر از زمانی که ماشینهای دیجیتال الکترونیک رایج شده‌اند شروع شده‌است . این کامپیوترها توانایی انجام محاسبات را که قبلاً توسط کارمندان انسان انجام می‌شده‌است را داشته‌اند . چون مقادیر ذخیره شده توسط ماشینهای دیجیتال مانند وسایل آنالوگ به خصوصیات فیزیکی محدود نبود، یک کامپیوتر منطقی مبتنی برتجهیزات دیجیتال، توانایی انجام هر چیزی را که می‌توانست ماشین خالص را تولید کند، داشته‌است .
آلن تیورینگ که به عنوان پدر علم کامپیوتر شناخته می‌شده‌است، این قبیل کامپیوترهای منطقی را که به عنوان ماشین تیورینگ شناخته می‌شود را اختراع کرده بود . که بعد از آن داخل کامپیوترهای مدرن و پیشرفته رشد پیدا کرد . به علاوه این کامپیوترهای جدید توانایی انجام محاسبات غیر عددی را مثل موسیقی داشته‌اند .
از زمانی که پردازش‌های محاسباتی توسط کارمندان انسانی انجام می‌شده‌است، این مطالعهٔ توانایی انجام محاسبات، به وسیله آشکار ساختن چیزی که در مفهوم متداول آشکار نبوده‌است، یک علم را آغاز کرده‌است .

نظم و انضباط غیر منتظره[ویرایش]

اساس تئوری[ویرایش]

اساس ریاضی علم کامپیوتر مدرن توسط کرت گدل با قضیه ناقصش در سال ۱۹۳۱ آغاز شده بود. در این قضیه او نشان داده که، جایی محدود بوده که داخل یک سیستم قراردادی چیزی را نتواند رد یا اثبات کند. این قضیه به کاری توسط Godel و بقیه راهنمایی کرده تا این سیستم‌های رسمی یا قراردادی را تشریح یا تعریف کنند. که این شامل مفاهیمی مانند توابع بازگشتی mu(μ) و توابع تعریف پذیر Lambda(λ) می‌باشد.
سال ۱۹۳۶ یک سال کلیدی برای علم کامپیوتر بوده‌است. آلن تیورینگ و آلونزو جرج، مستقلاً و همچنین با هم الگوریتم را به طور رسمی، با محدوده‌هایی که می‌توانست محاسبه کند و مدلی برای محاسبات مکانیکی خالص بود، معرفی کردند.
این عناوین توسط چیزی که اکنون قضیه جرج – تیورینگ نامیده می‌شود، تحت پوشش قرار می‌گیرد. که یک فرضیه در مورد طبیعت وسایل محاسباتی مکانیکی مانند کامپیوترهای الکترونیکی، می‌باشد. این قضیه ادعا کرده که هر محاسباتی که ممکن است (حل شدنی است) می‌تواند توسط اجرای الگوریتم روی کامپیوتر انجام شود. که با زمان کافی و فضای ذخیره سازی در دسترس فراهم می‌شود. همچنین تیورینگ، قضیه توصیف ماشین تیورینگ را شامل می‌شود. یک ماشین تیورینگ یک نوار طولانی نا محدود و یک هد یا سوزن نوشتن یا خواندن (R/W) دارد که همراه با نوار می‌تواند حرکت کند و تنها مقادیر مسیر را می‌تواند حرکت دهد. به طور شفاف همانند ماشینی است که هرگز نمی‌تواند بسازد، اما با این وجود مدلی است که می‌تواند محاسبات هر الگوریتمی را که روی هر کامپیوتر مدرنی قابل اجراست، تقلید کند.
همچنین تیورینگ برای علم کامپیوتر مهم است چونکه نام او نمایانگر جایزه تیورینگ و آزمایش تیورینگ است. او در جنگ جهانی دوم همکاری موفقیت آمیز و بزرگی با کد شکن‌های بریتانیایی داشته‌است و طراحی کامپیوترها و نرم‌افزارها را در دهه ا۱۹۴۰ کاملاً ادامه داده‌است.

در یک نشست خیلی بزرگ ماشین‌های دیجیتال در کمبریج، تورینگ گفت: «ما در تلاشیم تا ماشینی بسازیم تا همه نوع چیزهای متفاوت را به سادگی توسط برنامه نویسی سریع تر از راه اضافه کردن دستگاه‌های اضافی انجام دهیم.»
اولین کامپیوتری که قابل کنترل و برنامه نویسی با زبان‌های برنامه نویسی بود را کنراد زوسه (konrad Zuse) در سال ۱۹۴۱ در آلمان به نام Z3 تکمیل و ارائه کرد. وی اولین کامپیوتر خود را به نام Z1 در سال ۱۹۳۸ ساخته بود که البته قابلیت برنامه نویسی را نداشت.

در سال ۱۹۴۸ توسط بابی منچستر، کامپیوتر دیگری که می‌توانست برنامه‌های ذخیره شده را اجرا کند، بر مبنای مدل ماشین تیورینگ ساخته شد.

شانون و تئوری اطلاعات[ویرایش]

تا حدود و نزدیکی‌های دهه ۱۹۳۰، مهندسین برق توانایی ساختن مدارات الکترونیکی را داشتند تا مسائل منطقی و ریاضی را حل کنند، اما بیش از همه طبق عادت عمومی، نظریه‌هایی که وقت زیادی نمی‌برده انجام می‌داده‌اند . این امر با انتشار قضیه Master در سال ۱۹۳۷ توسط الوود شانون (Elwood Shannon) تغییر کرده‌است . که یک تحلیل نمادین از ایستگاه تقویت و مدارات سوئیچینگ است . در زمان گرفتن مدرک لیسانس در کلاس فلسفه، شانون کار بولی را افشا کرده و تشخیص داده بود که آن کار می‌تواند

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

وینر و فیزیولوژی[ویرایش]

از آزمایش‌هایی با سیستم‌های ضد هوایی که عکس‌های کشف شدهٔ هواپیمای دشمن را تفسیر می‌کرده‌است، نوربرت وینر (Norbert Wiener) اصطلاح فیزیو لوژی را از کلمه‌ای یونانی اختراع کرده‌است . او فیزیولوژی را در ۱۹۴۸ منتشر کرده‌است که تاثیر آن هوش مصنوعی بوده‌است . همچنین وینر، محاسبات ماشین محاسباتی، قطعات مموری یا حافظه و بقیه تشابه‌ها را با آنالیز امواج مغز خود مقایسه می‌کرده‌است .

اولین اشکال رایانه ای[ویرایش]

در تاریخ ۹ سپتامبر ۱۹۴۵ میلادی حشره ای وارد رایانه هاوارد مارک ۲ شده و بین دستگاههای تقویت این رایانه چسبید و باعث اختلال در عملکرد آن شد. از آن زمان به بعد اصطلاح "BUG" (اشکال) وارد فرهنگ لغات رایانه ای شد. رواج این اصطلاح اغلب به گریس هوپر، افسر نیروی دریایی آمریکا نسبت داده می‌شود، که در حقیقت این چنین نیست. البته در مورد تاریخ دقیق این رویداد بحث هایی وجود دارد و برخی تاریخ این رویداد را سال ۱۹۴۷ می دانند.

علم رایانه[ویرایش]

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

خلاصه تاریخچه[ویرایش]

قبل از اختراع کامپیوتر دیجیتال پایه اصلی علم رایانه ایجاد شد . ماشینهایی برای محاسبه وظایف عددی ثابت، مانند چرتکه که در روزگار باستان وجود داشته‌است . ویلیام اشیکارد اولین محاسبه گر الکتریکی را در سال ۱۶۲۳ ساخت . در زمان ملکه ویکتوریا، چارلز بابیج ماشین متفاوتی را ( بین سال‌های ۱۸۳۷ و ۱۹۰۱ ) به کمک آدا لاولکا طراحی کرد . حدود سال ۱۹۰۰ شرکت IBM ماشین‌های کارت پانچ را فروخته‌است . هر چند که همه این ماشین‌ها برای انجام یک وظیفه یا بهترین تعداد زیر مجموعهٔ همه وظایف ممکن، تحمیل شده‌اند .
در طول دهه ۱۹۴۰، ماشین‌های محاسباتی قوی تر و جدید تری توسعه داده شد، کلمه Computer به ماشین‌های سریع تر از پردازش گرهای بشری آن‌ها بر می‌گردد . چنانکه آن روشن و واضح است که کامپیوترها می‌توانند برای بیشتر از فقط محاسبات ریاضی استفاده شوند . رشته علم کامپیوتر منتشر شده تا محاسبات را در کل مطالعه کند . علم کامپیوتر آغاز شده‌است تا برتری نظم آکادمی را در دهه ۱۹۶۰ با ساخت اولین دپارتمان علم کامپیوتر و مدرک برنامه‌ها برقرار کند . زمانی که کامپیوترهای کاربردی در دسترس شدند تعدادی کاربردهای محاسبات در حق خودشان در نواحی مورد مطالعه برتری داده شدند . اگر چه تعدادی در ابتدا اعتقاد داشتند که آن غیر ممکن است که خودشان واقعاً یک رشته مطالعاتی باشند، در پنجاه سال اخیر آن بتدریج بین بزرگترین جمعیت علمی و دانشگاهی مقبول واقع شد . آن الان توسط مارک IBM خوب شناخته شده که قسمت انقلاب علم کامپیوتر در طول این مدت را شکل داده‌است . IBM (کوتاه شده ماشین تجاری بین‌المللی یا International Business Machine ) کامپیونرهای IBM۷۰۴ و بعد از آن IBM۷۰۹ را منتشر کرد، که در طول کشف چنین قطعاتی طولانی تر استفاده می‌شدند . همیشه کار با کامپیوترهای IBM نا امید کننده بود ...اگر شما هر قدر یک کاراکتر را در یک دستور العمل گم کردید، برنامه ریزریز شده و شما باید پردازش کامل را دوباره شروع کنید. در جریان اواخر دههٔ ۱۹۵۰ نظم علم کامپیوتر خیلی در حال توسعه یافتن مراحلش بود و چنین مسئله‌ای پیش پا افتاده و معمولی بود .
زمان در بهبودی قابلیت استفاده و موثر بودن تکنولوژی علم کامپیوتر مهم دیده می‌شده‌است . انجمن یا گروه پیشرفته به نظر می‌رسیده که برای آنها مهم بوده که استفاده کنندگان کامپیوتر را از متخصصین و حرفه‌ای‌ها به کار بران رایج تر تغییر دهند .

منابع[ویرایش]

Wikipedia contributors, «History of computer science,» Wikipedia, The Free Encyclopedia, http://en.wikipedia.org/w/index.php?title=History_of_computer_science&oldid=261230332 (accessed January ۱، ۲۰۰۹).