Máy tính - Bách khoa toàn thư Wikipedia

Bài viết này cần thêm chú thích nguồn gốc để kiểm chứng thông tin. Mời bạn giúp hoàn thiện bài viết này bằng cách bổ sung chú thích tới các nguồn đáng tin cậy. Các nội dung không có nguồn có thể bị nghi ngờ và xóa bỏ. (Tìm hiểu cách thức và thời điểm xóa thông báo này)

Máy tính và các thiết bị tính toán qua các thời kỳ

Máy tính ống chân không đời đầu (ENIAC)

Máy tính máy tính bảng (IBM System/360)

Điện thoại thông minh (LYF Water 2)

Máy tính để bàn (IBM ThinkCentre S50 kèm màn hình)

Siêu máy tính (IBM Summit)

Máy tính hay máy điện toán là những thiết bị hay hệ thống thực hiện tự động các phép toán số học dưới dạng số hoặc phép toán lôgic. Các máy tính cỡ nhỏ thường gọi là máy vi tính, trong số đó máy dùng cho cá nhân thường gọi là máy tính cá nhân.

Máy tính được cấu tạo bởi các thành phần có thể thực hiện các chức năng đơn giản đã định nghĩa trước. Quá trình tác động tương hỗ phức tạp của các thành phần này tạo cho máy tính một khả năng xử lý thông tin. Nếu được thiết lập chính xác (thông thường bởi các chương trình máy tính) máy tính có thể mô phỏng lại một số khía cạnh của một vấn đề hay của một hệ thống. Trong trường hợp này, khi được cung cấp một bộ dữ liệu thích hợp nó có thể tự động giải quyết vấn đề hay dự đoán trước sự thay đổi của hệ thống.

Khoa học nghiên cứu về lý thuyết, thiết kế và ứng dụng của máy tính được gọi là khoa học máy tính, hay khoa học điện toán.

Từ "máy tính" (computer), đầu tiên, được dùng cho những người tính toán số học, có hoặc không có sự trợ giúp của máy móc, nhưng hiện nay nó hoàn toàn có nghĩa là một loại máy móc. Đầu tiên máy tính chỉ giải các bài toán số học, nhưng máy tính hiện đại làm được nhiều hơn thế. Máy tính có thể mua ở Anh đầu tiên là máy Ferranti Mark 1 Star sản xuất năm 1951 [1]

Đến những năm 1990, khái niệm máy tính đã thực sự tách rời khỏi khái niệm điện toán và trở thành một ngành khoa học riêng biệt với nhiều lĩnh vực đa dạng và khái niệm hơn hẳn ngành điện toán thông thường và được gọi là công nghệ thông tin. Tuy vậy đến ngày nay, một số người vẫn còn nhầm lẫn giữa hai khái niệm điện toán và công nghệ thông tin.

Các nguyên lý cơ bản

Máy tính có thể làm việc thông qua sự chuyển động của các bộ phận cơ khí, điện tử (electron) hay các hiện tượng vật lý khác đã biết. Mặc dù máy tính được xây dựng từ nhiều công nghệ khác nhau song gần như tất cả các máy tính hiện nay đều là máy tính điện tử.

Máy tính có thể trực tiếp mô hình hóa các vấn đề cần được giải quyết, trong khả năng của nó các vấn đề cần được giải quyết sẽ được mô phỏng gần giống nhất với những hiện tượng vật lý đang khai thác. Ví dụ, dòng chuyển động của các điện tử có thể được sử dụng để mô hình hóa sự chuyển động của nước trong đập. Những chiếc máy tính tương tự (analog computer) giống như thế đã rất phổ biến trong thập niên 1960 nhưng hiện nay còn rất ít.[cần dẫn nguồn]

Trong phần lớn các máy tính ngày nay, trước hết, mọi vấn đề sẽ được chuyển thành các yếu tố toán học bằng cách diễn tả mọi thông tin liên quan thành các số theo hệ nhị phân (hệ thống đếm dựa trên các số 0 và 1 hay còn gọi là hệ đếm cơ số 2). Sau đó, mọi tính toán trên các thông tin này được tính toán bằng đại số Boole (Boolean algebra).

Các mạch điện tử được sử dụng để miêu tả các phép tính Boole. Vì phần lớn các phép tính toán học có thể chuyển thành các phép tính Bool nên máy tính điện tử đủ nhanh để xử lý phần lớn các vấn đề toán học (và phần lớn thông tin của vấn đề cần giải quyết đã được chuyển thành các vấn đề toán học).[cần dẫn nguồn] Ý tưởng cơ bản này, được nhận biết và nghiên cứu bởi Claude E. Shannon - người đã làm cho máy tính kỹ thuật số (digital computer) hiện đại trở thành hiện thực.

Máy tính không thể giải quyết tất cả mọi vấn đề của toán học. Alan Turing đã sáng tạo ra khoa học lý thuyết máy tính trong đó đề cập tới những vấn đề mà máy tính có thể hay không thể giải quyết.

Khi máy tính kết thúc tính toán một vấn đề, kết quả của nó được hiển thị cho người sử dụng thấy thông qua thiết bị xuất như: bóng đèn, màn hình, máy in, máy chiếu...

Những người mới sử dụng máy tính, đặc biệt là trẻ em, thường cảm thấy khó hiểu về ý tưởng cơ bản là máy tính chỉ là một cái máy, nó không thể "suy nghĩ" hay "hiểu" những gì nó hiển thị. Máy tính chỉ đơn giản thi hành các tìm kiếm cơ khí trên các bảng màu và đường thẳng đã lập trình trước, rồi sau đó thông qua các thiết bị đầu ra (màn hình, máy in,...) chuyển đổi chúng thành những ký hiệu mà con người có thể cảm nhận được thông qua các giác quan (hình ảnh trên màn hình, chữ trên văn bản được in ra). Chỉ có bộ não của con người mới nhận thức được những ký hiệu này tạo thành các chữ hay số và gắn ý nghĩa cho chúng. Trong quan điểm của máy tính thì mọi thứ mà nó "nhận thấy" (kể cả khi máy tính được coi là có khả năng tự nhận biết) chỉ là các hạt electron tương đương với các số 0 và 1. Xem thêm trí tuệ nhân tạo (artificial intelligence) và robot.

Các thiết bị tính toán tăng gấp đôi năng lực (được định nghĩa là số phép tính thực hiện trong một giây cho mỗi 1.000 USD chi phí) sau mỗi 18 đến 24 tháng kể từ năm 1900. Gordon E. Moore, người đồng sáng lập ra Intel, lần đầu tiên đã miêu tả tính chất này của sự phát triển vào năm 1965 (Xem định luật Moore). Cùng với việc tăng khả năng tính toán trên một đơn vị chi phí thì tốc độ của sự thu nhỏ kích thước cũng tương tự. Những chiếc máy tính điện tử đầu tiên như ENIAC (ra đời năm 1946) là một thiết bị khổng lồ nặng hàng tấn, tiêu thụ nhiều điện năng, chiếm một diện tích lớn, thực hiện được ít phép tính và đòi hỏi nhiều người điều khiển để có thể hoạt động được. Những cỗ máy này đắt đến mức chỉ có các chính phủ hay các viện nghiên cứu lớn mới có đủ điều kiện để duy trì hoạt động của chúng. Năm 1973, Trương Trọng Thi chế tạo ra Micral mà nhiều người coi là máy tính cá nhân đầu tiên trên thế giới. Một bản mẫu của nó hiện được trưng bày trong Viện bảo tàng máy tính Boston (Mỹ). Chiếc máy này ra đời hơn một năm trước máy Altair của công ty Mỹ MITS Electronics, công ty này cũng cho mình là cha đẻ của PC.

Phân loại máy tính

Những phần dưới đây miêu tả các xu hướng khác nhau trong sự phân loại các máy tính.

Theo mục đích sử dụng chúng ta có:

Máy chủ thực hiện nhiều chức năng hoặc một chức năng duy nhất không bao giờ nghỉ:

Siêu máy tính cỡ nhỏ

Máy chủ doanh nghiệp

Máy trạm (workstation)

Máy tính phục vụ dân dụng:

Máy tính cá nhân (PC - Personal Computer) Máy tính để bàn (Desktop) Máy tính xách tay (Laptop gồm nhiều dòng laptop phổ thông,notebook, untrabook, laptop quân đội và workstation mobile) Máy tính bảng (như Ipad) Thiết bị hỗ trợ kỹ thuật số cá nhân (PDA) Máy tính tháo lắp

Máy tính để bàn (Desktop)

Máy tính xách tay (Laptop gồm nhiều dòng laptop phổ thông,notebook, untrabook, laptop quân đội và workstation mobile)

Máy tính bảng (như Ipad)

Thiết bị hỗ trợ kỹ thuật số cá nhân (PDA)

Máy tính tháo lắp

Điểm yếu của xu hướng phân loại này là tính chất mơ hồ của nó. Cách phân loại này thường được sử dụng khi cần phân loại tại một thời điểm nào đó trong quá trình phát triển của ngành công nghiệp máy tính. Sự phát triển nhanh chóng của công nghiệp máy tính đã làm cho định nghĩa trên nhanh chóng trở nên lạc hậu. Rất nhiều loại máy tính hiện nay không được còn sử dụng nữa, như máy phân tích vi phân (differential analyzer), không được đưa vào danh sách này. Những sơ đồ phân loại khác cần được đề ra để định nghĩa thuật ngữ máy tính một cách ít (hoặc không) mơ hồ hơn.

Theo mức cải tiến công nghệ

Một cách phân loại máy tính ít mơ hồ hơn là theo mức độ hoàn thiện của công nghệ. Những chiếc máy tính có mặt sớm nhất thuần túy là máy cơ khí. Trong thập niên 1930, các thành phần rơ le cơ-điện đã được giới thiệu vào máy tính từ ngành công nghiệp liên lạc viễn thông. Trong thập niên 1940, những chiếc máy tính thuần túy điện tử đã được chế tạo từ những đèn điện tử chân không. Trong hai thập niên 1950 và thập niên 1960, bóng điện tử dần dà được thay thế bởi transistor, và từ cuối thập niên 1960 đầu thập niên 1970 là bởi mạch tích hợp bán dẫn (chíp bán dẫn, hay IC) cho đến hiện nay.

Một hướng nghiên cứu phát triển gần đây là máy tính quang (optical computer) trong đó máy tính hoạt động theo nguyên lý của ánh sáng hơn là theo nguyên lý của các dòng điện; đồng thời, khả năng sử dụng DNA trong công nghệ máy tính cũng đang được thử nghiệm. Một nhánh khác của việc nghiên cứu có thể dẫn công nghiệp máy tính tới những khả năng mới như tính toán lượng tử, tuy rằng nó vẫn còn ở giai đoạn đầu của việc nghiên cứu.

Theo đặc trưng thiết kế

Các máy tính hiện đại đã liên kết các đặc trưng thiết kế chính được phát triển bởi nhiều người đóng góp trong nhiều năm. Các đặc trưng này phần lớn không phụ thuộc vào mức độ hoàn thiện của công nghệ. Các máy tính hiện đại nhận được khả năng tổng thể của chúng theo cách mà các đặc trưng này tác động qua lại với nhau. Một số đặc trưng quan trọng được liệt kê dưới đây:

Kỹ thuật số và kỹ thuật tương tự

Một quyết định nền tảng trong việc thiết kế máy tính là hoặc sử dụng kỹ thuật số (digital) hoặc sử dụng kỹ thuật tương tự (analog). Các máy tính kỹ thuật số (digital computer) tính toán trên các giá trị số rời rạc (discreet value) hoặc giá trị tượng trưng (symbolic value), trong khi đó máy tính tương tự (analog computer) tính toán trên các tín hiệu dữ liệu liên tục (continuous data signal). Bắt đầu từ thập niên 1940, máy tính kỹ thuật số đã trở nên phổ biến hơn mặc dù máy tính tương tự vẫn được sử dụng cho một số mục đích đặc biệt như trong kỹ thuật robot và việc kiểm soát các lò xyclôtrôn. Các thiết kế khác dùng tính toán xung lượng và tính toán lượng tử cũng hiện hữu nhưng chúng hoặc được sử dụng cho các mục đích đặc biệt hoặc vẫn đang trong vòng thử nghiệm.

Nhị phân và Thập phân

Một phát triển quan trọng trong thiết kế tính toán kỹ thuật số là việc sử dụng hệ nhị phân như là hệ thống số đếm nội tại. Điều này đã bãi bỏ những yêu cầu cần thiết trong các cơ cấu kỹ thuật phức tạp của các máy tính sử dụng hệ số đếm khác, chẳng hạn như hệ thập phân. Việc áp dụng hệ nhị phân đã làm cho việc thiết kế trở nên đơn giản hơn để thực hiện các phép tính số học và các phép tính lôgic.

Khả năng lập trình

Khả năng lập trình của máy tính (programmability), nghĩa là cung cấp cho nó một tập hợp các chỉ thị để thực hiện mà không có sự điều khiển vật lý đối với nó, là một đặc trưng thiết kế nền tảng của phần lớn các máy tính. Đặc trưng này là một sự mở rộng đáng kể khi các máy tính đã được phát triển đến mức nó có thể kiểm soát động luồng thực hiện của chương trình. Điều này cho phép máy tính kiểm soát được thứ tự trong sự thực thi các chỉ lệnh trong chương trình dựa trên các dữ liệu đã được tính ra.

Điểm nổi bật chính trong thiết kế này đó là nó đã được đơn giản hóa một cách đáng kể với việc áp dụng các phép tính số học theo hệ đếm nhị phân để có thể mô tả hàng loạt các phép tính lôgic.

Trong quá trình tính toán, máy tính thông thường cần phải lưu trữ các giá trị trung gian để có thể sử dụng trong các tính toán sau đó. Khả năng thực hiện của máy tính phần lớn phụ thuộc vào tốc độ đọc các giá trị từ bộ nhớ và tốc độ ghi vào bộ nhớ, cũng như dung lượng bộ nhớ. Ban đầu bộ nhớ chỉ được sử dụng cho các giá trị trung gian, nhưng từ thập niên 1940 thì chính bản thân chương trình cũng có thể được lưu trữ theo cách này. Điểm nổi trội này đã dẫn đến việc ra đời của những chiếc máy tính có sẵn chương trình đầu tiên của thế hệ máy tính ngày nay.

Theo năng lực sử dụng

Có lẽ cách tốt nhất để phân loại các thiết bị máy tính là theo năng lực nội tại của nó, hơn là theo việc sử dụng, sự hoàn thiện công nghệ hay các đặc trưng thiết kế. Máy tính có thể chia làm ba dạng chính dựa theo năng lực sử dụng:

Các thiết bị có một mục đích chỉ có thể thực hiện duy nhất một chức năng (ví dụ cỗ máy Antikythera năm 87 trước công lịch, và máy dự báo thủy triều của Lord Kelvin năm 1876)

Các thiết bị có mục đích đặc biệt có thể thực hiện một số chức năng hữu hạn (ví dụ động cơ vi phân số 1. - Difference Engine No 1 - của Charles Babbage năm 1832 và máy phân tích vi phân của Vannevar Bush năm 1932)

Các thiết bị có mục đích không nhất định là các dạng máy tính sử dụng ngày nay.

Các máy tính có mục đích không nhất định

Các máy tính có mục đích không nhất định còn được gọi là các máy loại Turing hoàn tất và điều này được sử dụng như khả năng ngưỡng để định nghĩa các máy tính hiện nay, tuy nhiên, định nghĩa này có vài vấn đề. Một số thiết bị tính toán với thiết kế đơn giản đã được chứng tỏ là có tính Turing hoàn tất. Cho đến nay, Z3, phát triển bởi Konrad Zuse năm 1941, là chiếc máy tính hoạt động đầu tiên đã được chứng tỏ đạt được tính chất này, (chứng minh được hoàn thành vào năm 1998). Trong khi Z3 và có thể một số thiết bị khác có tính Turing hoàn tất trên lý thuyết, trên thực tế chúng không phải là những máy tính có mục đích không nhất định. Chúng thuộc về những cái được gọi một cách hài hước là Turing Tar-Pit - "chỗ ở đó mọi điều đều có thể nhưng chẳng có gì là thực tế" (Xem Jargon File). Các máy tính hiện đại không những có mục đích không nhất định trên lý thuyết mà còn có mục đích không nhất định trên thực tế. Các máy tính hiện đại như loại kỹ thuật số, loại điện tử hay loại có mục đích không nhất định được phát triển bởi nhiều người đóng góp trong một khoảng thời gian dài từ giữa thập niên 1930 tới cuối thập niên 1940. Trong giai đoạn này rất nhiều cỗ máy thử nghiệm đã được phát triển có thể coi là có tính Turing hoàn tất (như ABC, ENIAC, Harvard Mk I, Colossus v.v.) (Xem thêm Lịch sử phần cứng máy tính). Tất cả các cỗ máy này trong thời đại của chúng đều được cho là chiếc máy tính đầu tiên, nhưng tất cả đều có những giới hạn nhất định trong mục đích sử dụng và thiết kế của chúng đã sớm bị đào thải.

Các máy tính có sẵn chương trình

Trong cuối thập niên 1940 thiết kế đầu tiên cho máy tính có sẵn chương trình (stored-program computer) đã được phát triển và biên khảo (Xem thêm Bản thảo đầu tiên) tại trường công nghệ điện Moore của Đại học Pennsylvania. Phương pháp giải quyết, miêu tả trong tài liệu, được biết đến như là kiến trúc Von Neumann, mang tên của nhà toán học Jon von Neumann mặc dù các thành viên của trường công nghệ điện Moore mới thực sự sáng chế ra thiết kế này. Kiến trúc Von Neumann đã giải quyết vấn đề thuộc về thiết kế của máy ENIAC và sửa đổi bằng cách lưu trữ chương trình của máy trong bộ nhớ của nó. Von Neumann cung cấp thiết kế này cho các nhà nghiên cứu khác ngay sau khi ENIAC được công bố vào năm 1946. Nhiều kế hoạch đã được phát triển để hoàn thiện thiết kế này tại trường Moore trong chiếc máy có tên gọi là EDVAC. EDVAC đã không hoạt động được cho đến tận năm 1953 vì những khó khăn kỹ thuật trong việc hoàn thiện độ tin cậy của bộ nhớ. Từ bản sao của thiết kế này, các viện nghiên cứu khác đã giải quyết được vấn đề đó trước trường Moore và hoàn thiện các máy tính có sẵn chương trình của họ. Theo thứ tự của việc hoạt động thành công thì 5 chiếc máy tính có sẵn chương trình đầu tiên dựa trên cơ sở của kiến trúc Von Neumann là:

Thiết kế "chương trình có sẵn", được định nghĩa bởi kiến trúc Von Neumann, cuối cùng đã cho phép máy tính khai thác tiềm năng "mục đích không nhất định" của chúng. Bằng cách lưu trữ chương trình trong bộ nhớ, chúng có thể nhanh chóng "nhảy" từ chỉ thị này tới chỉ thị khác dựa trên kết quả của một điều kiện như đã được định nghĩa sẵn trong chương trình. Các điều kiện này thông thường lượng giá các dữ liệu đã được tính toán bởi chương trình và cho phép chương trình trở thành động hơn. Thiết kế này cũng hỗ trợ vào khả năng tự động viết lại chương trình ngay trong khi nó đang thực thi - một đặc trưng rất mạnh nhưng cần sử dụng một cách cẩn thận. Các đặc trưng này là nền tảng cho các máy tính hiện đại.

Nói một cách chính xác, phần lớn các máy tính hiện đại là thiết bị tính toán theo phép nhị phân, bằng điện tử, có sẵn chương trình và có mục đích không nhất định.

Các máy tính có mục đích đặc biệt

Các máy tính có mục đích đặc biệt (special-purpose computer) đã được phổ biến trong thập niên 1930 và đầu thập niên 1940 nhưng vẫn chưa bị thay thế hoàn toàn bởi các máy tính có mục đích không nhất định. Sự giảm xuống về kích thước và giá cả cũng như sự tăng năng lực của chúng đã khiến việc sử dụng máy tính có mục đích đặc biệt trong các ứng dụng đặc biệt trở thành một hiệu quả tốt về mặt chi phí. Rất nhiều các thiết bị dùng tại nhà và trong công nghiệp như điện thoại di động, máy thâu video, hệ thống đánh lửa tự động v.v có chứa loại máy tính có mục đích đặc biệt này. Trong một số trường hợp các máy tính này là loại Turing hoàn tất (như máy chơi trò chơi điện tử, PDA) nhưng rất nhiều trong số chúng được lập trình một lần tại nhà máy sản xuất và rất ít khi phải lập trình lại. Chương trình mà các thiết bị này thực thi thông thường được lưu trữ trong bộ nhớ chỉ đọc (ROM) mà khi cần thiết có thể thay thế để thay đổi hoạt động của máy. Các máy tính được nhúng bên trong các thiết bị khác thông thường được gọi là vi điều khiển (microcontroller) hay máy tính nhúng (embedded computer).

Các máy tính có một mục đích

Các máy tính có một mục đích (single-purpose computer) là loại xuất hiện sớm nhất của thiết bị máy tính. Khi được cung cấp dữ liệu, nó có thể tính kết quả của một hàm đơn giản đã được thiết lập trong cơ chế của nó. Các máy tính có mục đích không nhất định gần như đã thay thế hoàn toàn các máy tính có một mục đích và, do đó, đã phát sinh một lĩnh vực hoạt động mới của loài người: phát triển phần mềm. Các máy tính có mục đích không nhất định cần phải được lập trình với một bộ chỉ thị liên quan đến phần mềm máy tính. Việc thiết kế các thiết bị tính toán có một mục đích hay có mục đích đặc biệt hiện nay là những bài tập khái niệm thuần túy bao gồm các phần mềm thiết kế.

Theo hình thức hoạt động

Máy tính có thể được phân loại tùy theo cách thức người dùng vận hành. Có hai loại chính: kiểu xử lý tuần tự (batch processing) và kiểu xử lý tương tác (interactive processing).

Các phần mềm và ứng dụng máy tính

Các máy tính điện tử dùng kỹ thuật số (digital computer) đầu tiên, với kích thước lớn và giá thành cao, phần lớn thực hiện các tính toán khoa học, thông thường để hỗ trợ các mục tiêu quân sự. ENIAC đầu tiên được thiết kế để tính toán các bảng đạn đạo cho pháo binh nhưng nó cũng được sử dụng để tính toán mật độ nơtron trên bình diện để hỗ trợ vào thiết kế bom khinh khí. Công việc tính toán này, xảy ra từ tháng 12 năm 1945 đến tháng 1 năm 1946 với hàng triệu thẻ đục lỗ, vạch ra rằng một thiết kế cho bom kinh khí đang được xem xét lúc đó sẽ không thành công. (Rất nhiều siêu máy tính hiện nay cũng được sử dụng để giả lập các vũ khí hạt nhân.) CSIR Mk I, chiếc máy tính có sẵn chương trình (stored-program computer) đầu tiên của Úc được sử dụng để lượng giá các mô hình mưa cho lưu vực các sông thuộc sơ đồ dãy núi Snowy, một dự án thủy điện lớn. Các máy khác được sử dụng trong việc phân tích mã hóa, ví dụ như chiếc máy tính với kỹ thuật số được lập trình đầu tiên trên thế giới (tuy không phải là máy tính có mục đích không nhất định) là Colossus, được lắp ráp trong Chiến tranh thế giới thứ hai. Bất chấp sự định hướng ban đầu cho các ứng dụng khoa học, máy tính đã được sử dụng trong nhiều lĩnh vực khác.

Trước tiên các máy tính có sẵn chương trình được sử dụng để giải quyết các vấn đề kinh doanh. LEO, máy tính có sẵn chương trình lắp ráp bởi công ty J. Lyons and Co tại Anh, đã hoạt động và được sử dụng để quản lý hàng tồn kho, cũng như các mục đích khác, cho 3 năm trước khi IBM lắp ráp chiếc máy tính có sẵn chương trình đầu tiên của họ. Việc giảm giá thành và kích thước của máy đã liên tục làm nó phù hợp cho những tổ chức nhỏ hơn. Với sự phát minh ra bộ vi xử lý trong thập niên 1970 thì việc lắp ráp máy tính rẻ tiền đã trở thành khả thi. Trong thập niên 1980 máy tính cá nhân trở lên phổ biến cho nhiều công việc từ kế toán, soạn thảo, in ấn tài liệu tới tính toán các dự báo và các công việc toán học lặp lại qua các bảng tính.

Trong thập niên 1970, các kỹ sư điện toán của các viện nghiên cứu trên khắp nước Mỹ bắt đầu liên kết máy tính của họ với nhau thông qua công nghệ của ngành liên lạc viễn thông. Những cố gắng này được ARPA hỗ trợ, và mạng máy tính mà nó cung cấp được gọi là ARPANET. Các công nghệ tạo ra Arpanet đã mở rộng và phát triển sau đó. Chẳng bao lâu, mạng máy tính mở rộng ra ngoài các viện khoa học và được biết đến như là Internet.

Trong thập niên 1990, việc phát triển của công nghệ World Wide Web đã làm cho ngay cả những người không chuyên nghiệp cũng có thể sử dụng internet. Nó phát triển nhanh đến mức đã trở thành phương tiện liên lạc toàn cầu như ngày nay.

Phương thức hoạt động

Trong khi các công nghệ sử dụng trong máy tính không ngừng thay đổi kể từ những chiếc máy tính có mục đích không nhất định đầu tiên của thập niên 1940 (Xem Lịch sử phần cứng máy tính) thì phần lớn các máy tính vẫn còn sử dụng kiến trúc Von Neumann.

Kiến trúc Von Neumann chia máy tính ra làm bốn bộ phận chính:

Đơn vị số học và lôgic (ALU),

Mạch điều khiển (control circuitry),

Các thiết bị Nhập/Xuất (I/O).

Các bộ phận này được kết nối với nhau bằng các bó dây điện (được gọi là các bus khi mỗi bó hỗ trợ nhiều hơn một đường dữ liệu) và thường được điều khiển bởi bộ đếm thời gian hay đồng hồ (mặc dù các sự kiện khác cũng có thể điều vận mạch điều khiển).

Bộ nhớ máy tính có 2 phần chính là bộ nhớ trong và bộ nhớ ngoài. Trong hệ thống này bộ nhớ là sự nối tiếp của các ô đánh số thứ tự, mỗi ô chứa một phần nhỏ của thông tin. Thông tin có thể là chỉ thị cho máy tính. Mỗi ô cũng có thể chứa dữ liệu mà máy tính cần để thi hành chỉ thị. Nội dung của một ô nhớ có thể thay đổi ở bất kỳ thời điểm nào.

Kích thước một ô nhớ cũng như số lượng ô nhớ thay đổi theo từng máy tính giống như công nghệ sử dụng trong việc chế tạo bộ nhớ, từ rơ le cơ-điện tới ống chứa thủy ngân, từ băng từ tới transistor hay IC.

Đơn vị lôgic và số học, (tiếng Anh là Arithmetic and Logic Unit, viết tắt ALU), là thiết bị thực hiện các phép tính cơ bản như các phép tính số học (cộng, trừ, nhân, chia, v.v), các phép tính lôgic (AND, OR, NOT, v.v) cũng như các phép so sánh (ví dụ: so sánh nội dung của hai byte xem có bằng nhau). Đơn vị này là nơi mà các "công việc thực sự" được thực thi.

Đơn vị kiểm soát theo dõi các byte trong bộ nhớ có chứa chỉ thị để máy tính thực thi, cung cấp cho ALU một chỉ thị cần phải thực thi cũng như chuyển kết quả thu được tới các vị trí thích hợp trong bộ nhớ. Sau khi điều đó diễn ra, đơn vị kiểm soát chuyển tới chỉ thị kế tiếp (thông thường nằm tại địa chỉ ngay sau), nếu không thì chỉ thị sẽ là chỉ thị nhảy thông báo cho máy tính là chỉ thị tiếp theo nằm tại một địa chỉ khác. Khi tham chiếu tới bộ nhớ, chỉ thị hiện thời có thể sử dụng một số phương thức đánh địa chỉ (addressing mode) để xác định địa chỉ liên quan trong bộ nhớ. Một số bo mạch chủ trong máy tính có thể gắn được hai hay nhiều bộ xử lý. Các loại máy tính phục vụ thường có hai hay nhiều bộ xử lý.

Thiết bị ngoại vi (I/O)

Thiết bị ngoại vi cho phép máy tính thu nhận thông tin từ bên ngoài qua thiết bị Nhập. Sau khi được xử lý bởi Hệ Điều Hành Trung ương sẻ được gửi kết quả công việc của nó đến Thiết Bị Xuất.

Các Thiết Bị Nhập bao gồm: Con trỏ (Chuột (máy tính)), bàn phím, Ổ đĩa mềm, Ổ đĩa quang, Webcam, Touchpad

Các Thiết Bị Xuất bao gồm: màn hình, Máy in, ổ USB flash, Ổ Cứng Di Động tới những thiết bị không thông dụng như Ổ ZIP.

Công việc của thiết bị nhập (input) là mã hóa (chuyển đổi) thông tin từ nhiều định dạng sang dạng dữ liệu mà máy tính có thể xử lý.

Các thiết bị xuất (output) thì ngược lại, thực hiện công việc giải mã dữ liệu thành thông tin mà người sử dụng có thể hiểu được.

Với ý nghĩa này thì hệ thống máy tính có thể coi như một hệ thống xử lý dữ liệu.

Tập hợp các ngôn ngữ dùng cho chỉ thị của máy tính thì không nhiều như ngôn ngữ của con người. Máy tính có một tập hợp hữu hạn gồm các chỉ thị đơn giản đã được định nghĩa trước.

Nó chỉ có thể thực thi hai nhiệm vụ là đếm và so sánh. Các loại chỉ thị điển hình mà phần lớn máy tính có thể hỗ trợ, chuyển sang ngôn ngữ con người, là "sao chép nội dung ô 123, đặt bản sao đó vào ô 456", "thêm nội dung của ô 666 vào nội dung ô 042, đưa kết quả vào ô 013", "nếu kết quả của ô 999 là 0, chỉ thị tiếp theo nằm tại ô 345"...

Các chỉ thị trong máy tính tương ứng với mã trong hệ nhị phân - hệ đếm cơ số 2. Ví dụ mã của chỉ thị sao chép ("copy") có thể là 001.

Tập hợp các chỉ thị mà một máy tính hỗ trợ được gọi là ngôn ngữ máy của máy tính.

Trong thực tế, người ta thông thường không viết các chỉ thị cho máy tính bằng ngôn ngữ máy mà sử dụng các ngôn ngữ lập trình "bậc cao" để sau đó chúng được dịch sang ngôn ngữ máy một cách tự động bởi các chương trình máy tính đặc biệt (trình thông dịch (interpreter) và trình biên dịch (compiler)).

Một số ngôn ngữ lập trình rất gần với ngôn ngữ máy như assembler gọi là ngôn ngữ bậc thấp;

Ngược lại các ngôn ngữ lập trình như Prolog, Basic, Delphi... dựa trên các nguyên lý trừu tượng rất xa với hoạt động thực sự của máy gọi là ngôn ngữ bậc cao.

Các máy tính hiện đại ghép chung ALU và đơn vị kiểm soát vào trong một IC gọi là đơn vị xử lý trung tâm hay CPU. Thông thường, bộ nhớ máy tính nằm trong một số IC nhỏ gần CPU. Phần lớn trọng lượng máy tính là các bộ phận phụ thuộc như hệ thống cung cấp điện hay các thiết bị đầu/cuối (I/O).

Một số máy tính lớn khác biệt với mô hình trên ở điểm chính sau - chúng có nhiều CPU và đơn vị kiểm soát hoạt động đồng bộ. Ngoài ra, một số máy tính, sử dụng chủ yếu trong nghiên cứu và tính toán khoa học, khác biệt rất đáng kể với mô hình trên, nhưng chúng ít có ứng dụng thương mại vì mô hình lập trình chúng vẫn chưa được chuẩn hóa.

Vì vậy, hoạt động của máy tính thì không phức tạp trên nguyên lý. Thông thường, trong mỗi nhịp đồng hồ, máy tính sẽ nhận được các chỉ thị và dữ liệu từ bộ nhớ của nó. Các chỉ thị được thực thi, kết quả được lưu lại và chỉ thị tiếp theo được nhận về. Quá trình này tiếp diễn cho đến khi gặp chỉ thị dừng.

Chương trình máy tính đơn giản chỉ là một danh sách các chỉ thị để máy tính thực thi, có thể với các bảng dữ liệu. Rất nhiều chương trình máy tính chứa hàng triệu chỉ thị và rất nhiều chỉ thị được lặp đi lặp lại. Một chiếc máy tính thông thường ngày nay (năm 2003) có thể thực hiện 2-3 tỷ chỉ thị trong một giây. Máy tính không có các khả năng đặc biệt thông qua việc thực thi các chỉ thị phức tạp mà cơ bản là nó chỉ thực thi các chỉ thị đơn giản do lập trình viên đưa ra. Một số lập trình viên giỏi phát triển các tập hợp chỉ thị dùng cho một số công việc chung (như vẽ một điểm trên màn hình) và cung cấp các tập hợp chỉ thị đó cho các lập trình viên khác. Một số lập trình viên khác chỉ phát triển các ứng dụng thực tế dựa trên các nền tảng mà các lập trình viên kia cung cấp cho họ.

Hiện nay, phần lớn máy tính có thể thực hiện cùng một lúc vài chương trình. Điều này được gọi là đa nhiệm (multitasking). Trên thực tế, CPU thực thi các chỉ thị của một chương trình, sau một khoảng thời gian ngắn, nó chuyển sang thực thi các chỉ thị của chương trình thứ hai v.v. Khoảng thời gian ngắn đó được xem như là sự phân chia thời gian của CPU và nó tạo ảo giác như là các chương trình được thực thi đồng thời. Điều này cũng tương tự như phim là sự chuyển động đơn giản của các ảnh kế tiếp nhau. Hệ điều hành là chương trình thông thường kiểm soát sự phân chia thời gian đó.

Máy tính cần ít nhất một chương trình luôn luôn chạy để đảm bảo sự hoạt động của nó.

Trong điều kiện hoạt động bình thường (đối với các máy tính tiêu chuẩn) chương trình này được gọi là hệ điều hành (operating system).

Hệ điều hành sẽ quyết định chương trình nào được thi hành, khi nào và bao nhiêu tài nguyên (như bộ nhớ hay đầu vào/đầu ra) chúng được cấp.

Hệ điều hành cũng cung cấp một lớp trừu tượng trên phần cứng và cho phép truy nhập bằng các dịch vụ cung cấp cho các chương trình khác, như mã ("driver") cho phép lập trình viên viết chương trình cho máy tính mà không cần thiết phải biết các chi tiết thuộc bản chất của các thiết bị điện tử đính kèm.

Phần lớn các hệ điều hành có các lớp trừu tượng phần cứng đều có một giao diện người dùng (user interface) chuẩn hóa. Hệ điều hành phổ biến nhất hiện nay là Windows của Microsoft.

Hệ điều hành đầu tiên của máy tính là hệ điều hành MS-DOS thuộc tập đoàn Microsoft được tạo ra bởi Bill Gates

Phần cứng máy tính

Phần mềm máy tính

Lý thuyết khả năng tính toán

Bảng dữ liệu máy tính

Triển lãm máy tính

Khoa học máy tính

Các dạng máy tính: máy tính để bàn, máy tính xách tay, desknote, Roll-away.

Tính toán máy tính

Những điều liên quan đến máy tính

Máy tính trong truyện viễn tưởng

Lịch sử máy tính

Máy tính cá nhân (PC)

↑ "Timeline". Museum of science and industry. Truy cập ngày 3 tháng 9 năm 2012. {{Chú thích web}}: Kiểm tra giá trị ngày tháng trong: |accessdate= (trợ giúp)

Máy tính tại Từ điển bách khoa Việt Nam

Thế hệ máy tính tại Từ điển bách khoa Việt Nam

Máy vi tính tại Từ điển bách khoa Việt Nam Máy tính cá nhân tại Từ điển bách khoa Việt Nam

Máy tính cá nhân tại Từ điển bách khoa Việt Nam

Computer tại Encyclopædia Britannica (bằng tiếng Anh)

Bản mẫu:Tính toán song song

xtsKhoa học máy tính

Chú ý: Bản mẫu này cơ bản dựa trên Hệ thống xếp loại điện toán ACM năm 2012.

Mạch in Thiết bị ngoại vi Vi mạch Vi mạch tích hợp Hệ thống trên vi mạch (SoC) Tiêu thụ năng lượng (Điện toán xanh) Tự động hóa thiết kế điện tử Tăng tốc phần cứng Bộ xử lý Kích thước / Dạng thức

Thiết bị ngoại vi

Vi mạch tích hợp

Hệ thống trên vi mạch (SoC)

Tiêu thụ năng lượng (Điện toán xanh)

Tự động hóa thiết kế điện tử

Tăng tốc phần cứng

Kích thước / Dạng thức

Tổ chức hệ thống máy tính

Kiến trúc máy tính Độ phức tạp tính toán Độ tin cậy hệ thống Hệ thống nhúng Hệ thống thời gian thực

Kiến trúc máy tính

Độ phức tạp tính toán

Độ tin cậy hệ thống

Hệ thống thời gian thực

Kiến trúc mạng Giao thức mạng Phần cứng mạng Bộ lập lịch trình mạng Hiệu suất mạng Dịch vụ mạng

Bộ lập lịch trình mạng

Tổ chức phần mềm

Trình thông dịch Middleware Máy ảo Hệ điều hành Chất lượng phần mềm

Trình thông dịch

Chất lượng phần mềm

Ký pháp và công cụ phần mềm

Mẫu hình lập trình Ngôn ngữ lập trình Trình biên dịch Ngôn ngữ miền chuyên biệt Ngôn ngữ mô hình hóa Khung phần mềm Môi trường phát triển tích hợp Quản lý cấu hình phần mềm Thư viện phần mềm Kho chứa phần mềm

Mẫu hình lập trình

Ngôn ngữ lập trình

Ngôn ngữ miền chuyên biệt

Ngôn ngữ mô hình hóa

Môi trường phát triển tích hợp

Quản lý cấu hình phần mềm

Thư viện phần mềm

Kho chứa phần mềm

Phát triển phần mềm

Biến điều khiển Quy trình phát triển phần mềm Phân tích yêu cầu Thiết kế phần mềm Xây dựng phần mềm Triển khai phần mềm Công nghệ phần mềm Bảo trì phần mềm Nhóm lập trình Mô hình nguồn mở

Quy trình phát triển phần mềm

Phân tích yêu cầu

Thiết kế phần mềm

Xây dựng phần mềm

Triển khai phần mềm

Công nghệ phần mềm

Bảo trì phần mềm

Mô hình nguồn mở

Lý thuyết tính toán

Mô hình tính toán Ngẫu nhiên Ngôn ngữ hình thức Lý thuyết Automat Lý thuyết khả tính Lý thuyết độ phức tạp tính toán Logic Ngữ nghĩa

Mô hình tính toán Ngẫu nhiên

Ngôn ngữ hình thức

Lý thuyết Automat

Lý thuyết khả tính

Lý thuyết độ phức tạp tính toán

Thiết kế thuật toán Phân tích thuật toán Hiệu quả thuật toán Thuật toán ngẫu nhiên Hình học tính toán

Thiết kế thuật toán

Phân tích thuật toán

Hiệu quả thuật toán

Thuật toán ngẫu nhiên

Hình học tính toán

Toán học về điện toán

Toán học rời rạc Xác suất Thống kê Phần mềm toán học Lý thuyết thông tin Giải tích toán học Giải tích số Khoa học máy tính lý thuyết

Toán học rời rạc

Phần mềm toán học

Lý thuyết thông tin

Giải tích toán học

Khoa học máy tính lý thuyết

Hệ thống thông tin

Hệ quản trị cơ sở dữ liệu Hệ thống lưu trữ thông tin Hệ thống thông tin doanh nghiệp Hệ thống thông tin xã hội Hệ thống thông tin địa lý Hệ thống hỗ trợ ra quyết định Hệ thống điều khiển quá trình Hệ thống thông tin đa phương tiện Khai phá dữ liệu Thư viện số Nền tảng máy tính Tiếp thị kỹ thuật số World Wide Web Truy hồi thông tin

Hệ quản trị cơ sở dữ liệu

Hệ thống lưu trữ thông tin

Hệ thống thông tin doanh nghiệp

Hệ thống thông tin xã hội

Hệ thống thông tin địa lý

Hệ thống hỗ trợ ra quyết định

Hệ thống điều khiển quá trình

Hệ thống thông tin đa phương tiện

Khai phá dữ liệu

Nền tảng máy tính

Tiếp thị kỹ thuật số

Truy hồi thông tin

Mật mã học Các phương pháp hình thức Hacker bảo mật Dịch vụ bảo mật Hệ thống phát hiện xâm nhập Bảo mật phần cứng Bảo mật mạng An toàn thông tin Bảo mật ứng dụng

Các phương pháp hình thức

Hệ thống phát hiện xâm nhập

Bảo mật phần cứng

An toàn thông tin

Bảo mật ứng dụng

Tương tác người–máy

Thiết kế tương tác Điện toán xã hội Điện toán khắp nơi Trực quan hóa Khả năng tiếp cận

Thiết kế tương tác

Điện toán xã hội

Điện toán khắp nơi

Khả năng tiếp cận

Tính toán tương tranh Tính toán song song Điện toán phân tán Đa luồng Đa xử lý

Tính toán tương tranh

Tính toán song song

Điện toán phân tán

Trí tuệ nhân tạo

Xử lý ngôn ngữ tự nhiên Biểu diễn tri thức và suy luận Thị giác máy tính Lập kế hoạch và lên lịch tự động Phương pháp tìm kiếm Phương pháp điều khiển Triết học về trí tuệ nhân tạo Trí tuệ nhân tạo phân tán

Xử lý ngôn ngữ tự nhiên

Biểu diễn tri thức và suy luận

Thị giác máy tính

Lập kế hoạch và lên lịch tự động

Phương pháp tìm kiếm

Phương pháp điều khiển

Triết học về trí tuệ nhân tạo

Trí tuệ nhân tạo phân tán

Học có giám sát Học không có giám sát Học tăng cường Học đa tác vụ Kiểm chứng chéo

Học không có giám sát

Hoạt hình Thực tế mở rộng Tăng cường Hỗn hợp Ảo Kết xuất Thao túng hình ảnh Bộ xử lý đồ họa Nén ảnh Mô hình hóa dạng khối

Thực tế mở rộng Tăng cường Hỗn hợp Ảo

Thao túng hình ảnh

Mô hình hóa dạng khối

Điện toán ứng dụng

Điện toán lượng tử Thương mại điện tử Phần mềm doanh nghiệp Toán học tính toán Vật lý tính toán Hóa học tính toán Sinh học tính toán Khoa học xã hội tính toán Kỹ thuật tính toán Điện toán khả vi Y tế tính toán Nghệ thuật số Xuất bản điện tử Chiến tranh mạng Bầu cử điện tử Trò chơi video Soạn thảo văn bản Vận trù học Công nghệ giáo dục Quản lý tài liệu

Điện toán lượng tử

Thương mại điện tử

Phần mềm doanh nghiệp

Toán học tính toán

Vật lý tính toán

Hóa học tính toán

Sinh học tính toán

Khoa học xã hội tính toán

Kỹ thuật tính toán

Điện toán khả vi

Xuất bản điện tử

Chiến tranh mạng

Soạn thảo văn bản

Công nghệ giáo dục

Quản lý tài liệu

Thể loại Đề cương Thuật ngữ

xtsPhần cứng máy tính

Bo mạch chủ · CPU · PCI · Chipset · Chipset cầu bắc · Chipset cầu nam · BIOS · CMOS

Lưu trữ dữ liệu máy tính

RAM · ROM · Cache · Đĩa cứng · Đĩa mềm · Đĩa lưu trữ thể rắn · CD-ROM · DVD · BD · Flash disk · Thẻ nhớ

Thiết bị nhập xuất dữ liệu

Màn hình · Bàn phím · Chuột · Máy in · Webcam · Joystick · Gamepad · Máy quét ảnh · Tai nghe · Microphone · Bảng vẽ đồ họa

Thiết bị mạng - truyền thông

Modem · Card mạng · TV box · Router · Switch · Hub · Bộ lặp · Adobe Bridge · Access point · Cổng vi tính

Bộ nguồn · Vỏ máy tính · Tản nhiệt · Loa máy tính

Cơ sở dữ liệu tiêu đề chuẩn

Hoa KỳPhápBnF dataNhật BảnCộng hòa SécTây Ban NhaLatviaIsrael

Từ điển lịch sử Thụy SĩNARAYale LUX

Từ điển lịch sử Thụy Sĩ

Khoa học thông tin

Trang thiếu chú thích trong bài

Bài có hộp thông tin không có hàng dữ liệu

Trang sử dụng bản mẫu nhiều hình với các hình được chia tỷ lệ tự động

Bài viết có trích dẫn không khớp

Lỗi CS1: ngày tháng

Bài viết có nguồn tham khảo tiếng Anh (en)