Lời nói đầu Trong lịch sử văn minh nhân loại, con người đã chứng kiến những phát minh, phát kiến có tầm vóc hết sức to lớn, thay đổi hầu như hoàn toàn diện mạo cuộc sống của chúng ta: Cô
Trang 1ĐẠI HỌC QUỐC GIA TP HỒ CHÍ MINH TRƯỜNG ĐẠI HỌC CÔNG NGHỆ THÔNG TIN
KHOA KHOA HỌC MÁY TÍNH
BỘ MÔN: PHƯƠNG PHÁP NGHIÊN CỨU KHOA HỌC
TRONG TIN HỌC
- -
Bài tiểu luận LỊCH SỬ MÁY TÍNH HIỆN ĐẠI DƯỚI GÓC NHÌN CỦA
NGƯỜI SÁNG TẠO KHOA HỌC
GVHD: GS TS Hoàng Văn Kiếm Học viên: Nguyễn Vĩnh Kha
MSHV: CH1101096 LỚP: CH06
KHÓA: 2011-2013
TP Hồ Chí Minh – 03/2012
Trang 2Mục lục
Lời nói đầu 2
Chương I.Konrad Zuse và máy tính có khả năng lập trình tự do đầu tiên 4
Chương II.Atanasoff-Berry: Sự xuất hiện của máy tính điện tử đầu tiên 8
Chương III.Howard Aiken và Grace Hopper: Máy tính Havard MARK I 11
Chương IV.UNIVAC - Tiếng vang đầu tiên của máy vi tính 13
Lời kết 16
Tài liệu tham khảo 17
Trang 3Lời nói đầu
Trong lịch sử văn minh nhân loại, con người đã chứng kiến những phát minh, phát kiến có tầm vóc hết sức to lớn, thay đổi hầu như hoàn toàn diện mạo cuộc sống của chúng ta: Công cụ đồ đá đầu tiên, việc sử dụng lửa, các máy cơ học, cho đến những phát minh vĩ đại thời gian gần đây như vệ tinh nhân tạo, các nhà máy điện hạt nhân hoặc các tiến bộ trong lĩnh vực sinh học (nhân bản vô tính, sơ đồ gen loài người) Từng bước, con người ngày càng cải thiện cuộc sống của mình nhờ vào các công cụ, thiết bị "hiện đại dần theo thời gian"
Trong kỉ nguyên "công nghệ - thông tin" hiện nay, máy vi tính (computer) đã trở thành một khái niệm phổ cập, mà sự tồn tại của nó
là không thể tách rời với sự tiến bộ của con người Bản thân sự hình thành và phát triển của máy tính đã là một quá trình chứa đựng rất nhiều nỗ lực cũng như óc sáng tạo của nhiều thế hệ con người Trong bài tiểu luận này, ta sẽ điểm qua một số cột mốc quan trọng trong lịch
sử phát triển máy tính và đưa ra những phân tích dưới góc nhìn của một người làm sáng tạo khoa học
Trong giới hạn của một bài tiểu luận, người viết xin điểm qua năm cột mốc quan trọng của máy vi tính từ năm 1936 (thời điểm máy tính
cơ học đầu tiên ra đời) đến 1952 (sự kiện máy tính UNIVAC dự đoán chính xác kết quả một cuộc bầu cử tổng thống Mỹ vào lúc đó, là sự kiện đầu tiên gây tiếng vang cho máy tính - khiến nó trở thành một cái tên nổi tiếng trong cộng đồng), tương ứng với 5 chương:
Chương I Konrad Zuse và máy tính có khả năng lập trình tự do đầu tiên
Chương II Atanasoff-Berry: Sự xuất hiện của máy tính điện tử đầu tiên
Trang 4Chương III Howard Aiken và Grace Hopper: Máy tính Havard MARK I
Chương IV UNIVAC - Tiếng vang đầu tiên của máy vi tính
Cuối mỗi chương, ta sẽ đưa ra một số nhận xét, đánh giá về những phát kiến, thay đổi của máy tính dưới góc nhìn của một người làm nghiên cứu khoa học Các luận điểm, phương pháp được đề cập sẽ dựa trên quyển “Các thủ thuật (nguyên tắc) sáng tạo cơ bản” của tác giả Phan Dũng
Trong quá trình soạn thảo tài liệu, người viết không thể tránh khỏi những thiếu sót và nhầm lẫn - do vậy rất mong nhận được các ý kiến đóng góp từ đọc giả, cũng như quý thầy cô
TP.HCM - ngày 13 tháng 04 năm 2012
Học viên Nguyễn Vĩnh Kha
Trang 5Chương I Konrad Zuse và máy tính có khả năng lập trình tự do đầu tiên
Konrad Zuse (1910-1995) là một kĩ sư xây dựng trong công ty Henschel Aircraft ở Berlin, Đức vào giai đoạn đầu của thế chiến thứ
II Ông được gọi là "người phát minh ra máy tính hiện đại" nhờ vào chuỗi các máy tính tự động mà ông sáng chế ra
Một trong những vấn đề khó nhất khi thực hiện những tính toán lớn, thậm chí là với một cây thước loga hoặc một máy tính cơ học là theo dấu tất cả các kết quả trung gian và sử dụng chúng đúng chỗ trong các bước tính toán tiếp theo Konrad Zuse muốn khắc phục khó khăn này Ông nhận ra rằng một thiết bị tính toán tự động cần có ba thành phần cơ bản: một bộ điều khiển, một bộ nhớ, và thành phần đảm nhận các tính toán số học Vào 1936, Zuse tạo ra một máy tính cơ học với tên gọi Z1, đây được xem là máy tính sử dụng cơ số 2 đầu tiên Zuse đã sử dụng nó để thực hiện các khảo sát một số công nghệ nền tảng trong việc phát triển máy tính: thuật toán về dấu chấm động, bộ nhớ có trữ lượng lớn, các modules cũng như các rowle hoạt động trên nguyên tắc yes/no Các ý tưởng của Zuse mặc dù không được cài đặt đầy đủ vào Z1, nhưng đã
ngày càng hoàn thiện hơn với mỗi mẫu máy tính Z
Vào 1939, Zuse hoàn tất Z2, máy tính cơ-điện đầy đủ chức năng đầu tiên
Trang 6Konrad Zuse hoàn thành Z3 vào 1941, sử dụng các phụ kiện tái chế được các đồng nghiệp và sinh viên quyên góp Đây là máy vi tính số đầu tiên có đầy khả năng lập trình và hoạt động bằng điện, chiếc máy dựa trên số chấm động nhị phân và hệ thống chuyển mạch Zuse sử dụng các cuộn phim cũ để lưu trữ chương trình và dữ liệu cho Z3, thay
vì sử dụng băng giấy hay bìa đục lỗ Trong suốt thời gian chiến tranh, giấy vốn được cung cấp rất hạn chế ở Đức
Vào 1941, Z3 chứa đựng hầu hết các thành phần của máy tính hiện đại, vốn được John von Neumann và các cộng sự của ông thiết kế vào
1946 Thiếu sót duy nhất là khả năng lưu trữ chương trình trên bộ nhớ cùng với dữ liệu Konrad Zuse đã không cài đặt thiết kế này cho Z3, lý
do là vì bộ nhớ 64 từ là quá nhỏ để hỗ trợ chế độ làm việc này Dựa trên thực tế rằng ông muốn thực hiện hàng ngàn chỉ thị trong cùng một câu lệnh, ông chỉ sử dụng bộ nhớ để lưu trữ các biến và con số
Cấu trúc khối của Z3 rất tương đồng với một chiếc máy tính hiện đại Z3 bao gồm các thành phần độc lập, chẳng hạn một thiết bị đọc băng giấy, thành phần điều khiển, thành phần số học cho dấu chấm động cũng như các thiết bị nhập/xuất
Năm 1946, Konrad Zuse đã viết ra ngôn ngữ lập trình đầu tiên và đặt tên là 'Plankalkul', đây là ngôn ngữ ông dùng để lập trình các máy tính của mình Sử dụng Plankalkul, Zuse đã viết ra chương trình chơi
cờ vua đầu tiên trên thế giới
Ngôn ngữ lập trình Plankalkul bao gồm các mảng và mẩu tin, nó sử dụng một kiểu phép gán (lưu trữ giá trị của một biểu thức trong một biến), trong đó giá trị mới nằm ở cột bên phải Mảng là một tập các mục dữ liệu cùng loại được phân biệt bằng chỉ số Mảng là phương pháp tốt nhất khi cần truy xuất theo thứ tự bất kỳ Ngược lại với danh sách, vốn là cách thức tốt nhất khi truy cập tuần tự
Trang 7Các mẫu từ Z1 đến Z3 bị phá hủy trong chiến tranh, cùng với Zuse Apparatebau, công ty máy vi tính đầu tiên do Zuse sáng lập vào 1940 Ông rời nước Đức đến Zurich để hoàn thành Z4.Ông đã phải lén đưa Z4 ra khỏi nước Đức trên một xe tài quân sự Ông hoàn tất việc xây dựng và cài đặt Z4 tại trụ sở khoa toán ứng dụng của học viện bách khoa liên bang Zurich Chiếc máy được sử dụng ở đó cho đến năm
1955 Z4 sỡ hữu một bộ nhớ cơ học với dung lượng 1024 từ vài đầu đọc thẻ Zuse không còn phải sử dụng băng ghi phim để lưu trữ các chương trình của mình; lúc đó ông đã có thể sử dụng các bìa đục lỗ Chiếc máy có thành phần đục lỗ và các thiết bị khác tạo khả năng lập trình linh động bao gồm cả dịch địa chỉ và phân nhánh có điều kiện Năm 1949, ông chuyển về lại Đức để thành lập công ty thứ hai tên gọi Zuse KG để xây dựng và quảng bá cho các thiết kế của mình Ông đã làm lại mẫu Z3 vào 1960 và Z1 vào 1984
Nhận định và phân tích:
Trong giai đoạn này, ta có thể thấy sự hình thành của chuỗi máy tính cơ học đầu tiên đã ứng dụng các phương pháp sáng tạo khoa học sau:
Nguyên tắc phân nhỏ: Việc Zuse tách một máy tính ra ba thành phần riêng biệt - bộ điều khiển, bộ nhớ, và thành phần đảm nhận các tính toán số học – rõ ràng đã sử dụng nguyên tắc phân nhỏ: Phân nhỏ và tách rời máy tính ra các thành phần cơ bản, chuyên môn hóa các thành phần này theo các mục đích khác nhau
Nguyên tắc sử dụng trung gian: Việc sử dụng hệ cơ số 2 cho máy tính chính là biểu hiện của nguyên tắc sử dụng trung gian Cơ số thập phân – đối với con người vốn là cơ số dễ thao tác và thân thiện – nhưng với máy tính lại không phải là
Trang 8giải pháp tối ưu Vậy nên, thay vì sử dụng trực tiếp cơ số thập phân cho máy tính, ông đã quyết định cài đặt cơ số nhị phân Đây chính là sử dụng một yếu tố trung gian để đạt được hiệu suất cao nhất
Nguyên tắc “rẻ” thay cho “đắt”: Do trong thời gian chiến tranh chi phí cho các thiết bị máy tính tăng cao, việc sử dụng các thẻ đục lỗ khá đắt đỏ, Zuse giải quyết vấn đề bằng cách
sử dụng chất liệu thay thế Mặc dù không cho hiệu suất tốt như các thẻ đục lỗ, nhưng các cuộn phim cũ lại có ưu thế về mặt kinh tế, điều đó hoàn toàn có thể chấp nhận được vào thời điểm ấy Đây rõ ràng là biểu hiện của nguyên tắc “rẻ” thay cho “đắt”
Nguyên tắc tách khỏi: Sự kiện không lưu trữ chương trình trên bộ nhớ cùng với dữ liệu là một biểu hiện của nguyên tắc tách khỏi: tách thành phần không quá quan trọng ra khỏi giải pháp mong muốn Thật sự Zues hoàn toàn có thể thực hiện theo đúng thiết kế ban đầu, nhưng do nhận thấy không tối ưu
so với hiện trạng lúc đó nên ông đã quyết định một cách cài đặt khác
Nguyên tắc sử dụng trung gian: Xét về mặt mục đích, ngôn ngữ lập trình được xem như đối tượng trung gian, cho phép lập trình viên thao tác dễ dàng – bài bản hơn với phần cứng máy tính Việc sử dụng ngôn ngữ lập trình thực sự là biểu hiện của nguyên tắc sử dụng trung gian: Sử dụng đối tượng
dễ thao tác hơn làm cầu nối với đối tượng khó thao tác
Trang 9Chương II Atanasoff-Berry: Sự xuất hiện của máy tính điện tử đầu tiên
Giáo sư John Atanasoff và nghiên cứu sinh Clifford Berry chế tạo thành công chiếc máy tính điện tử kỹ thuật số đầu tiên trên thế giới tại Đại Học bang Iowa từ năm 1939 đến năm 1942 Các máy tính Atanasoff-Berry đại diện cho một số đổi mới trong tính toán, bao gồm
hệ thống nhị phân của số học, xử lý song song, bộ nhớ tái sinh, và sự tách biệt giữa bộ nhớ máy và các chức năng tính toán
“Đó là vào một buổi tối phóng xe 100 m/h với rượu Scotch” John Atanasoff nói với các phóng viên, “khi các khái niệm hình thành, một
cỗ máy vận hành bằng điện năng sử dụng hệ nhị phân (hai số) thay vì hệ mười chữ
số, bộ nhớ ngưng, và quá trình tái sinh để ngăn cản mất bộ nhớ từ việc bị cúp điện”
Vào cuối năm 1939, John Atanasoff hợp tác với Clifford Berry để xây dựng một mẫu thử nghiệm Họ tạo ra các máy tính đầu tiên sử dụng điện năng, ống chân không, số nhị phân và tụ điện Các tụ điện nằm trong một trụ quay hình ống tích điện trữ cho bộ nhớ Một Berry thông minh và sáng tạo, với kiến thức chuyên về điện tử và các kỹ năng cơ khí xây dựng, là đối tác lý tưởng cho Atanasoff Mẫu thử nghiệm này đã giành được một khoản trợ cấp 850 đô la để xây dựng bản hoàn chỉnh Sản phẩm cuối cùng có kích cỡ của một bàn làm việc, nặng 700 pounds, có hơn 300 ống chân không, với dây dài 1 dặm Nó
Trang 10có thể tính toán một phép tính mỗi 15 giây, một máy tính ngày nay có
thể tính toán 150 tỷ phép tính trong 15 giây
John Atanasoff đã viết hầu hết các khái miệm của máy tính hiện đại đầu tiên ở mặt sau của một khăn ăn cocktail Ông rất thích lái xe nhanh trong khi uống scotch
Nhận định và phân tích:
Trong giai đoạn mở đầu của máy tính điện tử, ta có thể thấy biểu hiện của các phương pháp sáng tạo khoa học sau:
Nguyên tắc thay thế sơ đồ cơ học: Máy tính, trong giai đoạn đầu được thiết kế và cài đặt hoàn toàn theo hướng cơ học nhưng trong giai đoạn này John Atanasoff đã quyết định xây dựng một máy tính điện tử kỹ thuật số Việc áp dụng công nghệ điện tử cho máy tính không những tăng hiệu suất của máy mà còn giảm tải sự cồng kềnh và chi phí vận hành Ta hoàn toàn có thể nói đây chính là biểu hiện của nguyên tắc thay thế sơ đồ cơ học
Nguyên tắc liên tục tác động có ích: Việc áp dụng phương thức xử lý song song cho Atanasoff-Berry chính là hướng tiếp cận theo nguyên tắc liên tục tác động có ích: cỗ máy được thiết kế hướng đến mục tiêu “tất cả các thành phần đều phải hoạt động đồng thời – không nên có thành phần nào ngưng nghỉ trong quá trình hoạt động” Khả năng tăng năng
Trang 11suất và tiết kiệm thời gian, chi phí vận hành là không thể phủ nhận khi ta áp dụng nguyên tắc này Ngày nay hầu hết các máy tính đều được thiết kế để có thể thực hiện xử lý song song một lúc nhiều tác vụ
Nguyên tắc tự phục vụ và nguyên tắc dự phòng: Việc áp dụng tụ điện để tự nạp điện cho bộ nhớ, phòng ngừa khả năng mất mát dữ liệu do cúp điện thực sự là một cải tiến trong thiết kế của Atanasoff-Berry, từ đó sản sinh ra khái niệm bộ nhớ tái sinh Với thiết kế này, chiếc máy có khả năng tự phục vụ bản thân và ngăn ngừa bất trắc xảy ra – đây chính là minh chứng cho việc áp dụng đồng thời hai nguyên tắc: nguyên tắc phục vụ và nguyên tắc dự phòng
Nguyên tắc thay đổi độ trơ: Với cỗ máy của mình, Atanasoff
và Berry đã sử dụng một kỹ thuật khá phổ biến hiện nay là dùng các ống chân không Khéo léo sử dụng những tiến bộ công nghệ đương thời trong sản phẩm của mình, hai người
đã cho ra một chiếc máy có độ bền cao hơn và hiệu suất tốt hơn Sử dụng chân không trong các thiết bị chính là cách thức tiếp cận theo nguyên tắc thay đổi độ trơ
Nguyên tắc sử dụng các vật liệu hợp thành (composite): Về mặt kĩ thuật, tụ điện là một linh kiện điện tử thụ động tạo bởi hai bề mặt dẫn điện được ngăn cách bởi điện môi Sử dụng đồng thời nhiều vật liệu trong một đơn vị linh kiện rõ ràng là ứng dụng của nguyên tắc sử dụng các vật liệu hợp thành
Trang 12Chương III Howard Aiken và Grace Hopper: Máy tính
Havard MARK I
Howard Aiken và Grace Hopper thiết kế chuỗi máy MARK tại đại học Havard Sê-ri MARK bắt đầu vào năm 1944 với mẫu đầu tiên là
MARK I Hãy tượng tượng về một căn phòng khổng lồ đầy tiếng ồn,
các thành phần kim loại va vào nhau lách cách, một căn phòng dài 55
feet và cao tới 8 feet Với trọng lượng 5 tấn, thiết bị khổng lồ này bao
gồm gần 760 ngàn thành phần Chiếc máy được hải quân Mỹ sử dụng
cho việc chế tạo đại bác và đạn đạo, MARK I được sử dụng cho đến
năm 1949
Cỗ máy được điều khiển bởi các cuộn giấy được đục lỗ trước, có thể thực hiện các phép toán cộng, trừ, nhân, chia và tham chiếu đến
các kết quả tính toán trước đó Nó có các chương trình con phục vụ
cho các tính toán liên quan đến logarit, lượng giác và sử dụng bộ số
thập phân dài 23 chữ số Dữ liệu được lưu trữ và tính toán hoàn toàn
cơ học thông qua 3000 bánh răng bộ nhớ thập phân, 1400 bộ ngắt
mạch vòng và 500 dặm dây điện Các rờ le điện tử khiến nó được xếp
vào danh sách các máy tính rờ le Tất cả đầu ra được hiển thị trên một
máy đánh chữ hoạt động bằng điện Theo tiêu chuẩn hiện nay, MARK thực sự là chậm, nó cần 3 đến 5 giây để thực hiện một phép nhân
Vào 1949, Grace Hopper bắt đầu nghiên cứu cho công ty Máy tính Eckert-Mauchly, ở đây, bà đã thiết kế một trình biên dịch cải tiến và