حاسوب

الحاسوبأوالحاسِبأوالحاسِبَة(بالإنجليزية:Computer)‏ هوآلةيمكن برمجتهالتُنفِّذ آلياً سلسلة من العملياتالحسابيةوالمنطقية. يمكن للحواسيبالإلكترونية الرقميةالحديثة أن تُنفِّذ مجموعات من العمليات تُسمَّىالبرامج، مما يَسمح لها بتنفيذ طَيفٍ واسعٍ من المُهِمَّات. يُشير مصطلحنظام حاسوبيعموماً إلى حاسوبٍ فيهبرمجياتوعَتادونظام تشغيل، بالإضافة إلىالطَّرفياتالضرورية لإتمام العمليات، وقد يُشير المصطلح نفسه إلى مجموعة من الحواسيب الموصولة ببعضها البعض، والتي تعمل معاً مثلشبكات الحاسوبوعناقيد الحَوسَبة.
يعتمد طَيفٌ واسعٌ من التطبيقات الصِّناعيةوالمنتجات الإلكترونية الاستهلاكيةعلى الحواسيب بوصفهاأنظمة تحكُّم. ويشمل هذا الطيف الأجهزة البسيطة محدَّدة الاستعمال، مثل:فُرن الأمواج الصُّغريَّة،وأجهزة التحكم عن بعد؛ والأجهزة البسيطة عامة الاستعمال، مثل:الحواسيب الشخصية،والأجهزة المحمولة باليد،والهواتف الذكية؛ والأجهزة الصناعية، مثلالإنسالات الصناعية.
ساعدتالمَعاديدالناس في إنجاز الحسابات البسيطة منذ أقدم الأزمنة، وكان هذا هو الهدفُ من تطوير الحواسيب الأولى. بُنيت أيضاً آلات ميكانيكية في بداياتالثورة الصناعيةلعمل المهمات الطويلة المُمِلَّة، مثل توليد أنماط هندسية تكرارية لعملالمناسِج. ثُمَّ طُوِّرت آلات كهربائية ميكانيكية أكثر تعقيداً في مطلع القرن العشرين اعتمدت علىالإلكترونيات التماثلية، أما أوَّلآلات الحِساب الرقمية، فقد طُوِّرَت في أثناءالحرب العالمية الثانية، واعتُمِدَ التصميمالميكانيكي الكهربائيوالصمامات المُفرَّغةمعاً. طُوِّرتترانزستوراتأشباه الموصولاتفي أواخر عقد الأربعينيات من القرن العشرين، تلاهاترانزستورات الأثر الحقلي للأكاسيد المعدنية لأشباه المُوصِلاتالمَبنيَّة على ركيزة منالسيلكون، تلاها تقانات رقائقالدارات المتكاملةفي أواخر الخمسينيات وصولاً إلىالمعالجات الصغريةفي السبعينيات. زادت سرعة الحواسيب وقدراتها ومجالاتها زيادة كبيرة منذ ذلك الوقت، مع زياد سريعة في عدد الترانزستورات في الشريحة (يتضاعف هذا العدد مرة كل سنتين حسبقانون مور) وصولاً إلى الثورة الرقمية في أواخرالقرن العشرينومطلعالقرن الحادي والعشرين.
يتكون الحاسوب المعاصر عموماً من عنصر معالجة واحد على الأقل، غالباً ما يكونوحدة معالجة مركزيةبهيئة معالج صغري، ويُلحَق بهاذاكرةمكونة من رقائقأشباه مُوصِلاتبالإضافة لأجهزة الإدخال، مثل لوحة المفاتيح والفأرة، والإخراج مثلالشاشةوالطابعة، والإدخال والإخراج مثلشاشة اللمس. يُنفِّذ عنصر المعالجة العمليات الحسابية والمنطقية، في حين تعمل وحدة التحكم فيه على تغيير ترتيب العمليات بما يتوافق مع المعلومات المخزَّنة، أما أجهزة إدخال البيانات وإخراج المعلومات، فتَربط عنصر المعالجة مع العالم الخارجي.
كلمة حاسوببالإنجليزيةهي (computer)، وتُشتق من الفعل (بالإنجليزية:Compute)‏ وهو يعني حَسَبَ أو حَدَّدَ قيمة ما باستعمال العمليات الحسابية أو الرياضية، أما (computer) فهي تدل على من يعمل الحِساب، فإما أن يكون شخصاً يُجري الحساب، وهو أول معنى لهذه الكلمة وأقدمها، ويرجع استعماله إلى قرابة سنة 1646م، وإما أن يُشير إلى آلة حِساب، وبخاصةٍ إلكترونية، تُجري عمليات رياضية ومنطقية، ويرجع أقدم استعمال مُوثَّق للكلمة بهذا المعنى لسنة 1897م.
أما في العربية، فسواء أسمَيت الآلة حاسوباً أو حاسباًأو حاسبةً، فالجذر هو (ح س ب)، وقد أوردلسان العربست دلالات لهذا الجذر، هي ما يدل على:
يحمل اسم هذه الآلة في العربية المعنى الرابع (الدلالة على العدد). أما حاسب وحاسبة، فهما على صيغةاسم الفاعل، الأول مذكره والآخر مؤنثه، وهو لفظ مستحدَث يدل على آلة الحِساب،وأما (حاسوب) فهياسم آلةوزنها فاعول،وهي صيغة تدل على المبالغة في الآلة نفسها.
وقد أوردت معاجم التقانة في أغلبها لفظ حاسوب مقابلاً للمصطلح الأجنبي، كما أوردت لفظ حاسب وحاسبة ومِحْساب كذلك، وذكر بعضها المصطلح منقولاً نقلاً حرفياً بصيغة: "كُمْبيُوتر"(الجمع: كمبيوترات) أو "الكومبيوتر". وفي ما يأتي بيان المشتقات الإنجليزية من اللفظة (compute) وما يقابلها في العربية في جملة من المعاجم العامة والمختصة:
استُعملت الأدوات للمساعدة على العد منذ آلاف السنين، وغالباً ما اعتُمِدَتالأصابع. يُعتقد أن أقدم أدوات العد كانت على هيئةعصا تسجيل. ظهرت أول السجلات في منطقةالهلال الخصيبعلى هيئة حصوات أو كرات طين في مخاريط من الطين غير المشوي، والغالب أنها استُعمِلت لتدوين الأعداد المرتبطة بالمحاصيل والغلال.
واستعملتالمِعدداتأولاً لإنجاز المهام الحسابية. وقد طُوِّرالمعداد الرومانيمن أداة استُعمِلت فيبابلمنذ سنة 2400 قبل الميلاد على الأقل. وظهرت بعد ذلك أشكال عدّة من ألواح الحساب أو جداوله. وكانت توضع في مكاتب الحساب في العصور الوسطى في أروبا قطعة من الملابس على الطاولة، وتُحرَّك علامات مُحددة فوقها حسب قواعد معينة لتساعد على حسابات المال والأعمال.
وتعدآلة أنتيكيثيراأقدمحاسوب تماثليميكانيكي معروف، حيث اكتشفت سنة 1901م في حطام سفينة مقابل ساحل جزيرةأنتيكيثيرااليونانية الواقعة بينكيثيراوكريت. يُقدَّر أنها صُممت في القرن الثاني قبل الميلاد لحساب المواقع الفلكية. لم تظهر آليات مُعقَّدة يمكن مقارنتها بآلة أنتيكيثيرا حتى القرن الرابع عشر الميلادي.
ساعدت الحيل الميكانيكية في الحساب والقياسات، واستعملت لبنان أدوات فلكية كان لها أثرٌ جلي في تطور المِلاحة. وضع البيرونيخريطة نجوم دائريةفي القرن الحادي عشر الميلادي.اُخترعالأسطُرلابفيالعصر الهلنستيبين القرنين الثاني والأول قبل الميلاد، وغالباً ما يُنسب إلىأبرخش، وهو عملياً حاسوب تماثلي قادر على حل مشكلات عديدة فيالفلك الكروي، يتكون الأسطُرلاب منديوبتراوخريطة نجوم دائرية لآلية ميكانيكية لحساب التقويم.
جمع الأسطرلاب الكروي بين الأسطرلاب التقليديوذات الحلقأو الأُسطرلاب الكروي، وصُنع في العالم الإسلامي خلال العصر الذهبي للحضارة الإسلامية.يُسند أقدم وصف معروف للأسطرلاب الكروي إلىأبي العباس النيريزي، قرابة 892–902 م. أماشرف الدين الطوسي، فقد اخترعالأسطرلاب الخطي، الذي يُسمى أيضاً "عصاة الطوسي"، وكان "قضيباً بسيطاً من الخشب من غير رسوم عليه علامات متدرجة، ومزُوَّد بخط ناظم ووتر مزدوج لعمل القياسات الزاويَّة بمؤشر مثقوب". أما الأسطرلاب الميكانيكي، فقد اخترعه أبو بكر الأصفهاني سنة 1235م.واخترع البيروني أول أسطرلاب ميكانيكي فيهتقويم شمسي قمريوتروس متقاطرةقرابة سنة 1000 ميلادية.
طُورتالمسطرة القطاعيةفي أواخر القرن السادس عشر الميلادي، حيث استعملت لحل مشكلات تتضمن الضرب والقسم والمثلثات ولحساب الجذور التربيعية والتكعبيبة، وكان لها تطبيقات مهمة في المدفعية ومسح الأراضي والملاحة. أمامقياس السطوح، أو الممساح، فكان أداة يدوية تُستعمل لحساب مساحة سطح مغلق من خلال الحركة فوقه.
اخترعويليام أوتريدالمسطرة الحاسبةفي العقد الثالث من القرن السابع عشر بعد فترة قصيرة من نشر مفهوماللوغاريتم. المسطرة الحاسبة بالأساس هي حاسوب تماثلي مُشغل يدوياً يُنجز الضرب والقسمة، وأضيف إليها لاحقاً حساب المربعات والجذور التربيعية والمكعبات والجذور التكعيبية بالإضافةللدوال المتساميةنحو دوال اللوغاريتمات والدوال الأسية والزائدية والمثلثية. ما تزال المساطر الحاسبة متداولة، ويمكن استعمالها لإجراء حسابات تكرارية سريعة، وأشهر أمثلتهاالمسطرة E6Bالتي تُستعمل في حساب المسافات عند التدريب على الطيران، أو في بعض الرحلات البسيطة.
بنىصانع الساعاتالسويسريبيير جاكيه دروزفي عقد السبعينيات من القرن الثامن عشر لعبة ميكانيكية (آلة ذاتية التشغيل) يمكنها الكتابة بقلم مع إمكانية لتغيير الإعدادات لإنتاج حروف مختلفة. وهذا يعني أنها كانت تقبل البرمجة الميكانيكية. تُعرض هذه الآلة، إلى جانب آلتين معقدتين أُخريين في متحف الفن والتاريخ (بالفرنسية:Musée d'Art et d'Histoire)‏ فينوشاتيلفي سويسرا.
وقد صنع المهندس والرياضيجيوفاني بلاناآلةتقويم دائمبين عامي 1831 و1835م. اعتمدت الآلة على الأسطوانات والبكرات، وكانت قادرة على تحديد يوم الأسبوع الموافق لأي يوم في أي سنة ميلادية بين 1 و4000م، بما في ذلك السنوات الكبيسة. واخترعوليم طومسونآلة لتوقع حركة المد والجزرفي عام 1872م، وكانت ذات فائدة كبرى في الملاحة قرب السواحل. اعتمدت آلة طومسون على البكرات والأسلاك لحساب توقع لمستوى المد والجزر لموقع محدد.
اعتمدالمحلل التفاضليعلى آلية ميكانيكية مكونة من الأقراص والبكرات لإنجازالتكاملاتلحلالمعادلات التفاضلية، وهو يُعد حاسوباً ميكانيكياً تماثلياً، يتكون المحلل من عدد من المكاملات، يكون خرج المكامل هو دخل المكامل التالي أو آلة الرسم. وكان وليم طومسون قد ناقش في سنة 1876م إمكانية إنشاء حاسبات مشابهة، ولكنه أُحبط من عزم الدوران الناتج عنمكاملات الكرات والأقراص.كان تطويرمضخم عزم الدورانهو ما دفع تطوير المحلل.
بدأليوناردو توريس كيبيدوفي العقد الأخير من القرن التاسع عشر بتطوير سلسلة من الآلات التماثلية القادرة على إيجاد الجذور الحقيقية والمركبةلعديدات الحدود.ونشرت الأكاديمية الفرنسية للعلوم نتائج أعماله سنة 1901م.
ترجع أصول الحاسوب القابل للبرمجة إلى مهندس الميكانيك والموسوعي الإنكليزيتشارلز بابيج. صاغ بابيج مفهومالحاسوب الميكانيكيوصنعه في بدايات القرن التاسع عشر، لذلك يُنظر إليه على أنه المؤسس الحقيقي لعلم الحاسوب.
كشف بابيج سنة 1822م، بعد فترة من عمله علىمحركه التفاضلي، عن اختراعه: الحاسوب الميكانيكي، وكان ذلك بورقة بحثية أرسلها إلىالجمعية الفلكية الملكيةعنوانها: ملاحظات على تطبيق المكننة لحساب الجداول الرياضية والفلكية (بالإنجليزية:Note on the application of machinery to the computation of astronomical and mathematical tables)‏. أدرك بابيج سنة 1833م إمكانية تعميم عمله وإنشاءمحرك تحليلييمكن تزويده ببرنامج دخل وبيانات باستعمالبطاقات مثقوبة، وكانت هذه الطريقة شائعة في أيامه لضبط عملالمناسجمثلمنسج جَكَرد. أما الخرج فكان طابعة وراسمة منحنيات وجرسًا، وكانت الآلة قادرة، بالإضافة لذلك، على تثقيب بطاقات لقراءتها لاحقاً. احتوت الآلة علىوحدة حساب ومنطق، وعلى انسياب للتحكم بصورةتعابير شرطيةوحلقاتوذاكرةليكون بذلك التصميم الأول لحاسوب عام يمكن وصفه بأنهمكتمل وفقاً لتورنغ.
احتاجت آلة بابيج لآلاف القطع الميكانيكية يدوية الصنع، وهذه كانت عقبة رئيسة واجهتها الآلة، ثُمَّ توقف المشروع نهائياً بعد أن أوقفت الحكومة البريطانية التمويل. سبقت آلة بابيج عصرها قرناً على الأقل، ويمكن القول أن سبب إخفاق بابيج في إنهاء محركه التحليلي كان الصعوبات المالية والسياسية إلى جانب إصراره على صنع آلة شديدة التعقيد يسبق بها كل أقرانه. أكملهنري بابيجعمل والده وصنع نسخة مُبسَّطة من وحدة الحساب في المحرك التحليلي سنة 1888م، وقدم عرضاً ناجحاً لكيفية استعمالها في جداول الحوسبة سنة 1906م.
ذكرليوناردو توريس كيبيدوفي عمله الذي نشره سنة 1914 وعنوانه مقالات في الأتمتة (بالإنجليزية:Essays on Automatics)‏ جهود بابيج في إنشاء محرك تفاضلي ميكانيكي ومحرك تحليلي. وصف كيبيدو المحرك التحليلي بأنه تنفيذ لنظرياته حول القدرة الكامنة في الآلات، وجعل مشكلة تصميم هذا المحرك تحدياً لمهاراته بصفته مخترعاً لآلات ميكانيكية كهربائية. تضمن العمل تصميماً لآلة قادرة على حساب قيمة الصيغةax(y−z)2{\displaystyle a^{x}(y-z)^{2}}آلياً من أجل مجموعة من القيم المتغيرة. كانت الآلة محكومة ببرنامج قروء فقط تضمَّن بنى متفرَّعة شرطية، قدَّم كيبيدو في هذا العمل أيضاً فكرةحسابات الفاصلة المتحركة.
عرض كيبيدو في باريس سنة 1920 مقياسَ حسابٍ ميكانيكياً كهربائياً في الذكرى المئوية لاختراعمقياس الحساب. تكوَّن المقياس من وحدة حساب متصلة من عامل يحدد الدخل الذي يكون بصورة أوامر، أما الخرج فيطبع آلياً.أظهر هذا العرض إمكانية تصنيع محرك تحليلي ميكانيكي كهربائي.
ساعدت الحواسيب التماثلية التي ازداد تعقيدها في النص الأول من القرن العشرين في إنجاز العديد من الحسابات العلمية، واعتمَدَتْ هذه الحواسيب عادة على نموذج كهربائي أو ميكانيكي للمشكلة أساساً لبدء الحساب. لكن هذه الحواسيب افتقدت الدقة مقارنة بنظيراتها الرقمية المعاصرة، ولم يكن بالإمكان برمجتها، بل كانت تُصمَّم لحل مُشكلة محددة سلفاً.كانتآلة توقع المد والجزرالتي صنعوليام طومسوننموذجها الأول سنة 1872م أول حاسوب تماثلي معاصر. أماالمحلل التفاضلي، الذي صممهجيمس طومسون، شقيق وليام، سنة 1876، فاعتمد الأقراص والعجلات لإنجازالتكاملاتلحلالمعادلات التفاضلية.
بلغ تصنيع الحواسيب الميكانيكية التماثلية ذروته مع المحلل التفاضلي الذي بناههارولد لوك هازنوفانيفار بوشفيمعهد ماساتشوستس للتقانةبدءاً من سنة 1927م. بُني هذا المحلل باستعمال المكاملات الميكانيكية التي صنعهاجيمس طومسون، ومضخمات عزم الدورات التي اخترعها هنري نيمان (بالإنجليزية:Henry Nieman)‏.
أنهى ظهور الحواسيب الرقمية الإلكترونية في خمسينيات القرن العشرين عصر آلات الحساب الميكانيكية، ولكنها بقيت في الاستعمال خلال الخمسينيات في تطبيقات محددة، مثل التعليم (المسطرة الحاسبة)، والطيران (نظم التحكم).
طورتبحرية الولايات المتحدةبحلول العام 1938م حاسوباً تشابهياً ميكانيكياً كهربائياً صغيراً بما فيه الكفاية ليوضع فيغواصة. استعمل هذا الحاسوب لحل مشكلةالحسابات المثلثيةالمرتبطة بإطلاقطُربيدعلى هدف متحرك، وسُمِّيحاسوب بيانات الطربيد، وقد طورت نماذج عديدة مشابهة في دول أخرى خلالالحرب العالمية الثانية.
كانت الحواسيب الرقمية المبكرةميكانيكية كهربائية، تسحب فيها مفاتيح كهربائيةمرحلاتميكانيكية لإجراء الحسابات. حاسوبزد2الذي صنعه المهندس الألمانيكونراد سوزهفي برلين سنة 1939م هو أحد أوائل الحواسيب من هذا النوع. كانت هذه الحواسيب بطيئة في إجراء العمليات، ولم تدم لفترة طويلة، ليحل محلها حواسيب كهربائية بالكامل استعملتالصمامات المفرغة.
تابع سوزه العمل وصنع في سنة 1941 حاسوباً أكثر تعقيداً أسماهزد3، وكان أول حاسوب ميكانيكي كهربائي رقمي يمكن برمجته.بُني زد3 باستعمال 2000 مُرحِّلة وعملبكلماتطولها 22بتبتردد 5-10هرتز.
زوِّد الحاسوب بالبرامج باستعمال شريط رقيق مثقوب، أما البيانات فكانت تُخزَّن في ذاكرة تتسع 64 كلمة تُدخل من لوحة المفاتيح. تشابه هذا الحاسوب مع الحواسيب المعاصرة في مسائل عديدة، منها مثلاً القدرة على إجراءحسابات تتضمن فاصلة متحركة. اعتمد حاسوب سوزه علىنظام العد الثنائي، وكان تصميم الآلة أبسط وأسهل من تصميم آلة بابيج الذي اعتمدنظام العد العشريقياساً للتقانات الموجودة في ذلك الزمن. لم يكن زد3 حاسوباً عاماً، ولكن كان بالإمكان توسعته ليصبحكاملاً حسب تورنغ.
تأخر سوزه في صناعة الحاسوب التالي؛ بسبب الحرب العالمية الثاني، ولكنه انتهى من صنع حاسوبزد4في سنة 1950م، وأصبح بذلك أول حاسوب تجاري في التاريخ، وسُلِّمللمعهد الاتحادي السويسري للتقانة في زيورخ.صُنع الحاسوب في شركة أسسها سوزه اسمها: سوزه التضامنية المحدودة (بالألمانية:Zuse  Kommanditgesellschaft) اختصاراً Zuse KG، أنشئت سنة 1941م وكانت الشركة الأولى التي تتخصص فقط بتطوير الحواسيب في برلين.
حلت العناصر الإلكترونية في الدارات محل مكافآتها الميكانيكية والميكانيكية الكهربائية في الوقت نفسه الذي ساد فيه الحساب الرقمي على الحساب التماثلي. بدأتومي فلاورز، وهو باحث فيمركز أبحاث مكتب البريدفي لندن في ثلاثينيات القرن العشرين، التجارب على استعمال الإلكترونيات فيمقاسم الهاتف. صُنعت نماذج تجريب سنة 1934، ثم استعملت في إنجاز العمليات بعد 5 سنوات، فحولت جزءًا من شبكة مقاسم الهاتف إلى نظام إلكتروني لمعالجة البيانات بالاعتماد على آلافالصمامات المفرغة.طوَّرجون أتاناسوفوكليفورد بيريمنجامعة ولاية آيواحاسوب بيري وأتاناسوفوجربوه سنة 1942م، وكان أول حاسوب "رقمي إلكتروني ذاتي التشغيل". كان هذا الحاسوب ذا تصميم إلكتروني بالكامل، فيه 300 صمام مُفرَّغ مع مكثفات مثبَّتة على أسطوانات دوَّارة تمثِّل الذاكرة.
نجح مستخرجو التعمية الإنجليز فيحديقة بلتشليخلال الحرب العالمية الثانية في اختراق الاتصالات الألمانية العسكرية المُعمَّاة. كانت آلةإنجماالألمانية هدفاً رئيساً لمستخرجي التعمية الذي استعملوا آلة سميتبُمب(بالإنجليزية:bombe)‏، ولعبت النساء دوراً بارزاً في عملية استخراج المعمى هذه.
أما لاستخراج مُعمَّى آلات ألمانية أكثر تعقيداً مثلآلة لورينز للتعمية، والتي استعملت عاد لتعمية اتصالات القيادة العليا للجيش الألماني، فقد بنىماكس نيومانحاسوبكولوسس.استغرقت عملية تصميم الحاسوب وبناؤه 11 شهراً بدءاً من شهر فبراير 1943م.اجتاز كولوسس اختبارًا للتجريب بنجاح، ثم شُحِن إلى حديقة بلتشلي، وسُلِّم في 18 يناير 1944،ليبدأ العمل في استخراج المُعمَّى في 5 فبراير من العام نفسه.
كولوسس هو أول حاسوب إلكتروني رقمي يمكن برمجته،استعملت الصمامات المفرَّغة في بنائه. كان دخل كولوسس شريطاً من الورق، وكان قادراً على معالجة الدخل باستعمال مجموعة متنوعة من العمليات المُعرَّفة حسبجبر بول، لكنه لم يكنكاملاً حسب تورنغ. سُمي هذا الحاسوب بالإصدار الأول (بالإنجليزية:Colossus Mark I)‏، ورقيَّت هذه الآلة إلى إصدارٍ ثان (بالإنجليزية:Colossus Mark II)‏، وصنع منها 9 نسخ فقط، ليكون المجمل، مع الآلة التي رُقِّيت 10 آلات. ضمَّ الإصدار الأول 1500 صماماً والثاني 2400، وكان الإصدارات أسرع بخمس مرات منالإصدار الأول لحاسوب هَرفرد، وكان استعمالهما أبسط ما سرَّع عملية فك التعمية.
الحاسوب والمكامِل الرقمي الإلكتروني (بالإنجليزية:Electronic Numerical Integrator And Computer)‏ تختصر ENIAC، وتُلفظإنياك، هو أول حاسوب إلكتروني يمكن برمجته يُبنى في الولايات المُتحدة.كان إنياك أسرع من كولوسس وأسهل بالاستعمال، وكان كاملاً حسب تورنغ. يُعرَّف البرنامج في إنياك حسبحالةالمفاتيح والكبلات. ويلزم إدخاله يدوياً إلى الآلة، بعد أن يُكتب، باستعمال مقابس ومفاتيح. عملت ست نساء في برمجة إنياك، وأُشير إليهم معاً باسم "فتيات إنياك" (بالإنجليزية:ENIAC girls)‏.
بدأ تطوير إنياك وبناؤه في سنة 1943م تحت إشرافجون ماكليوجون برسبر إيكيرتفي جامعة بنسلفانيا، ودخل الخدمة سنة 1945م. جمع هذا الحاسوب بين سرعة الإلكترونيات العالية وإمكانية البرمجة، ومكَّنه ذلك من حل مشكلات معقدة. كان إنياك قادراً على إنجاز 5000 آلاف عملية جمع أو طرح في الثانية، أسرع بألف مرة من الآلات الأخرى. وكان قادراً أيضاً على حساب الضرب والقسم والجذر التربيعي، وكانت ذاكرته عالية السرعة محدودة بعشرين كلمة فقط، قرابة 80 بايتاً. ولكنه كان هائل الحجم، يزن 30 طناً، ويحتاج 200 ألف واط من الاستطاعة الكهربائية لتغذية 18 ألف صمام مُفرَّغ و1500 مُرحِّلة ومئات الآلاف من المقاومة والمكثفات والوشائع.
اقترحآلان تورنغمفهوم الحاسوب المعاصر في ورقة بحثية نُشرت سنة 1937م عنوانها: "عن الأرقام الحَسُوبة أوالأعداد القابلة للحساب(بالإنجليزية:Computable Numbers)‏،أشار تورنغ في عمله إلى آلة بسيطة سمَّاها (آلة الحوسبة العامة) (بالإنجليزية:Universal Computing machine)‏، وهي تُسمَّى اليومآلة تورنغ العامة. أثبت تورنغ أن آلة كهذه تستطيع حساب أيعملية حَسُوبة (أعداد قابلة للحساب)من خلال تنفيذ برنامج مكوَّن من مجموعة تعليمات مخزونة على شريط، وهذا يعني إمكانية برمجة الآلة. لقد تمحور تصميم تورنغ حول مفهوم جوهري هوالبرنامج المخزونحيث تُخزَّن كل تعليمات الحوسبة في الذاكرة. يُرجعجون فون نيومانالفضل في تطوير الحاسوب الحديث إلى هذا المفهوم المركزي.ما تزال آلات تورنغ مادة للدراسة فينظرية الحوسبة. على فرض إهمال حجم الذاكرة المحدود نظرياً، فإن الحواسيب المعاصرة هيكاملة حسب تورنغ، وهذا يعني أنها قادرة على تنفيذالخوارزمياتتنفيذاً يُجارِي آلة تورنغ العامة.
عملت آلات الحوسبة المبكرة ببرامج ثابتة، لذلك كان التغيير في وظيفتها يتطلَّب تغييراً في توصيل الأسلاك، وفي بنية الآلة.ولكن هذا تغيير مع اقتراح استعمال البرامج المخزونة، فأصبحت الآلات تتضمن في تصميمهامجموعة تعليمات، وتدعم تخزينبرنامجمُكوَّن من هذه التعليمات في الذاكرة، وتكون تفاصيل الحوسبة في هذا البرنامج. وضعآلان تورنغالأساس النظري لحاسوب البرنامج المخزون في ورقة بحثية نشرها سنة 1936م. انضم تورنغ في سنة 1945م إلىالمختبر الفيزيائي الوطني، وبدأ العمل على تطوير حاسوب برنامج مخزون إلكتروني رقمي، وكان تقريره المنشور في السنة نفسها والمعنون: حاسبة إلكترونية مقترحة (بالإنجليزية:Proposed Electronic Calculator)‏ أول مُحددات لآلة من هذا النوع. نشر جون فون نويمان في الوقت ذاته في جامعة بنسلفانيا تقريراً حول الحاسوب الذي يطوره عنوانه: "المسودة الأولى لتقرير عن إدفاك" (بالإنجليزية:First Draft of a Report on the EDVAC)‏.
كانتآلة مانشستر التجريبية صغيرة النطاقالشهيرة باسم صغير مانشستر (بالإنجليزية:Manchester Baby)‏ أول حاسوب برنامج مخزون في العالم. بناهافريدريك وليامزوتوم كِلبرنوجيوف توتيلفيجامعة مانشسترفي إنجلترا، نجحت الآلة في تشغيل أول برامجها في 21-06-1948م.صُمِّم هذا الحاسوب بالأساس ليكون منصة اختبارلأنبوب ويليامز: أول أداة تخزين رقمية تدعم ميزةالوصول العشوائي.وُصِف صغير مانشستر سنة 1998م في مراجعة نقدية بأنه "صغير وبُدائي"، ولكنه كان أول آلة عاملة تضم كل العناصر الرئيسة لحاسوب إلكتروني معاصر.بعد أن ظهرت جدوى تصميم صغير مانشستر، بدأ مشروع جديد في الجامعة لتطويره إلى حاسوب يمكن الاستفادة منه عملياً، ونتج عن ذلكالإصدار الأول لحاسوب مانشستر(بالإنجليزية:Manchester Mark 1)‏.
أصبح الإصدار الأول لحاسوب مانشستر سريعاً الإصدار الأوللحاسوب فيرانتي، الذي كان أول حاسوب تجاري عام الاستخدامكما يدل الاسم، فقد بنتفيرانتيهذا الحاسوب لجامعة مانشستر، وسلَّمته في فبراير 1951م. صُنِعت سبعة حواسيب أخرى على الأقل من الإصدار نفسه بين عامي 1953 و1957م، سُلِّم أحدها إلى مختبراتشركة شلفي أمستردام. قرر مديرو شركةجي ليونزالبريطانية للأطعمة في أكتوبر 1947 أن يكون لشركتهم دور فاعل في الترويج للتطوير التجاري للحواسيب. صُنِع، نتيجة لذلك،حاسوب ليو الأولوفق نموذج مشابه لنموذجالحاسبة الآلية الإلكترونية ذاتية التخزين، المعروفة اختصاراً بالاسم إدساك، الذي طورتهاجامعة كامبريدج. شُغِّل هذا الحاسوب في أبريل 1951، وأنجز أولعمل برمجيمكتبي محوسب في التاريخ.
اقترحجوليوس إدغار ليلينفيلدمبدأترانزستور الأثر الحقليسنة 1925م، وصنعجون باردينووالتر براتينفي أثناء عملهما بإشرافوليم شوكليفيمختبرات بلترانزستور التلامس النقطيفي سنة 1947م، ليكون أول ترانزستور مصنوع، ثم صنع شوكليالترانزستور ثنائي القطبسنة 1948م.حلَّت الترانزستورات محلالصِّمامات المفرغةفي تصميم الحواسيب بدءاً من سنة 1955م، وكان هذا الاستبدال هو بداية الجيل الثاني من الحواسيب. للترانزستورات فوائد عديدة مقارنةً بالصِّمامات المُفرَّغة، هي أصغر حجم وأقل استهلاكاً للطاقة،وأقل إشعاعاً للحرارة، وأكثر موثوقية وذات عمر خدمة أطول. أمكن للحاسوب، بعد استعمال الترانزستور، أن يحوي عشرات الآلاف من الدارات المنطقية في حيز صغير نسبياً، لكن الترانزستورات الأولى كانت كبيرة نسبياً، ويصعبتصنيعها على نطاق واسع، لذلك فقد كان استعمالها محدوداً بعدد من التطبيقات المتخصصة.
نجح فريق من الباحثين فيجامعة مانشستربإشرافتوم كلبرنفي بناء حاسوب باستعمال الترانزستورات الجديدة،فصنعواالحاسوب الترانزستوريالأول في سنة 1953م. واكتملت النسخة الثانية في شهر أبريل 1955م. لم يتخلَّ الحاسوب الترانزستوري عن الصمامات تماماً، بل استعملها في توليد نبضات الساعة بتردد 125 ألف هرتز وللكتابة والقراءة منالذواكر الأسطوانية. أما الحاسوب الأول الذي بُنِي من غير صمامات، فكانهَرُوِل كاديتسنة 1955م، والذي صُنِع فيمؤسسة الطاقة الذرية البريطانيةفيهَرُوِل بأكسفوردشاير.
صنعمحمد عطا اللهوداون كانغترانزستور الأثر الحقلي للأكاسيد المعدنية لأشباه الموصلاتالمعروف اختصراً بالاسم موسفت (بالإنجليزية:MOSFET)‏ فيمختبرات بلسنة 1959م.كان هذا أول ترانزستور مضغوط يمكن تصغير صناعته على نطاق واسع لتطبيقات متنوعة.لأن تصنيع المُوسْفِت ممكن بمقاييس مختلفة ذات كثافة عالية مقارنة بالترانزستور ثنائي القطبية،ولأن استهلاكه للطاقة منخفض، أصبح من الممكن بناءدارات متكاملة عالية الكثافة.تجاوزت استعمالات الموسفت معالجات البيانات، واستخدمت ترانزستورات الموسفت بوصفها عنصر تخزين، وصنعت منهاخلايا ذاكرة، فحلت بذلك محلالذواكر مغناطيسية النواةالتي استعملت في الحواسيب المبكرة. أدى تطوير الموسفت إلى تصنيع الحواسيب الصِغرية.ترانزستور الموسفت هو الأكثر استعمالاً في الحواسيب، وهو وحدة البناء الرئيسة في الإلكترونيات الرقمية، وقوة دافعةلعصر المعلومات.
كانت القفزة الكبيرة التالية في قوة الحوسبة هيالدارات المتكاملة. كانجيوفري دامر، وهو مهندس إلكترونيات يعمل فيمؤسسة الرادار الملكيةفيوزارة دفاع المملكة المتحدة، أول من طرح مفهوم الدارة المتكاملة في ورقة بحثية شارك فيها في مؤتمر عنوانه: "ندوة حول التقدم المحرز في جودة المكونات الإلكترونية" (بالإنجليزية:Symposium on Progress in Quality Electronic Components)‏ عُقد في واشنطن في 7 مايو 1952.
صنعجاك كيلبيفيتكساس إنسترومنتسوروبرت نويسفيفيرتشايلد لأشباه الموصلاتأول الدارات المتكاملة. كتب كيلبي أفكاره الأولى حول الدارات المتكاملة في شهر يوليو سنة 1958م،ونجح بتنفيذها في 12 سبتمبر 1958م. وصف كيلبي ما صنعه في براءة الاختراع كما يأتي: "تركيب من أشباه الموصلات... تكون كل مكونات الدارة الإلكترونية فيه متكاملة" (بالإنجليزية:a body of semiconductor material ... wherein all the components of the electronic circuit are completely integrated)‏لم يكن اختراع كيلبي في الواقع دارة متكاملة مطبوعة على رقاقة واحدة،بل كاندارة متكاملة هجينةفيها أسلاك توصيل خارجية، لذلك كانتصنيعها على نطاق واسعصعباً.
وضع نويس مفهومه الخاص عن الدارات المتكاملة بعد نصف سنة من كيلبي،وكان اختراعه هو أول دارة متكاملة مطبوعة على رقاقة واحدة،وحلَّت رقاقته مشكلات عديدة لم تستطع رقاقة كيلبي حلها. كانت رقاقة نويس مصنوعة منالسيلكون، في حين أن رقاقة كيلبي كانت مصنوعة منالجرمانيوم.صُنعترقاقة نويس باستعمال تقنيةالعملية السطحيةالتي طورها زميله في فيرتشايلد لأشباه الموصلاتجان هورني.
الدارات المتكاملة المعاصرة المطبوعة على رقاقة واحدة مكونة في أغلبها من أشباه الموصلات والأكاسيد المعدنية، وتُبنَى باستعمال موسفت.أقدم مثال معروف لدارة متكاملة مصنوعة من أشباه الموصلات والأكاسيد المعدنية هو رقاقة فيها 16 ترانزستوراً بناها فريد هايمن وإستيفن هوفشتاين سنة 1962م فيشركة راديو أمريكا. أطلقت شركة الإلكترونيات الصغرية العامة لاحقاً أول دارة متكاملة مصنوعة من أشباه الموصلات والأكاسيد المعدنية لأغراض تجارية سنة 1964م،وكانت من تطوير روبرت نورمان. بعد أن طوَّر روبرت كيرونودونالد كلينوجون سارس ترانزستورات أشباه الموصلات والأكاسيد المعدنية ذاتالبوابة ذاتية المحاذاةمن السيلكون في مختبرات بل سنة 1967م، نجحفيدريكو فاجينفي تطوير دارات متكاملة من أشباه الموصلات والأكاسيد المعدنية ذات بوابة ذاتية المحاذاة من السيلكون في فيرتشايلد لأشباه الموصلات سنة 1968م.وأصبح موسفت بعدها المكون الأكثر أهمية في الدارات المتكاملة المعاصرة.
نتج عن تطوير الدارات المتكاملة باستعمال أشباه الموصلات والأكاسيد المعدنية اختراعالمعالجات الصغرية،وكان فاتحةً لعصر جديد سادت فيه الحواسيب الشخصية بوصفها منتجات تجارية. لا يوجد توافق حول من هو المعالج الصغري الأول؛ بسبب عدم التوافق حول تعريف ما هو المعالج الصغري بالأصل، ولكن يُقبل على نطاق واسع أن المعالج الصغري الأول المصنوع على رقاقة واحدة كانإنتل 4004، صنعه فيدريكو فاجين باستعمال تقانة الدارات المتكاملة المكونة من أشباه الموصلات والأكاسيد المعدنية ذات البوابة السِّلكونية، بمساعدةتيد هوفمانوماساتوشي شيماوستانلي مزورفيإنتل.نجحت تقانة الدارات المتكاملة المكونة من أشباه الموصلات والأكاسيد المعدنية في بدايات سبعينيات القرن العشرينبصناعةرقاقة واحدة فيها أكثر من 10 آلاف ترانزستور.
النظام على رقاقةهو حاسوب كامل على رقاقة واحدة لا تزيد أبعادها عن قطعة نقد. ليس بالضرورة أن تحتوي دائماً علىذاكرة وصول عشوائيوالذاكرة الوميضية، في حالات عدم وجودها تُضاف ذاكرة الوصول العشوائي مباشرة فوق الرقاقة (تُسمى التقنية عندهامُحيفِظة على المُحيفِظة) أو تحتها (على الوجه المعاكس من لوحة الدارة)، في حين تضاف الذاكرة الوميضية عادةً إلى جانب الرقاقة، والهدف من ذلك هو تقليل المسافة التي تقطعها الإشارات ومن ثم زيادة سرعة نقل البيانات.
كانت الحواسيب المنقولة الأولى ثقيلة الوزن، وتحتاج إلى توصيل بمصادر الطاقة الكهربائية توصيلاً دائماً، مثلاً الحاسوبآي بي إم 5100كان يزن قرابة 23 كغ، أما الحاسوبانأوسبرن 1وحاسوب كومباك المنقول، فكانا أخف وزناً خفة ملحوظة، ولكنهما احتاجا توصيلاً دائماً بمصدر للطاقة الكهربائية. أما الحواسيب المحمولة المُبكرة، فألغت الحاجة للتوصيل بالمصدر الكهربائي؛ لأنها اشتملت على بطاريات مُدمجة، مثل حاسوببوصلة غريد. استمرت عملية تصغير العتاد وموارد الحوسبة وتحسين عمر البطاريات، حتى أصبحت الحواسيب المحمولة خياراً شائعاً منذ العقد الأول من القرن الواحد والعشرين. ساعدت هذه التحسينات المصنعين على تصغير عتاد موارد الحوسبة لتُستعمل في الهواتف المحمولة أيضاً في الفترة نفسها.
تدعمالهواتف الذكيةوالحواسيب اللوحيةأنظمة تشغيل متنوعة وهي أجهزة الحاسوب السائدة بين المستهلكين، يحوي كل من هذه الحواسيب ما يُسمى "نظام على رقاقة"، وهي كما تقدم، حاسوب كامل على رقاقة لا تزيد أبعادها عن قطعة نقد معدنية.
يشمل مصطلح العتاد كل الأجزاء المادية الملموسة من الحاسوب: الرقائق الإلكترونية، مثل: بطاقة الرسوميات، وبطاقة الصوتيات، وبطاقة الذاكرة، واللوحة الأم؛ والدارات الكهربائية، مثل وحدة التغذية والكبلات؛ وأجهزة الإدخال والإخراج، مثل لوحة المفاتيح والطابعة.
يضم الحاسوب شائع الاستعمال أربعة مكونات رئيسة:وحدة الحساب والمنطق،ووحدة المعالجة المركزية،والذواكر،ووحدات الإدخال والإخراج. تتصل هذه المكونات فيما بينها باستعمالالمساريالتي غالباً ما تكون مجموعة من الأسلاك. في داخل كل من هذه المكونات دارات إلكترونية صغيرة قد يصل عددها إلى المليارات، يمكن تشغيلها أو إيقافها باستعمالترانزستور. تُمثّل كل دارةبتًاواحدًا من المعلومات، لو شُغِّلت فهي تُمثِّل القيمة "1" ولو أُوقِفت تُمثِّل القيمة "0".
تساعد أجهزة الإدخال الحاسوبَ على استقبال بيانات غير معالجة لمعالجتها وإرسالها للخرج.
وهي الوسائل التي يمكن فيها استعراض ناتج معالجة الأوامر، سواء بصرياً أو سمعياً أو عبر الطباعة على وسيط مادي، من الأمثلة عليها:
تدير وحدة التحكم مكونات الحاسوب الأخرى، وتُسمَّى أحياناً نظام التحكم أو المُتحكِّم المركزي. وظيفتها الرئيسة قراءة تعليمات البرنامج وتفسيرها، أي فك ترميزها، ثم تحويلها إلى إشارات تحكم تُفعِّل أجزاء أخرى من الحاسوب.يمكن لوحدات التحكم في الحواسيب المتقدمة أن تُغير ترتيب تنفيذ بعض التعليمات لتحسين الأداء.
عداد البرنامجهو عنصر رئيس مشترك في تصاميم وحدات المعالجة المركزية، وهو موقع في الذاكرة يُسمَّىسجلاً، ويحتفظ بعنوان الذاكرة للتعليمة التي ستقرأ تالياً.
تعمل وحدة التحكم كما يأتي:
إن عداد البرنامج هو موقع تخزين في الذاكرة، ويمكن تغيير قيمته بعمليات حسابية. إضافة 100 مثلاً إلى قيمة عداد البرنامج ستسبب قراءة التعليمة التي تقع بعد 100 تعليمة من موقع التنفيذ الحالي. تُسمى عملية تعديل قيمة عداد البرنامجبالقفز، وهي تسمح بإنشاء عناصر التحكمبالانسيابنحو بنى الاختيار وبنى التكرار.
تتابع العمليات الذي تجريه وحدة التحكم لمعالجة عملية ما هو برنامج حاسوب صغير بحد ذاته، وفي بعض تصاميم وحدات المعالجة المعقدة يُنظِّممتتبع صغريهذا المسألة بتنفيذنص برمجي صغرييسبب حصول ما سبق.
تُعرف وحدة الحساب والمنطق مع المسجلات باسم وحدة المعالجة المركزية. صُنعت وحدات المعالجة المُبكِّرة من مكونات منفصلة، لكنها تُنشَأ منذ سبعينيات القرن العشرين على دارة متكاملة واحدة مصنوعة منالأكاسيد المعدنية لأشباه الموصلات، وتُسمَّى معالجاً صغرياً.
تُنجِز هذه الوحدات نوعين من العمليات: الحسابية والمنطقية.قد تكون العمليات الحسابية التي تجريها وحدة الحساب والمنطق محصورة بالجمع والطرح فقط، وقد تشمل الضرب والقسمةوالدوال المثلثية، نحو: الجيب، وجيب التمام،والجذور التربيعية. تدعم بعض الوحدات فقطالأعداد الصحيحة، في حين تشمل عمليات بعضهاالأعداد ذات الفواصلمع درجات دقة مختلفة. يكون كل حاسوب قادراً في العموم على تبسيط العمليات المعقدة إلى عدد من العمليات البسيطة التي يمكن أن ينفذها، ولكن الوقت المستغرق لعمل ذلك سيكون أكبر. تنفَّذ الوحدة عمليات منطقية، ويكون خرجهاقيماً منطقية، أي إمَّا 0 أو 1. من العمليات المنطقية: النفي، والعطف المنطقي، والفرق المنطقي. تستعمل هذه العمليات لبناء عبارات منطقية أكثر تعقيداً مثلالتعابير الشرطية.
تتضمنالمعالجات العددية الفائقةوحدات حساب ومنطق متعددة، ويسمح لها هذا بمعالجة تعليمات متعددة على التوازي.تستطيعالمعالجات الرسوميةوالحواسب التي تحتوي ميزات، مثل:التعليمات وحيدة البيانات المتعددة(SIMD)،والتعليمات المتعددة والبيانات المتعددة(MIMD)، أن تُنفِّذ عمليات حسابية علىالمُتجَّهاتوالمصفوفات.
الذاكرة في الحاسوب هي مجموعة من الخلايا التي يمكن كتابة الأرقام فيها أو قراءتها. تخزِّن كل خلية رقماً واحداً، ويكون لها مُعرِّف مميز يُسمَّى عنوانها. ويمكن بعدها للحاسوب أن يجري عمليات حسابية على القيم المُخزَّنة في الخلايا باستعمال عنوانها. المعلومات المخزنة في الذاكرة مجرَّدة، ويمكن أن تستعمل لتمثيل أي شيء: حرف أبجدي أو عدد رياضي أو حتى تعليمة من تعليمات الحاسوب، ولا تميز الذاكرة بينها، وتكون عملية التمييز من مهام البرمجيات.
تخزِّن كل خلية في الحواسيب المعاصرةعدداً ثنائياًمكون من مجموعة من 8 بتات تُسمَّىبايتاً. يمكن لكل بايت أن يُمثِّل 256 رقماً مختلفاً (2= 256) تتراوح بين 0 إلى 255 أو بين −128 إلى +127. أما لتخزين أعداد أكبر، فتُستعمل مجموعة من البايتات المتتالية، اثنان أو أربعة أو ثمانية، في حين تُمثَّل الأعداد السالبة باستعمالالمتمم الثنائي. مع أن طرق تمثيل أخرى ممكنة، إلا أنها نادراً ما تستعمل.
تضم وحدة المعالجة المركزية مجموعة خاصة من خلايا الذاكرة تُسمَّىالسجلات، تستعمل الوحدة السجلات لتخزين البيانات الأكثر استعمالاً لتجنب قراءتها في كل من الذاكرة الرئيسة، فالكتابة والقراءة في السجلات أسرع مقارنة مع الذاكرة الرئيسة. قد تحتوي وحدة المعالجة على سجلين فقط، ولكن قد يزيد عدد السجلات عن مئة في بعض الأنواع.
تُصنف ذاكرة الحاسوب تحت صنفين رئيسين:
يمكن قراءة ما يوجد في ذاكرة الوصول العشوائي أو الكتابة فيها في أي وقت، وهي تفقد ما يُخزَّن فيها لو قُطِعت عنها التغذية الكهربائية نتيجة لإيقاف تشغيل الحاسوب. أما ذاكرة القراءة فقط، فإنها تُحمَّل ببيانات وبرمجيات لا تتغير، وتقرؤها وحدة المعالجة فقط، وهي لا تفقد ما فيها، حتى لو قطعت التغذية الكهربائية عنها، لذلك تُستعمل عادة لتخزين تعليمات الإقلاع. تضم ذاكرة القراءة فقط في الحاسوب الشخصي برنامجاً مخصصاً يُسمَّىالنظام الأساسي للإدخال والإخراجينسِّق عملية تحميلنظام التشغيلمن القرص الصلب إلى ذاكرة القراءة العشوائية. أما فيالأنظمة المُضمَّنةالتي لا تحتوي أقراص تخزين صلبة، فإنَّ كل البرمجيات الضرورية تُخزَّن في ذاكرة القراءة فقط، وتُسمَّى البرمجيات التي تُخزَّن بهذا الشكلبالبرمجيات الثابتة؛ لأنها مُثبتة على العتاد لا يُمكن للمستخدم تغييرها. تطمسالذاكرة الوميضيةالحد الفاصل بين ذاكرة القراءة فقط وذاكرة الوصول العشوائي، فهي تحتفظ بما يُخزن فيها بعد انقطاع التغذية، ويمكن إعادة الكتابة فيها، ولكنها أبطأ بكثير من النوعين السابقين، لذلك يكون استعمالها محصوراً في التطبيقات التي تكون السرعة العالية فيها غير ضرورية.
يوجد في الحواسيب الأكثر تعقيداً أكثر منذاكرة مخبئيةمرفقة مع وحدة المعالجة المركزية. تكون عملية القراءة والكتابة فيها أبطأ من السجلات، ولكنها أسرع من الذاكرة الرئيسة. تُصمم هذه الحواسيب لتنقل آلياً البيانات الأكثر استعمالاً إلى الذاكرة المخبئية من دون تدخل المبرمجين.
وحدات الدخل والخرج هي الوسائل التي يتبادل فيها الحاسوب المعلومات مع العالم المحيط.تسمَّى الأجهزة التي تؤدي وظائف الدخل والخرجبالطرفيات.تشمل الطرفيات في حاسوب شخصي أجهزة الدخل مثلالفأرةولوحة مفاتيح حاسوب، وأجهزة الخرج مثل الشاشة والطابعة. بعض الأجهزة مثلشاشة اللمستكون جهاز إدخال وإخراج في الوقت نفسه.
يمكن للحاسوب أن يكون متعدد المهام، وهذا يعني أنه قادر على تشغيل برامج عديدة في الوقت نفسه من التبديل بسرعة بين البرامج.يمكن أن تُنفَّذ الآلية السابقة باستعمالالمقاطعة، وفيها يتوقف الحاسوب عن تنفيذ تعليمات البرنامج التي يُنفذها حالياً، وينتقل إلى تنفيذ تعليمات أخرى، ثم يعود مرة أخرى بعد الانتهاء من تنفيذ التعليمات الأخرى إلى التعليمات الأولى التي كان يعمل عليها قبل المقاطعة وينهي تنفيذها، وهذا يعني بالضرورة أن الحاسوب يحتاج إلى تخزين موقع التعليمات الأولى قبل الانتقال إلى تنفيذ الأخرى. لو نُفِّذت العملية السابقة عدة مئات من المرات في الثانية على برامج عديدة، فإنها ستبدو وكأنها تُنفَّذ في الوقت نفسه، أما الحقيقة فهي أن الحاسوب ينفذ برنامجاً واحداً فقط في كل لحظة زمن. تُسمى هذه الطريقة لتعدد المهام بتشارك الزمن؛ لأن كل برنامج يحصل على "شريحة" محددة من الزمن ليُنفذ فيها، ويكون زمن التنفيذ المجمل مُشتركاً بين البرامج.
قبل انتشار الحواسب رخيصة الثمن، كان الهدف من تعدد المهام هو السماح بمشاركة حاسوب واحد بين أشخاص متعددين. يبدو مما سبق أن الحاسوب سيكون أبطأ في التنفيذ بما يتناسب مع عدد البرامج التي يُشغلها، ولكن في التطبيق العملي وُجِد أن سبب التأخير هو انتظار الحاسوب لمدخلات أجهزة الدخل التي لم تنهِ مهمتها بعد. أي إذا كان البرنامج ينتظر أن يضغط المستخدم على مفتاح في لوحة المفاتيح، أو ينقر بالفأرة، فعندها لم يحصل البرنامج على "الشريحة الزمنية" حتى حصولالحدثالذي يُنتظر حدوثه. تُحرر هذه الخاصية مزيداً من الزمن للبرامج الأخرى لتعمل معاً من غير إبطاء غير مُستحَب.
تُصمم بعض الحواسيب لتوزع عملها على وحدات معالجة مركزية عديدة باستعمال تقانة تُسمَّى المعالجة المتعددة، اختصت هذه التقانة بالحواسيب الكبيرة ذات قدرات المعالجة العالية مثلالحواسيب الفائقةوالمركزيةوالخوادمفيما سبق، ولكنها أصبحت متوفرة في الحواسيب الشخصية والحواسيب المحمولة، خاصة بهيئةمعالج متعدد النوى.
يكون للحواسيب الفائقة عادةً معمارية فريدة تختلف عن معمارية حواسيب البرامج المخزونة والحواسيب عامة الاستعمال.وتحتوي في الغالب على آلاف وحدات المعالجة المركزية ومساري مخصصة عالية السرعة وعتاد مصمم لدعم الحوسبة. تستعمل هذه الحواسيب عادة في إنجازمحاكاة كبرى بالحاسوب، وفيتصيير واسع النطاق للرسوميات، وفي تطبيقاتالتعمية.
تشمل كلمة "البرمجيات" أجزاء الحاسوب التي ليس لها هيئة مادية، مثل: البرامج، والبيانات، والمكتبات، والبروتوكول، وتتكون من معلومات مرموزة أو تعليمات، على عكس العتاد الذي يُبنى منه الحاسوب. تُقسم البرمجيات عادةً إلى برمجيات النظموبرمجيات تطبيقية، ويشمل المفهوم أيضاً بيانات لا يمكن تنفيذها كما تُنفَّذ البرامج مثل مستنداتتوثيق البرمجيات.
تحتاج البرمجيات والعتاد بعضهما البعض، ولا يمكن لأحدهما أن يعمل بمعزلٍ عن الآخر. لكن البرمجيات تكون مستقلة عن العتاد عموماً، أي يمكن استعمالها مع غير قيود صارمة تحدد العتاد المطلوب، أما البرمجيات التي لا تعمل إلا مع نوع محدد من العتادبالبرمجيات الثابتةمثلالنظام الأساسي للإدخال والإخراج.
يوجد الآلاف من لغات البرمجة تتراوح في درجة تخصصها بين العام الذي يمكن استعماله لأي غرض والدقيق المخصَّص الذي طور استجابة لحاجة محددة دقيقة.
ما يميز الحواسيب الحديثة اليوم عن كل الآلات الأخرى هو إمكانيةالبرمجة، وهذا يعني أنه يوجد طريقة ما لإدخالمجموعة من التعليماتتُسمىبرنامجاًإلى الحاسوب لينفذها. تملك الحواسيب الحديثة لغة آلة يمكن كتابة برنامج بها باستعمالالبرمجة الأمرية، وقد يكون طول البرنامج فيها سطور متعددة، وقد يطول لملايين التعليمات، ويمكن للحواسيب أن تعالج (تُنفِّض) الملايين من هذه التعليمات كل ثانية من غير وجود أخطاء، وتقاس هذه القدرةبوحدة فلوبسوهي عدد التعليمات الشاملة للفاصلة المتحركة التي يمكن للحاسوب تنفيذها في الثانية.
تعليمات الحاسوب في معظم الحالات بسيطة: أضف عدداً إلى آخر، أو أُنقل بعضاً من البيانات من موقع إلى آخر، أو أرسل رسالة إلى جهاز خارجي... تُقرأ التعليمات من ذاكرة الحاسوب،وتُنفَّذوفق الترتيب الذي وردت به. يوجد تعليمات معدودة وظيفتها تغيير تتابع التنفيذ، وتسمى تعليماتالتفرع: إما تنفيذ تعليمات تسبق التعليمة الحالية في الترتيب، ويكون القفز حينها إلى الخلف، وإما تنفيذ تعليمات تتبع التعليمة الحالية في الترتيب، ويكون القفز حينها إلى الأمام. قد تحتوي تعليمة التفرع علىتعبير شرطي، يحدد حصول عملية القفز من عدمها نتيجة لحساب رياضي يعتمد على قيم مخزنة في الذاكرة. تدعم العديد من الحواسب مفهوم "الدوال" وهي مجموعة من التعليمات التي يمكن تنفيذها عند الحاجة من خلال تعليمة تفرع خاصة تُسمىتعليمة الاستدعاء، وهي تحفَظ موقع التنفيذ الذي يسبقها لتعود إليه بعد انتهاء تنفيذ الدالة اعتماداً على تعليمة تفرع خاصة تُسمَّىتعليمة العودةتوجد في نهاية الدالة.
يُشبه تنفيذ برنامج الحاسوب قراءة كتاب. يُقرَأ الكتاب تتابعاً من البداية إلى النهاية: كلمة كلمة وسطراً سطراً، ولكن يمكن في أحيانٍ كثيرة أن يعود القارئ إلى مواقع من الكتاب قرأها سابقاً ليتذكر معلومة محددة ذُكرت فيها، ويمكن أن يتجاوز فصلاً كاملاً فلا يقرأه لعدم اهتمامه بمحتواه. يُسمَّى تتابع القراءة، ويقابله تتابع تنفيذ التعليمات في حالة الحاسوب،انسياب التحكم. ينساب التحكم عند التنفيذ من غير تدخل المبرمجين، فقد يسبب تنفيذ مجموعة محددة من التعليمات تكراراً عدة مرات حتى تحقق شرطًا محددًا، ويمكن أن يستدعي دالة ما حسب قيمة شرط آخر، وقد ينفذ التعليمات تتابعاً حتى نهاية البرنامج.
يمكن للإنسان باستعمالآلة حاسبةأن ينفذ عمليات حساب بسيطة، مثل أن يجمع عددين، أو يضربهما بضغطات بسيطة ومعدودة. أما عمليات الحساب الطويلة أو المعقدة مثل مجموعة الأعداد الصحيحة بين 1 و1000، فيصعب تنفيذها يدوياً؛ لأنها تتطلب آلاف الضغطات على مفاتيح الآلة الحاسبة ووقتاً طويلاً للتنفيذ، ناهيك باحتمال حدوث أخطاء قد تؤدي إلى إعادة التنفيذ من البدء. يمكن برمجة الحاسوب لتنفيذ المجموع السابق باستعمال عدد قليل من التعليمات البسيطة مقارنة بالإنسان. المثال التالي هو لبرنامج مكتوببلغة تجميع ميبس:
عند تنفيذ هذا البرنامج، فإن الحاسوب سينفذ تكراراً عملية الجمع من غير تدخل المبرمجين، ومن غير أخطاء. يمكن للحواسيب المعاصرة أن تُنفِّذ هذا البرنامج في أجزاء قليلة من الثانية.
نكتب التعليمات في الحواسيب باستعماللغة الآلة، ويكون لكل تعليمة رقم فريد مميز يُسمَّىرمز العملية، أي يكون لتعليمة جمع عددين رمز واحد فريد، ويكون لعملية ضرب عددين رمز آخر فريد مختلف عن رمز تعليمة الجمع، وهكذا... يكون عدد التعليمات في الحواسيب البسيطة صغيراً محدوداً، أما في الحواسب المعقدة، فقد يبلغ عددها المئات. بما أن ذاكرة الحاسوب تخزِّن الأرقام، فإنها قادرة على تخزين التعليمات أيضاً، لأن برنامج الحاسوب بأكمله هو مجموعة من الأرقام، ويمكن بالتالي تخزينه والتعامل معه بالطريقة نفسها التي تُخزَّن البيانات الرقمية فيها، وهذه هي الفكرة الجوهرية فيمعمارية فون نيومان.يوجد معماريات أخرى أقل انتشاراً مثلمعمارية هارفارد، وفيها تكون الذاكرة التي تُخزِّن البيانات مفصولة تماماً عن الذاكرة التي تخزن التعليمات.
كتبت البرامج في الحواسيب المبكرة بلغة الآلة مباشرة، ولا يوجد مانع نظرياً من كتابة أي برنامج بلغة الآلة مباشرة، ولكنها عملية صعبة وكثيرة الأخطاء، خاصةً لو كان البرنامج معقداً وطويلاً. تعطى كل تعليمة بدلاً عن ذلك اسماً بسيطاً مختصراً يُستدل به على وظيفتها بسهولة مثل: وADD للجمع، وSUB للطرح، وMULT للضرب، وJUMP للقفز، وهكذا... وتجمع هذه التعليمات بعضها مع بعضٍ لتشكل ما يُعرف باسملغة التجميع. ينقل تطبيق خاص، يُسمَّى المُجمِّع، البرنامج المكتوب بلغة التجميع إلى لغة الآلة.
تستعمل لغات البرمجة لكتابة البرامج التي تنفذها الحواسيب. تُصمم لغات البرمجة، على خلافاللغات الطبيعية، لتُعبِّر عن المراد بجلاء وإيجاز. لغات البرمجة كلها مكتوبة، وتصعب قراءتها جهاراً، تترجم إلىلغة الآلةقبل تنفيذها باستعمالمُصرِّفأومُجمِّع، أو تترجم مباشرة عند تنفيذها باستعمالمُفسِّر، تُنفَّذ بعض البرامج بطريقة هجينة تشمل التقنيتين السابقتين.
تشمل اللغات منخفضة المستوى لغات الآلة ولغات التجميع، وتكون كل لغة منها متخصصة بمعمارية فريدة لوحدة المعالجة المركزية في الحاسوب. وحدة المعالجة المركزية فيمعمارية آرم، الموجودة عادة فيالهواتف الذكيةلا يمكنها أن تفهم لغة الآلة المستعملة في معماريةإكس 86الموجودة عادة في الحواسيب الشخصية.لم يمنع هذا تصميم معماريات حوسبة أخرى على مر تاريخ الحوسبة، وانتشارها انتشاراً واسعاً.
كتابة البرامج بلغة التجميع أسهل من كتابتها بلغة الآلة، ولكنها، مع ذلك، صعبة وكثيرة الأخطاء ومستهلكة للوقت. لذلك، فإن البرامج تكتب عادةً بلغات أكثر تجريداً تُسمَّى لغات البرمجة عالية المستوى. تُصرَّف البرامج المكتوبة بلغات البرمجة عالية المستوى إلى لغة الآلة مباشرةً أو مروراً بلغة تجميع، ويُسمَّى البرنامج الذي يُصرِّفهابالمُصِّرف.تكون اللغات عالية المستوى أقل ارتباطاً بالحاسوب الهدف الذي تعمل عليه مقارنةً بلغات التجميع، لذلك فمن الممكن استعمال مُصرِّفات متعددة لترجمة برنامج واحد إلى لغة الآلة لحواسيب مختلفة، يمكن مثلاً توفير لعبة فيديو ما علىمشغلات ألعاب فيديومختلفة باستعمال مُصرِّفات مختلفة تترجم النص البرمجي للعبة، المكتوب بلغة عالية المستوى، للغات آلة المُشغِّلات المطلوبة. طوَّرتجريس هوبرأولمُصرِّفللغة برمجة.
تصميم البرامج الصغيرة بسيط، ويتضمن تحليل المشكلة وجمع المدخلات ثم استعمال لغة البرمجة لتنفيذ الخوارزميات وكتابة الإجرائيات، ثم طباعة البيانات الناتجة على أداة الخرج.تُستعمل ميزات مثل البرامج الفرعية والتوثيق عندما تصبح المشكلة أعقد وأكبر حجماً، وقد تستعمل أنماط برمجة أخرى مثلبرمجة كائنية التوجه.تتألف البرامج الكبيرة من آلاف السطور، وتحتاج إلى منهج عمل متناسق لتطويرها.إن مهمة إنتاج برمجيات مقبولة ذات موثوقية عالية في إطار زمني محدد ما تزال صعبة المنال. وهي موضوع بحث يدرسه اختصاص هندسة البرمجيات وتحدٍ تسعى شركات البرمجة للتغلب عليه.
توجد الأخطاء البرمجية في البرامج، وقد تكون حميدة لا أثر لها على عمل البرنامج، أو قد تكون ذات أثر محدود، ولكنها قد تؤدي أيضاً إلىتجمَّدالبرنامج وجعله لا يستجيب للمستخدمين، كما قد تؤدي إلى فشل البرنامج كاملاً أوانهياره.قد يستغل بعض قراصنة الحاسوب الأخطاء الحميدة لتطويربرمجيات استغلالوتعطيل التنفيذ السليم لتنفيذ البرنامج. ليست الأخطاء وليدة الحواسيب التي تنفِّذ فقط التعليمات التي تُعطى لها، لكنها نتيجة لخطأ ارتكبه المبرمج عند كتابة البرنامج.الكلمة الإنكليزي التي تدل على الخطأ البرمجي هي (بالإنجليزية:Bug)‏، وهي تدل على كلمة حشرة أيضاً. يُنسَب الاستعمال الأول لهذه الكلمة في سياق الحوسبة للدلالة على الخطأ البرمجي لعالمة الحاسوب الأمريكيةغريس هوبر، التي طوَّرتمُصرِّفلغات البرمجة الأول، فقد عثرت على عثة ميتة محشورة في مُرحِّل فيالإصدار الثاني من حاسوب هارفردفي سبتمبر 1947م.
استعملت الحواسيب لنقل المعلومات بين مواقع عديدة منذ خمسينيات القرن العشرين. كانتبيئة الأرض نصف الآليةالمعروفة اختصاراً بالاسم الرمزي ساج (بالإنجليزية:SAGE)‏ المثال الأول لنظام شبكة بيانات، وكان الأساس الذي بُنيت عليه عدد من أنظمة التشبيك التجارية لاحقاً مثلبيئة أبحاث الأعمال نصف الآلية المعروفةاختصاراً بالاسم سِيبر (بالإنجليزية:Sabre)‏.بدأ مهندسو الحاسوب في مراكز الأبحاث في الولايات المتحدة بربط شبكاتهم المحلية معاً باستعمال تقانات الاتصال البُعدي، وموَّلتوكالة مشاريع أبحاث الدفاع المتقدمة، التي كانت تُعرَف بالاسم المُختصر أربا (بالإنجليزية:ARPA)‏ هذه الجهود، وبُنيت شبكة الحاسوبأربانتنتيجة لذلك.ثم شاعت التقانات التي استعملت لبناء أربانت خارج النطاقين البحثي والعسكري، وتطورت لتكون الأساسللإنترنت.
ساهم صعود شبكات البيانات في إعادة تعريف طبيعة الحاسوب وحدوده وإمكانياته. عُدِّلت أنظمة التشغيل والبرامج لتسمح بالنفاذ إلى موارد موجودة في حواسيب أخرى على الشبكة أو لتخزين البيانات وقراءتها من مخدِّمات متصلة مع الشبكة. كان انتشار هذه التقنيات محدوداً في البداية بالعاملين في البيئات المتطورة عالية التقانة، ولكن انتشار التطبيقات البسيطة التي لا تتطلب معرفة تقنية متقدمة مثل البريد الإلكترونية وخدماتالوببالإضافة لتطوير تقنيات شبكة سريعة مثلالإثرنتوخط المشترك الرقمي غير المتناظرجعل استعمال الحواسيب في بيئات العمل كلها أمراً لا مفر منه بدءاً من تسعينيات القرن العشرين، وأصبح اتصال الحواسيب مع الإنترنت لنقل البيانات في العمل والمنزل أمراً واسع الانتشار، وتطورت في الفترة نفسها شبكات البيانات اللاسلكية مثلواي فايوشبكات الاتصال الخلوية؛ مما سمح باتصال أسهل مع الإنترنت.
ليس بالضرورة أن يكون الحاسوب مكوناً منعناصر إلكترونيةولا أن يحتوي علىمعالجأوذاكرة وصول عشوائيأوقرص صلب. مع أن الاستعمال الدارج لكلمة الحاسوب مرتبط بالحاسوب الشخصي الإلكتروني، إلا أن تعريف الحاسوب هو: "أي آلة تقوم بثلاث مهمات: تتلقى مدخلات ذات بنية مُعرَّفة، وتعالجها وفق قواعد معرَّفة سلفاً، وتولَّد النتائج كمخرجات"، حسب هذا التعريف، فإن أي جهاز يعالج المعلومات يمكن أن يُصنَّف على أنه حاسوب.
الأبحاث جارية لصناعة حواسيب غير تقليدية باستعمال تقانات مختلفة، مثلالحواسيب البصريةوحواسيب الحمض النوويوالحواسيب العصبونيةوالحواسيب الكمومية. الغالب الأعم من الحواسيب عامٌ قادرٌ على حسابالدوال الحَسُوبَة، ويكون كل منها محدوداً بسعة ذاكرته وبسرعة إنجاز العمليات الحسابية، ولكن تصاميم أخرى للحاسوب أعطت نتائج مختلفة أداءً عند معالجة مشكلات محددة، مثلاً تستطيع الحواسيب الكموميةاستخراج مُعمَّىخوارزمية تعمية حديثة، مثلخوارزمية شوربسرعة كبيرة.
توجد أنواع مختلفةلمعماريات الحاسوب:
يبدو الحاسوب الكمومي هو الاتجاه الواعد لإحداث ثورة في الحوسبة من بين هذهالآلات المجردة.
يحل الحاسوب المشكلات التي تواجهه متبعاً الطريقة التي بُرمِج بها بحذافيرها، ومن غير اهتمام بوجود طرائق أخرى أكثر كفاءة أو حلولًا بديلة أو اختصارات ممكنة أو حتى أخطاء في النص البرمجي. لكنالذكاء الصنعيوتعلُّم الآلةسوف يغيران هذا الجانب، فهما يسمحان للحاسوب بالتعلم من التجارب السابقة والتكيف مع الظروف المحيطة وطرح حلول إبداعية جديدة غير موجودة في البرامج التي ينفذها.
أصبح الحاسوب جزءاً من سوق العمل، فعُدِّل بعضٌ من الاختصاصات القديمة لتشمل الحاسوب أو أحد جوانبه وتدرسها، في حين ظهرت مهن وأعمال جديدة مرتبطة بالحاسوب وتقانته، لم تكن موجودة قبله.
تستعمل الحواسيب في تبادل المعلومات بين أطراف مختلفة، لذلك وجدت حاجة لاستعمال مواصفات موحدة متفق عليها، لذلك تهتم مجموعة من منظمات المعايير ومجموعات مهنية أو منتديات، بعضها رسمي وبعضها غير رسمي، بوضع معايير مرتبطة بالحاسوب وتطبيقاته.