20 phát minh vĩ đại nhất trong lập trình máy tính

Trong một trong những cuộc trò chuyện tôi đã có với biên tập viên cấp cao của chúng tôi, tôi đã được hỏi câu hỏi, "Các lập trình viên đầu tiên đã lập trình như thế nào?" Điều này dẫn đến một cuộc thảo luận về Babbage và Ada Lovelace, cuối cùng, tôi được giao nhiệm vụ nghiên cứu làm sao tất cả đã bắt đầu – nó là lần đầu tiên trong lịch sử máy tính.

Tôi đã tìm hiểu sách và các trang web và nhận được nhiều điều tiết lộ: Về mặt kỹ thuật, Babbage không phải là người phát minh của máy tính, FORTRAN chắc chắn không phải là ngôn ngữ lập trình cấp cao đầu tiên và chúng tôi đã từng có bút cảm ứng cho màn hình CRT (thực sự).

Tôi cũng rất ngạc nhiên khi biết rằng các cuộc chiến tranh cần thiết như thế nào trong việc thúc đẩy tiến trình phát triển máy tính nhanh chóng, cộng với sự đóng góp của nhiều phụ nữ mà sách giáo khoa của chúng tôi đã chọn bỏ quên. Do đó, để lấp đầy khoảng trống trong lịch sử của máy tính và chương trình, tôi đã tổng hợp 20 lần đầu tiên trong thế giới máy tính, từ bóng bowling đến Thế chiến 2 và tất cả những gì ở giữa.

1. Máy tính đầu tiên: “Công cụ khác biệt” (1821)

“Công cụ khác biệt” là một máy tính cơ học được đề xuất sử dụng để xuất các bảng toán học.

Được sự ủy quyền của chính phủ Anh, Charles Babbage (hay còn gọi là Cha đẻ của Máy tính) bắt đầu làm việc với nó, nhưng do chi phí sản xuất cao, nguồn tài trợ đã bị dừng lại và máy không bao giờ được hoàn thành.

động cơ vi sai

Nguồn ảnh: Wikimedia

2. Máy tính mục đích chung đầu tiên: “Máy phân tích” (1834)

“Công cụ phân tích” cũng là một máy tính cơ học được đề xuất, đầu vào của nó được cho là các thẻ đục lỗ, với các chương trình và dữ liệu được đục lỗ trên chúng. Một đứa con tinh thần khác của Charles Babbage, chiếc máy này cũng chưa được hoàn thiện.

Công cụ phân tích

Nguồn ảnh: wikieducator.org

3. Chương trình máy tính đầu tiên: thuật toán tính toán số Bernoulli (1841 – 1842)

Ada Lovelace (lập trình viên máy tính đầu tiên trên thế giới) bắt đầu dịch hồ sơ của nhà toán học người Ý Luigi Menabrea về công cụ phân tích của Babbage vào năm 1841.

Trong quá trình dịch, cô ấy bắt đầu quan tâm đến chiếc máy và để lại ghi chú cùng với bản dịch của mình. Một trong những lưu ý – lưu ý G, chứa thuật toán tính toán số Bernoulli bằng công cụ phân tích, được coi là chương trình máy tính đầu tiên.

chương trình máy tính đầu tiên

Nguồn ảnh: Wikimedia

4. Máy tính lập trình làm việc đầu tiên: Z3 (1941)

Konrad Zuse (Nhà phát minh ra máy tính) đã có một chiếc máy tính cơ học Z1 nhưng nó chỉ hoạt động trong vài phút mỗi lần.

Việc sử dụng một công nghệ khác – rơ le, đã dẫn đến Z2 và cuối cùng là Z3. Z3 là một máy tính điện từ mà chương trình và dữ liệu được lưu trữ trên các băng đục lỗ bên ngoài. Đó là một dự án bí mật của chính phủ Đức và được Viện Nghiên cứu Máy bay Đức đưa vào sử dụng.

Chiếc máy ban đầu đã bị phá hủy trong vụ đánh bom Berlin năm 1943.

Máy tính Z3 của Zuse

5. Máy tính điện tử đầu tiên: Máy tính Atanasoff-Berry (ABC) (1942)

Được tạo ra bởi John Vincent Atanasoff & Clifford Berry, do đó có tên Atanasoff-Berry Computer hoặc ABC được sử dụng để tìm lời giải cho các phương trình tuyến tính đồng thời.

Đây là chiếc máy tính đầu tiên sử dụng hệ nhị phân để biểu diễn dữ liệu và chuyển mạch điện tử thay vì cơ khí. Tuy nhiên, máy tính không thể lập trình được.

Máy tính Atanasoff-Berry

Nguồn ảnh: galileog

6. Máy tính điện tử có thể lập trình đầu tiên: Colossus (1943)

Colossus do Tommy Flowers tạo ra, là một cỗ máy được tạo ra để giúp người Anh giải mã các thông điệp của Đức đã được mã hóa bằng mật mã Lorenz, hồi Thế chiến thứ hai.

Nó được lập trình bằng các công tắc và phích cắm điện tử. Colossus đã giảm thời gian giải mã các tin nhắn được mã hóa từ vài tuần xuống chỉ còn vài giờ.

máy tính khổng lồ

Nguồn ảnh: Wikimedia

7. Máy tính điện tử có thể lập trình mục đích chung đầu tiên: ENIAC (1946)

Được tài trợ bởi Quân đội Hoa Kỳ, ENIAC hoặc Máy tính và tích hợp số điện tử được phát triển tại Trường Kỹ thuật Điện Moore, Đại học Pennsylvania bởi John Mauchly & J. Presper Eckert.

ENIAC rộng 150 feet và có thể được lập trình để thực hiện các hoạt động phức tạp như vòng lặp; lập trình được thực hiện bằng cách thay đổi các thiết bị chuyển mạch và cáp điện tử của nó. Nó sử dụng đầu đọc thẻ cho đầu vào và thẻ đục lỗ cho đầu ra.

Nó giúp tính toán về tính khả thi của quả bom khinh khí đầu tiên trên thế giới.

ENIAC

Nguồn ảnh: hnf.de

8. Trackball đầu tiên: (1946/1952)

Tại sao hai năm cho quả bóng lăn đầu tiên? Cho phép tôi giải thích.

Năm đầu tiên là năm được đưa ra bởi Ralph Benjamin, người đã tuyên bố đã tạo ra bi xoay đầu tiên trên thế giới khi ông đang làm việc trên một hệ thống giám sát cho máy bay bay thấp vào năm 1946. Phát minh của ông. mô tả đã sử dụng một quả bóng để điều khiển tọa độ XY của con trỏ trên màn hình.

Thiết kế đã được cấp bằng sáng chế vào năm 1947 nhưng không bao giờ được phát hành vì nó được coi là "bí mật quân sự". Quân đội đã chọn cần điều khiển thay thế.

Ứng cử viên thứ hai cho quả bóng lăn đầu tiên trên thế giới, được sử dụng trong hệ thống DATAR của Hải quân Canada vào năm 1952, được phát minh bởi Tom Cranston và cộng sự. Thiết kế bi xoay này có một mô hình sử dụng một quả bóng bowling của Canada quay trên “vòng bi không khí” (xem hình ảnh bên dưới).

trackball phẳng

Nguồn ảnh: công cụ

9. Máy tính chương trình lưu trữ đầu tiên: SSEM (1948)

Để khắc phục những thiếu sót của bộ nhớ dòng trễ, Frederic C. Williams và Tom Kilburn đã phát triển thiết bị lưu trữ kỹ thuật số truy cập ngẫu nhiên đầu tiên dựa trên CRT tiêu chuẩn.

SSEM (Manchester Máy thí nghiệm quy mô nhỏ) được sử dụng để triển khai thiết bị lưu trữ đó cho mục đích sử dụng thực tế. Các chương trình được nhập ở dạng nhị phân bằng cách sử dụng 32 công tắc và đầu ra của nó là CRT.

Bản sao của SSEM

Nguồn hình ảnh: Máy tính Đại học Staffordshire

10. Ngôn ngữ lập trình cấp cao đầu tiên: Plankalkül (1948)

Mặc dù Konrad Zuse bắt đầu làm việc trên Plankalkül từ năm 1943, nhưng mãi đến năm 1948, ông mới xuất bản một bài báo về nó. Thật không may, nó không thu hút được nhiều sự chú ý. Phải mất gần ba thập kỷ sau, một trình biên dịch mới được triển khai cho nó, một trình biên dịch được tạo ra bởi Joachim Hohmann trong một luận văn.

Plankalkül, Chương 5, Lý thuyết cờ vua

11. Trình lắp ráp đầu tiên: “Đơn đặt hàng ban đầu” cho EDSAC (1949)

Assembler là một chương trình chuyển đổi các phép nhớ (cấp thấp) thành biểu diễn số (mã máy). Các đơn đặt hàng đầu tiên trong EDSAC (Máy tính tự động lưu trữ trễ điện tử) là hệ thống đầu tiên của một hệ thống như vậy.

Nó được sử dụng để tập hợp các chương trình từ đầu vào băng giấy vào bộ nhớ và chạy đầu vào. Các chương trình ở dạng mã dễ nhớ thay vì mã máy, làm cho “mã ban đầu” trở thành trình hợp dịch đầu tiên bằng cách xử lý mã chương trình cấp thấp tượng trưng thành mã máy.

Đơn hàng ban đầu

Nguồn ảnh: Phòng thí nghiệm máy tính của Đại học Cambridge

12. Máy tính cá nhân đầu tiên: “Simon” (1950)

“Simon” của Edmund Berkeley là máy tính kỹ thuật số giá cả phải chăng đầu tiên có thể thực hiện bốn phép toán: cộng, phủ định, lớn hơn và chọn. Đầu vào là giấy đục lỗ và chương trình chạy trên băng giấy. Đầu ra duy nhất là thông qua năm đèn.

Simon Máy tính Edmund Berkeley

13. Trình biên dịch đầu tiên: A-0 cho UNIVAC 1 (1952)

Trình biên dịch là một chương trình chuyển đổi ngôn ngữ cấp cao thành mã máy. Hệ thống A-0 là một chương trình được tạo ra bởi Grace Hopper huyền thoại để chuyển đổi một chương trình được chỉ định là một chuỗi các chương trình con và đối số thành mã máy.

A-0 sau đó phát triển thành A-2 và được phát hành cho khách hàng cùng với mã nguồn của nó khiến nó có thể là phần mềm nguồn mở đầu tiên.

Grace_Hopper_and_UNIVAC

Nguồn ảnh: Wikimedia

14. Mã tự động đầu tiên: Mã tự động của Glennie (1952)

Mã tự động là một ngôn ngữ lập trình cấp cao sử dụng trình biên dịch. Mã tự động đầu tiên và trình biên dịch của nó đã xuất hiện tại Đại học Manchester để làm cho việc lập trình của máy Mark 1 trở nên dễ hiểu hơn.

Nó được tạo ra bởi Alick Glennie, do đó có tên là Glennie's Autocode.

mã tự động glennie

Nguồn ảnh: Wikipedia

15. Máy tính hiển thị đồ họa thời gian thực đầu tiên: AN / FSQ-7 của IBM (1951)

AN / FSQ-7 dựa trên một trong những máy tính đầu tiên hiển thị đầu ra thời gian thực, Whirlwind. Nó trở thành cứu cánh cho hệ thống Phòng không Hoa Kỳ được gọi là Môi trường Mặt đất Bán tự động (SAGE).

Các máy tính hiển thị theo dõi các mục tiêu và tự động hiển thị các phòng thủ nào nằm trong tầm bắn. AN / FSQ-7 có 100 bảng điều khiển hệ thống; đây là một (hình ảnh bên dưới), Hiển thị tình huống OA-1008 (SD), với một khẩu súng hạng nhẹ được sử dụng để chọn mục tiêu trên màn hình để biết thêm thông tin.

an-fsq-7

Nguồn ảnh: Wikiwand

16. Ngôn ngữ lập trình cấp cao được sử dụng rộng rãi đầu tiên: FORTRAN (1957)

Nếu bạn kiểm tra sách giáo khoa, bạn sẽ thấy FORTRAN được liệt kê là ngôn ngữ lập trình cấp cao đầu tiên.

Suy nghĩ của John W. Backus, người không thích viết chương trình và quyết định tạo ra một hệ thống lập trình để giúp quá trình này trở nên dễ dàng hơn nhiều, việc sử dụng FORTRAN đã giảm đáng kể số lượng câu lệnh lập trình cần thiết để máy chạy.

Đến năm 1963, hơn 40 trình biên dịch FORTRAN đã có sẵn.

fortran-punch-card

Nguồn ảnh: Wikipedia

17. Chú chuột đầu tiên (1964)

Khi đang ngồi trong một buổi hội thảo về đồ họa máy tính, Douglas Engelbart đã nảy ra ý tưởng về một con chuột vào năm 1964.

Ông đã nghĩ ra một thiết bị có một cặp bánh xe nhỏ (một bánh xe quay ngang, bánh xe kia quay theo chiều dọc) có thể dùng để di chuyển con trỏ trên màn hình. Một nguyên mẫu (xem bên dưới) được tạo ra bởi kỹ sư chính của ông, Bill English nhưng cả English và Engelbart đều không bao giờ nhận được tiền bản quyền cho thiết kế vì về mặt kỹ thuật, nó thuộc về SRI, chủ của Engelbert.

Nguyên mẫu chuột đầu tiên

Nguồn ảnh: Michael Hicks

18. Máy tính để bàn thương mại đầu tiên: Programma 101 (1965)

Còn được gọi là Perottina, Programma 101 là máy tính thương mại đầu tiên trên thế giới. Nó có thể thực hiện các phép tính cộng, trừ, nhân, chia, căn bậc hai, giá trị tuyệt đối và phân số.

Đối với tất cả những gì nó có thể làm, nó được định giá 3.200 đô la (thời điểm rất khác) và bán được 44.000 chiếc. Perottina được phát minh bởi Pier Giorgio Perotto và được sản xuất bởi Olivetti, một nhà sản xuất Ý.

chương trình-101

Nguồn ảnh: TEDxArezzo

19. Màn hình cảm ứng đầu tiên (1965)

Nó trông không giống nhiều nhưng đây là màn hình cảm ứng đầu tiên mà thế giới từng biết đến. Đó là một bảng điều khiển màn hình cảm ứng điện dung, không có độ nhạy áp lực (có tiếp xúc hoặc không tiếp xúc) và nó chỉ ghi lại một điểm tiếp xúc duy nhất (trái ngược với cảm ứng đa điểm).

Khái niệm này đã được chấp nhận để sử dụng bởi các kiểm soát viên không lưu ở Anh cho đến những năm 1990.

màn hình cảm ứng Johnson

Nguồn ảnh: arstechnica

20. Ngôn ngữ lập trình hướng đối tượng đầu tiên: Simula (1967)

Dựa trên khái niệm cấu trúc lớp của CAR Hoare, Ole-Johan Dahl & Kristen Nygaard đã cập nhật ngôn ngữ lập trình “SIMULA I” của họ với các đối tượng, lớp và lớp con. Điều này dẫn đến việc tạo ra SIMULA 67, trở thành ngôn ngữ lập trình hướng đối tượng đầu tiên.

Bắt đầu chương trình mẫu

Nguồn ảnh: Wikipedia

Suy nghĩ cuối cùng

Nhiều như bài đăng này nói về những gì chúng ta có thể tìm hiểu về nhiều điều đầu tiên trong lịch sử máy tính, thật khó để đắm mình vào chính lịch sử. Kết quả là, ít nhất đối với tôi, chúng tôi trở nên đánh giá cao hơn về công việc của các thế hệ trước chúng tavà chúng ta có thể hiểu rõ hơn điều gì thúc đẩy nhiều thay đổi định hình thế giới mà chúng ta đang sống ngày nay.

Tôi hy vọng bài đăng này truyền cảm hứng cho bạn cũng như nó đã truyền cảm hứng cho tôi. Chia sẻ suy nghĩ của bạn về những điều đầu tiên này, và nếu tôi bỏ lỡ bất kỳ điều nào, điều mà tôi chắc chắn là tôi đã làm, hãy thêm chúng vào phần bình luận.

Bây giờ đọc: 40 người đã thay đổi Internet

1618655923 226 20 phat minh vi dai nhat trong lap trinh may

Trả lời

Email của bạn sẽ không được hiển thị công khai. Các trường bắt buộc được đánh dấu *