شما اینجایید
خانه > تکنولوژی > تاریخچه کامپیوتر

تاریخچه کامپیوتر

رایانه انیاک

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

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

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

واژه ”کامپیوتر“ در اصل عنوان یک شغل بود که از آن برای توصیف آن دسته از انسان ها (عمدتا زنان) که کار آن انجام محاسبات تکراری مورد نیاز برای محاسبه چیزهایی مثل جداول ناوبری، نمودار جزر و مد، و موقعیت های سیاره ای برای سالنامه های نجومی بود، مورد استفاده قرار می گرفت.

تصور کنید که شما کاری داشته باشید که در آن ساعت به ساعت و روز به روز، مجبور باشید تا هیچ کاری جز محاسبه ضرب را انجام دهید. شاید برای شما خیلی ملال آور باشد!!!

گروهی از افراد کامپیوتر که کارهای محاسباتی را انجام میدادند
گروهی از افراد کامپیوتر که کارهای محاسباتی را انجام میدادند

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

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

به عنوان مثال چرتکه (Abacus) یکی از وسایل اولیه مهم برای کمک به امور محاسباتی بوده است. ارزش اصلی چرتکه کمک آن به حافظه انسان در محاسبات است. یک کاربر ماهر چرتکه می تواند مسائل جمع و تفریق را به سرعت فردی که از یک ماشین حساب دستی امروزی استفاده می کند انجام دهد (اعمال ضرب و تقسیم کندتر انجام میشوند).

چرتکه – Abacus

طبق اسناد تاریخی بیش از ۳۰۰۰ سال از اختراع چرتکه می گذرد. البته امروزه به اشتباه پیدایش چرتکه را به چین نسبت می دهند اما قدیمیترین چرتکه کشف شده مربوط به ۳۰۰ سال قبل از میلاد می باشد که توسط بابلیان مورد استفاده قرار میگرفته است. هم اکنون نیز در برخی از نقاط دنیا بویژه در کشورهای شرقی آسیا، این وسیله، به سادگی مورد استفاده قرار می گیرد.

چرتکه های امروزی و مدرن از چندین میله و حلقه هایی بدور آنها که قابل حرکت هستند تشکیل شده است. اما در مدل های تاریخی کشف شده عموماً چرتکه از شیارهایی تشکیل شده که درون هر شیار از سنگریزه هایی (pebbles) برای محاسبات استفاده می شده است.

قابل توجه است که کلمه ”calculus“ به معنای حساب در زبان انگلیسی از کلمه لاتین مترادف سنگریزه ”pebble“ گرفته شده است. در تصویرهای زیر دو نمونه از چرتکه قدیمی و امروزی را مشاهده می کنید.

چرتکه امروزی
چرتکه امروزی
چرتکه قدیمی
چرتکه قدیمی

دستگاه لگاریتم

در سال ۱۶۱۷ میلادی توسط یک دانشمند اسکاتلندی عجیب و غریب (که حتی بعضی او را دیوانه خطاب می کردند) به نام جان نیپور ”John Napier“، لگاریتم اختراع شد. این تکنولوژی اجازه می دهد تا عمل ضرب به وسیله عمل جمع انجام شود.

عنصر جادویی لگاریتم هر عملوند می باشد، که در اصل از یک جدول چاپ شده به دست آمده است. اما نیپور جایگزین جداول را نیز اختراع کرد، که در آن ارزشهای لگاریتم بر روی میله های عاج کنده کاری شده اند که در حال حاضر به نام استخوان های نیپور ”Napier’s Bones “ معروف هستند.

دستگاه لگاریتم یا همان استخوان های نیپور
دستگاه لگاریتم یا همان استخوان های نیپور

خط کش محاسباتی – Slide Rule

در سال ۱۶۳۲، الگوی اختراع نیپور باعث اختراع خط کش محاسباتی در انگلیس شد و تا اوایل دهه ۱۹۷۰ در کارهای محاسباتی مورد استفاده قرار می گرفت. از مهمترین مراکز مورد استفاده این خط کش می توان به پروژه های معروف ناسا همچون پروژه های: کشف مریخ، عطارد و مجموعه آپولو که در آن انسان به ماه سفر کرد، اشاره کرد. در تصویر یک نمونه از خط کش های رله ای نمایش داده شده است.

خط کش محاسباتی – Slide Rule
خط کش محاسباتی – Slide Rule

حتی نقاش معروف ایتالیایی لئوناردو داوینچی ”Leonardo da Vinci (1452-1519)“ نیز طرح های یک ماشین محاسباتی مکانیکی را بصورت نقاشی بوجود آورده بود که هیچ گاه مدل واقعی آن ساخته نشد.

یک نمونه از طرح های نقاش معروف ایتالیایی لئوناردو داوینچی ”Leonardo da Vinci (1452-1519)“
یک نمونه از طرح های نقاش معروف ایتالیایی لئوناردو داوینچی ”Leonardo da Vinci (1452-1519)“

ساعت محاسباتی ” calculating clock

اولین ماشین محاسباتی مکانیکی مبتنی بر چرخ دنده احتمالا ساعت محاسباتی ” calculating clock“ بوده است. که این اسم توسط مخترع آن پروفسور آلمانی ” Wilhelm Schickard“ در سال ۱۶۲۳ انتخاب شد. این دستگاه زیاد شناخته نشد چون مخترع آن خیلی زود بعد از اختراع آن به دلیل طاعون درگذشت.

اولین ماشین محاسباتی مکانیکی مبتنی بر چرخ دنده احتمالا ساعت محاسباتی ” calculating clock“ بوده است
اولین ماشین محاسباتی مکانیکی مبتنی بر چرخ دنده احتمالا ساعت محاسباتی ” calculating clock“ بوده است

پاسکلین –Pascaline

در سال ۱۶۴۲، بلیز پاسکال ”Blaise Pascal“ در سن ۱۹ سالگی برای کمک به پدرش که در اداره دارایی کار می کرد، ماشین حساب ساده مکانیکی ساخت که می توانست عملیات جمع و تفریق را تا ۸ رقم انجام دهد. وی نام این دستگاه را پاسکلین گذاشت.

نمای درونی یک دستگاه پاسکلین
نمای درونی یک دستگاه پاسکلین
یک نمونه ماشین 8 رقمی پاسکلین، عکس از انجمن IEEE در سال 2002
یک نمونه ماشین ۸ رقمی پاسکلین
یک نمونه ماشین 6 رقمی پاسکلین برای کسانی که توانایی خرید نسخه 8 رقمی آن را نداشتند گزینه مناسبی بود
یک نمونه ماشین ۶ رقمی پاسکلین برای کسانی که توانایی خرید نسخه ۸ رقمی آن را نداشتند گزینه مناسبی بود

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

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

ماشین لایب نیز، محاسب پله ای

در حدود ۳۰ سال بعد از پاسکال، لایب نیز ”Gottfried Wilhelm Leibniz“ ریاضیدان آلمانی اختراع پاسکال را کامل کرد وی دستگاهی به نام ”stepped reckoner“ اختراع کرد که می توانست عمل ضرب، تقسیم و جذر را نیز انجام دهد.

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

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

Leibniz Stepped Reckoner ماشین لایب نیز، محاسب پله ای
Leibniz Stepped Reckoner
ماشین لایب نیز، محاسب پله ای

دستگاه بافندگی ژاکارد

در سال ۱۸۰۱ یک فرانسوی به نام ”Joseph Marie Jacquard“ دستگاه بافندگی اختراع کرد که می توانست الگوهای موجود بر روی کارت های چوبی را ببافد. الگوها بصورت پانچ شده بر روی صفحات چوبی ایجاد می شدند.

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

دستگاه بافندگی ژاکارد
دستگاه بافندگی ژاکارد

ماشین های محاسباتی بابیج

بابیج ”Charles Babbage“ نیز یکی دیگر از کسانی بود که سالهای زیادی از عمر خود را صرف طراحی ماشین های محاسبه گر نمود. وی ابتدا دستگاه محاسبه گر ماشین تفاضل (Difference Engine) را طراحی کرد و قسمتی از آن را ساخت. این دستگاه می توانست توابع به شکل y=a+bx+cx2+…+gx6 را محاسبه کند. اختراع وی کامل نشد. بابیج در همان حین ماشین تحلیگر (Analytic Engine) را نیز طراحی نمود که قسمت های مختلف رایانه های امروزی را در ساختمان خود داشت. این قسمت ها عبارت بودن از:

  • وسیله ورودی (Cart Punch – کارت پانچ)
  • محل ذخیره اعداد (۱۰۰۰ متغیر ۵۰ رقمی)
  • پردازشگر
  • قسمت کنترل کننده کارهای انجام شده که ترتیب محاسبات را کنترل می کرد.
  • دستگاه خروجی
ماشین تحلیگر (Analytic Engine)
ماشین تحلیگر (Analytic Engine)
دستگاه محاسبه گر ماشین تفاضل (Difference Engine)
دستگاه محاسبه گر ماشین تفاضل (Difference Engine)

به علت دو اختراع مهم بابیج از او به عنوان ”پدر رایانه“ یاد می شود.

همکار بابیج، یک خانم ۱۹ ساله به نام آگوستا آدا بایرون ”Augusta Ada King, Countess of Lovelace (10 December 1815 – ۲۷ November 1852), born Augusta Ada Byron and now commonly known as Ada Lovelace“ بود. او در طی همکاری با بابیج با ماشین تحلیلگر و نحوه کار آن آشنا شد و برنامه های ماشین (نرم افزار) را طراحی می کرد و طرح هایی برای اصلاح کار ارائه می داد.

آگوستا آدا بایرون ”Augusta Ada Byron“
آگوستا آدا بایرون ”Augusta Ada Byron“

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

ماشین جدول بندی هالریث

نتایج آمارگیری سال ۱۸۸۰ میلادی در آمریکا، هفت سال و نیم به طول انجامید. به همین دلیل، برای آمارگیری سال ۱۸۹۰، مسابقه ای برگزار شد تا بهترین راه حل برای کوتاه شدن این مدت یافته شود.

برنده این رقابت هرمن هالریث ”Herman Hollerith“ شد. وی موفق شد تا با الگو برداری از ماشین بافندگی ژاکارد فرانسوی و کارت پانچ های آن، ماشین جدول بندی (Tabulating Machine) خود را اختراع کند. این دستگاه توانست نتایج مقدماتی آمارگیری سال ۱۸۹۰ را در مدت ۶ هفته آماده کند. برخلاف ماشین های قبل از این، که همه مکانیکی بودند، این ماشین الکترومکانیکی بود. اختراع هالریث به میز هالریث نیز معروف است.

ماشین جدول بندی هالریث
ماشین جدول بندی هالریث
هرمن هالریث در سال 1908 در کنار ماشین جدولبندی هالریث
هرمن هالریث در سال ۱۹۰۸ در کنار ماشین جدولبندی هالریث

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

تصویری از آماده سازی کارت پانچ ها برای سرشماری آمریکا

تصویری از آماده سازی کارت پانچ ها برای سرشماری آمریکا
تصویری از آماده سازی کارت پانچ ها برای سرشماری آمریکا

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

روش هالریث ”Hollerith“ موفقیت آمیز بود و سرشماری سال ۱۸۹۰ تنها در ۳ سال و با صرفه جویی ۵ میلیون دلاری به پایان رسید.

تاسیس شرکت IBM

در سال ۱۸۹۶ هالریث، برای ساخت و فروش اختراعش شرکتی با نام شرکت ماشین جدول بندی ”the Tabulating Machine Company“ تاسیس کرد و در سال ۱۹۲۴ این شرکت با چند شرکت دیگر ادغام شد و شرکت ماشین های تجارتی بین المللی (IBM: International Business Machines) تاسیس شد. IBM به سرعت رشد کرد و کارت پانچ ها در همه جا ظاهر شدند (فراگیر شدند). به عنوان مثال در آن زمان در آمریکا صورت حساب های برق و گاز و… عمدتاً بصورت کارت های پانچ صادر می شدند. موارد استفاده از کارت پانچ ها به همین موارد محدود نشد و این کارتها از عوارضی های بزرگ راهها تا انتخابات نیز سر درآوردند.امروزه نیز در بسیاری از موارد از کارت پانچ ها یا کارتهای رنگی مشابه در سرتاسر دنیا استفاده می شود. مثل پاسخ نامه های کنکور در کشور خودمان ایران.

دو نمونه کارت پانچ

Univac Card
Univac Card
Punch Card
Punch Card

نقش ارتش آمریکا در تاریخ کامپیوتر

IBM به راه خود در طراحی ماشین حساب های مکانیکی برای فروش در مصارف تجاری جهت کمک به امور حسابداری مالی و حسابداری موجودی ادامه داد.

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

اما ارتش آمریکا ماشین حساب های مکانیکی بهینه سازی شده برای مصارف علمی را مد نظر داشت. جنگ جهانی دوم در جریان بود و آمریکا در درگیری های آن از گلوله های توپ هم وزن یک ماشین کوچک در مصافت های کمتر از ۲۵ مایل استفاده میکرد. فیزیکدانان معادلات مربوط به توصیف کشش جوی، باد، جاذبه، سرعت پوزه، و… را برای تعیین مسیر گلوله، آماده می کردند اما حل این معادلات کار بسیار دشواری بود.

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

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

اولین طرح موفق در این زمینه در سال ۱۹۴۴ به نتیجه رسید و کامپیوتر Mark I در IBM ساخته شد.

اولین ماشین حساب، Mark I

کامپیوتر Mark I اولین ماشین حساب الکترومکانیکی بود که با همکاری دانشگاه هاروارد و شرکت IBM توسط پروفسور ایکن ”Howard Aiken“ بعد از خواندن نوشته های آدا در سال ۱۹۴۴ در شرکت IBM ساخته شد. در واقع این ماشین حساب، مدرنیزه شده ماشین تجزیه تحلیلگر بابیج است.

مارک ۱ اولین کامپیوتر قابل برنامه ریزی دیجیتال ساخته شده در ایلات متحده است. اما این کامپیوتر بصورت کامل الکترونیکی نبوده و از قطعات مکانیکی مثل سوئیچ ها، شافت های (محورهای) دوار، رله ها و کلاچ ها ساخته شده است و دارای ۵ تن وزن، ۲/۴ متر ارتفاع و ۱۶/۵ متر طول بود و در ساخت آن بیش از ۵۰۰ مایل سیم مسی استفاده شده بود. در ساختار آن ۵۰ شافت دوار به کار رفته بود که این شافت ها توسط یک موتور الکتریکی با قدرت ۵ اسب بخار می چرخیدند.

مارک یک، بدون توقف بیش از ۱۵ سال در حال کار بود. در حالی که صدای کار کردن آن شبیه به صدای یک اتاق پر از زنان بافنده بود.

توان محاسباتی Mark I

مارک ۱ می توانست بر روی اعدادی با طول ۲۳ رقم، محاسبات خود را انجام دهد. این کامپیوتر می توانست بر روی دو عدد این چنینی اعمال زیر را انجام دهد:

  • عمل جمع و تفریق را در ۰/۳ ثانیه
  • عمل ضرب را در ۴ ثانیه
  • عمل تقسیم را در ۱۰ ثانیه

این در حالی است که بعد از گذشت ۷۰ سال (تا سال ۲۰۱۴) کامپیوترهای امروزی یک عمل جمع را در چند میلیاردم ثانیه انجام می دهند. مارک ۱ از ۷۵۰ هزار قطعه تشکیل شده بود اما با این حال فقط میتوانست ۷۲ عدد را ذخیره کند. این درحالی است که کامپیوترهای امروزی می توانند بیش از میلیون ها عدد را در حافظه اصلی (RAM) خود و بیش از چندین تریلیون عدد را در هارد دیسک خود ذخیره کنند.

امروزه برای انتقال یک عدد از حافظه اصلی به CPU تنها زمانی معادل چند میلیاردم ثانیه لازم است و برای انتقال همان عدد از هارد دیسک به CPU فقط چند میلیونیوم ثانیه.

دستیابی به چنین زمانی در کامپیوتری که از محورهای دوار مکانیکی برای محاسبات بهره میبرند مثل مارک یک، کاملاً غیر ممکن است.

و این همان دلیلی است که چرا کامپیوترهای الکترونیکی اجداد مکانیکی خود را کشتند و از رده خارج کردند (منسوخ کردند)؟

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

پیش بینی آیکن طراح Mark I

به عنوان یک یادداشت طنزآمیز!!!:

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

نمایی از کامپیوتر Mark I

The Harvard Mark I: an electro-mechanical computer
The Harvard Mark I: an electro-mechanical computer
در این تصویر نمای نزدیک یکی از 4 نوارخوان کاغذی مارک 1 نمایش داده شده است.
در این تصویر نمای نزدیک یکی از ۴ نوارخوان کاغذی مارک ۱ نمایش داده شده است.

اولین باگ در Mark I

یکی از اولین برنامه نویسان دستگاه مارک ۱ خانم گریس هاپر ”Grace Hopper“ بود که اولین باگ کامپیوتری را در مارک ۱ کشف کرد. جسد یک پروانه مرده که بال های آن در فرآیند خواندن یک کارت خوان مشکل ایجاد کرده بود. امروزه لفظ باگ در موارد وجود اشکال در یک نرم افزار به کار میرود.

یکی از اولین برنامه نویسان دستگاه مارک 1 خانم گریس هاپر ”Grace Hopper“ بود که اولین باگ کامپیوتری را در مارک 1 کشف کرد
یکی از اولین برنامه نویسان دستگاه مارک ۱ خانم گریس هاپر ”Grace Hopper“ بود که اولین باگ کامپیوتری را در مارک ۱ کشف کرد

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

در سال ۱۹۵۳ خانم گریس هاپر اولین زبان برنامه نویسی سطح بالا را با نام ” Flow-matic“ اختراع کرد. در ادامه این زبان تبدیل به زبان COBOL شد. یک زبان سطح بالا به این دلیل طراحی می شود که برای انسان قابل فهم تر از زبان دودویی یا باینری (قابل فهم برای کامپیوترها) باشد. یک زبان سطح بالا بدون وجود یک برنامه به نام مترجم (Compiler) ارزشی ندارد. کامپایلر برنامه ایست که برنامه های نوشته شده به یک زبان را به زبان ماشین یعنی زبان دودویی یا باینری تبدیل میکند.

خانم گریس هاپر همچنین اولین کامپایلر (مترجم برنامه به زبان ماشین ۰ و ۱) جهان را ساخت.

گریس هاپر تا سن ۷۹ سالگی به عنوان دریاسالار در نیروی های ذخیره فعال نیروی دریایی ارتش آمریکا خدمت کرد. وی نخستین زنی بود که درجه دکترای ریاضی را در دانشگاه ییل (Yale) دریافت کرد و نیز به‌عنوان پیرترین افسر در خدمت نیروی دریایی آمریکا بود.

خانم گریس هاپر ”Grace Hopper“ نابغه نرم افزار
خانم گریس هاپر ”Grace Hopper“ نابغه نرم افزار

رایانه ABC – Atanasoff ,Berry Computer:

یکی از اولین تلاش ها برای ساخت یک کامپیوتر کاملاً الکترونیکی (که در آن از وسایل مکانیکی مثل چرخ دنده، تسمه و شافت ها و … خبری نباشد) در سال ۱۹۳۷، بدست پروفسور آتاناسوف ”Atanasoff“ و دانشجویش کلیفورد بری ”Berry“ در دانشگاه ایالتی ایووا آمریکا شروع شد.

بالاخره آنها در سال ۱۹۴۱ موفق به ساخت رایانه ABC شدند که می توانست ۲۹ معادله ریاضی را با ۲۹ مجهول به صورت همزمان حل کند. این کامپیوتر اولین ماشینی بود که اطلاعات را در خازن های الکتریکی ذخیره می کرد، کاری که کامپیوترهای امروزی نیز در حافظه های اصلی (DRAM) از آن بهره میبرند.

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

تصویری از رایانه ABC
تصویری از رایانه ABC

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

پس از پایان جنگ جهانی دوم طراحی و توسعه آن دیگر پیگیری نشد.

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

رایانه Colossus

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

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

اما کلوسوس تنها برای هدفی خاص (شکستن کد) ساخته شده بود و قابل برنامه ریزی نبود. و در آن از اجزای مکانیکی مثل قرقره استفاده شده بود.

تصاویری از رایانه Colossus – به حضور قرقره ها (Pulleys) در دو تصویر زیر توجه کنید.

رایانه Z1-Zuse

Mark I، ABC و Colossus همه با مشخصات مشابهی ساخته شده بودند. و پیشگامان کامپیوتر آمریکای و بریتانیای هنوز در مورد اینکه چه کسی اولین رایانه را ساخته است استدلال های مختلفی می کنند.

اما هنگامی که در سال ۱۹۶۵ اطلاعات کاری کنراد زاس آلمانی برای اولین بار به انگلیسی ترجمه و چاپ شد، از این نوشته ها برداشت شد که وی یک سری رایانه چند منظوره را در آلمان ساخته است که اولین آنها با نام Z1 مابین سالهای ۱۹۳۶ و ۱۹۳۸ در سالن خانه پدری وی ساخته شده است.

دستگاه سوم زاس با نام Z3 در ۱۹۴۱ ساخته شد. که احتمالاً اولین کامپیوتر دیجیتال عملیاتی چند منظوره قابل برنامه ریزی (که توسط نرم افزار کنترل می شده است) بوده است.

زاس بدون آگاهی از افکار مخترعان ماشین حساب قبل از خود، از زمان Leibniz (که در ۱۶۰۰ زندگی میکرد) به بعد، دوباره مفهوم برنامه ریزی و تصمیم بابیج را به روش خود برای ارائه و نمایش اعداد به صورت دیجیتال (دودویی) ابداع کرد این در حالی بود که بابیج از سیستم اعداد اعشاری استفاده کرده بود.

تصویری از رایانه Z1-Zuse
تصویری از رایانه Z1-Zuse

ماشین Z3 بر اثر بمباران های هوایی نیروهای متفقین از بین رفت، Z1 و Z2 نیز به همین سرنوشت مبتلا شدند اما Z4 از این حملات نجات پیدا کرد به این دلیل که زاس آن را در یک واگون واقع در زیر کوه ها، مخفی کرده بود.

با توجه به اوضاع نابسامان آلمان، نبود مواد اولیه مناسب و نیروی کار ماهر در طول جنگ جهانی دوم، دستاوردهای کنراد زاس بسیار باورنکردنی است. زاس حتی امکان تهیه نوارهای کاغذی را نداشت (کارت پانچ) و به همین دلیل از نگاتیوهای دورریختنی فیلم ها برای ساخت کارت پانچ استفاده می کرد.

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

زاس همچنین یک زبان سطح بالا با نام Plankalkul طراحی کرد که ممکن است اولین زبان سطح بالا بوده باشد هرچند که آن هم در خارج از آلمان ناشناخته باقی ماند.

رایانه ENIAC

ENIAC : the “Electronic Numerical Integrator and Calculator”

عنوان پدر (جد) تمام کامپیوترهای دیجیتال امروزی همواره به انیاک اعطا شده است.

کامپیوتر انیاک در دانشگاه پنسیلوانیا بین سالهای ۱۹۴۳ تا ۱۹۴۵ توسط دو پروفسور به نام های جان ماچلی (John W.Mauchly) و پریسپر اکرت (Presper Eckert) 24 ساله ساخته شد. آنها به وزارت جنگ قول داده بودند تا دستگاهی طراحی کنند که جایگزین همه کامپیوترها (زنانی که برای محاسبه جداول آتش توپخانه به استخدام ارتش درآمده بودند) شود و به همین دلیل توسط وزارت جنگ پشتیبانی مالی می شدند.

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

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

انیاک این رایانه نیم میلیون دلاری، ۳۰ تن وزن، ۳۰ متر طول، ۲/۴ متر ارتفاع، ۱۵۰۰ رله و ۱۷۴۶۸ لامپ خلاء داشت و ۲۰۰ کیلووات برق مصرف میکرد و میتوانست در هر ثانیه ۵۰۰۰ عمل جمع یا ۳۰۰ عمل ضرب را انجام دهد که صدها برابر سریع تر از وسایل آن زمان بود.

انیاک همچون مارک ۱ از کارت خوان های (نوارهای کاغذی) توسعه داده شده توسط IBM استفاده می کرد.

رایانه انیاک
رایانه انیاک

در هنگام کار، انیاک بی صدا و ساکت بود اما بدلیل استفاده از ۱۷۴۶۸ لامپ خلاء گرمای بسیار زیادی تولید می شد (چیزی حدود ۱۷۴۰۰۰ وات) و این یعنی: این رایانه تنها در یک اتاق خاص که دارای سیستم تهویه هوای پر قدرتی بود قادر به کار بود.

برای تغییر برنامه انیاک شما باید کابلهای اتصال (patch cords) (سمت چپ تصویر اسلاید قبل) و همچنین ۳۰۰۰ سوئیچ مختلف (سمت راست تصویر اسلاید قبل) را تنظیم می کردید. این در حالی است که در کامپیوترهای جدید به راحتی برنامه های خود را تایپ می کنید و دستورالعمل های خود را اجرا می کنید مثل کد زیر:

Circumference = 3.14 * diameter

اما برای اجرای همین عبارت با انیاک باید تعداد زیادی کابل اتصال را جابجا می کردید و بعد باید از بین دستگیره های بسیار زیاد دیوار دستگیره ها، ۳ دستگیره خاص را پیدا و مقدار آنها را ۳، ۱ و ۴ تعیین می کردید.

Reprogramming ENIAC involved a hike [U.S. Army photo] برنامه نویسی انیاک به پیاده روی نیاز داشته است!!!
Reprogramming ENIAC involved a hike [U.S. Army photo]برنامه نویسی انیاک به پیاده روی نیاز داشته است!!!
یکی از مشکلات مهم استفاده از انیاک این بود که تمام ۱۸۰۰۰ لامپ خلاء آن باید به طورهمزمان کار می کردند تا این دستگاه عملکرد درستی داشته باشد. اما مشکل بزرگ این بود که لامپ های خلاء آشکارا قابل اعتماد نبودند و حتی بعد از بیست سال از تولید آنها در فروشگاههای مختلف دستگاهی برای آزمایش لامپهای خلاء بفروش می رفت تا مردم از آنها برای آزمایش لامپ های خلاء تلویزیون هایشان استفاده کنند.

تلویزیون ها تنها از یک مجموعه ۲۰ تایی از لامپ های خلاء استفاده می کردند و بزرگترین مجموعه لامپ خلاء استفاده شده در دستگاههای الکتریکی آن زمان ۱۶۰ عدد بود.

همین عوامل باعث شده بود که بزرگترین عرضه کننده تیوب های خلاء (vacuum tube) آن روزها با نام RCA ایده کار همزمان ۱۸۰۰۰ لامپ (تیوپ) خلاء را غیر محتمل بداند و از مشارکت در پروژه انیاک خودداری کند، اما بدلیل مشارکت های زمان جنگ این پشتیبانی صورت گرفت.

اکرت مشکل قابلیت اطمینان تیوب های خلاء را با طراحی بسیار دقیق مدارات تا حد زیادی حل کرد.

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

به هر حال با وجود ۱۸۰۰۰ لامپ خلاء انیاک فقط قادر بود ۲۰ عدد را در یک زمان ذخیره کند و به لطف حذف قطعات مکانیکی در طراحی آن، باعث شده بود تا انیاک بسیار سریعتر از مارک ۱ (Mark I) عمل کند.

تصاویری از لامپ های خلاء رایانه ENIAC
تصاویری از لامپ های خلاء رایانه ENIAC

توان محاسباتی انیاک:

اجرای عمل ضرب که در مارک ۱ به ۶ ثانیه زمان نیاز داشت حالا در انیاک در ۲٫۸ هزارم ثانیه صورت می پذیرفت. سرعت سیکل ساعت اینیاک ۱۰۰۰۰۰ سیکل در ثانیه بود. برای مقایسه بهتر است بدانید که امروزه (۲۰۱۲ میلادی) سرعت معمول بسیاری از پردازشگرهای خانگی تا ۴۰۰۰,۰۰۰,۰۰۰ سیکل در ثانیه می رسد.

اجرای اولین مسئله کامل توسط انیاک ۲۰ ثانیه طول کشید. پاسخ بدست آمده قابل مقایسه با اجرای یک مسئله ۴۰ ساعته در یک ماشین حساب مکانیکی بود.

اولین ماموریت ویژه رایانه ENIAC

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

اولین ماموریت ویژه رایانه ENIAC پردازش محاسبات ساخت بمب هیدروژنی
اولین ماموریت ویژه رایانه ENIAC پردازش محاسبات ساخت بمب هیدروژنی

منابع

مبانی رایانه: فریبا خشه چی چاپ ۱۳۸۱

computersciencelab

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

پاسخ دهید

12 + 5 =

Top