
Chương trình máy tính là tụ hội những câu mệnh lệnh [1] tiến hành một tác vụ ví dụ Lúc được PC thực thi đua. Hầu không còn những vũ khí PC đòi hỏi những công tác nhằm hoạt động và sinh hoạt đích.
Một công tác PC thông thường được viết lách vày một lập trình sẵn viên PC vày ngôn từ lập trình sẵn. Từ công tác nhập dạng mã mối cung cấp nhưng mà quả đât rất có thể nắm rõ, một trình biên dịch hoặc thi công ráp rất có thể tạo nên trở thành mẫu mã mã máy bao hàm những chỉ dẫn nhưng mà PC rất có thể thẳng tiến hành. Bên cạnh đó, một công tác PC rất có thể được thực thi đua với việc trợ canh ty của trình thông dịch.
Một bộ thu thập những công tác PC, tủ sách và tài liệu tương quan được gọi là ứng dụng. Các công tác PC rất có thể được phân loại theo gót những loại tính năng, ví dụ như ứng dụng phần mềm và ứng dụng khối hệ thống. Phương pháp cơ bạn dạng được dùng mang đến một vài đo lường và tính toán hoặc thao tác được gọi là thuật toán.
Lịch sử[sửa | sửa mã nguồn]
Máy lập trình sẵn ban đầu[sửa | sửa mã nguồn]
Các máy lập trình sẵn nhanh nhất chuồn trước sáng tạo rời khỏi PC nghệ thuật số. Ngay kể từ thế kỷ loại 9, một trình vạc nhạc rất có thể lập trình sẵn được sáng tạo vày đồng đội người Ba Tư Musu, người đang được tế bào miêu tả một người thổi sáo cơ khí tự động hóa nhập Sách vũ khí khéo léo.[2] Năm 1206, kỹ sư người Ả Rập Al-Jazari đang được sáng tạo rời khỏi một cái máy tấn công trống rỗng rất có thể lập trình sẵn nhập cơ máy tự động hóa tạo nên âm thanh cơ học tập nhằm nghịch ngợm những nhịp độ và kiểu mẫu nhịp trống rỗng không giống nhau.[3] Năm 1801, Joseph-Marie Jacquard đang được suy nghĩ rời khỏi một sườn tết rất có thể tết một kiểu mẫu vải vóc bằng phương pháp tuân theo hàng loạt những thẻ xâu lỗ nhỏ. Các kiểu mẫu rất có thể được tết và lặp chuồn tái diễn bằng phương pháp bố trí những thẻ.[4]
Công cụ phân tích[sửa | sửa mã nguồn]

Năm 1837, Charles Babbage và đã được truyền hứng thú kể từ máy tết của Jacquard nhằm nỗ lực xây cất Công cụ phân tách.[4] Tên của những bộ phận của vũ khí đo lường và tính toán được mượn kể từ ngành tết may. Trong ngành tết, sợi được đem kể từ siêu thị nhằm xay. Thiết bị này sẽ sở hữu một "cửa hàng" - bộ nhớ lưu trữ chứa chấp 1.000 số đem 40 chữ số thập phân từng số. Các số kể từ "cửa hàng" tiếp sau đó sẽ tiến hành gửi lịch sự "máy nghiền" (tương tự động CPU của dòng sản phẩm hiện nay đại) nhằm xử lý. Và một "luồng" vào vai trò tiến hành những chỉ dẫn được lập trình sẵn của vũ khí. Nó được lập trình sẵn bằng phương pháp dùng nhì cỗ thẻ xâu lỗ nhỏ - một cỗ thẻ nhằm lãnh đạo thao tác và cỗ cơ cho những thay đổi nguồn vào.[4][5] Tuy nhiên, sau khoản thời gian tiêu xài không còn rộng lớn 17.000 bảng chi phí tài trợ của chính phủ nước nhà Anh, hàng trăm bánh xe cộ và bánh răng của dòng sản phẩm bị kẹt và những mô tơ ko lúc nào hoạt động và sinh hoạt trọn vẹn tuy vậy song bên cạnh nhau.[6]
Trong khoảng chừng thời hạn chín mon nhập năm 1842-43, Ada Lovelace đang được dịch cuốn hồi ký ở trong nhà toán học tập người Ý Luigi Menabrea. Cuốn hồi ký bao quấn Công cụ phân tách. Bản dịch chứa chấp Note G, cụ thể trọn vẹn một cách thức đo lường và tính toán số Bernoulli vày Công cụ phân tách. Ghi chú này được một vài ngôi nhà sử học tập thừa nhận là công tác PC được viết lách thứ nhất bên trên trái đất.[7]
Máy Turing phổ dụng[sửa | sửa mã nguồn]
Năm 1936, Alan Turing đang được trình làng vũ khí lý thuyết Universal Turing machine cũng có thể quy mô hóa từng đo lường và tính toán rất có thể được tiến hành bên trên một PC hoàn hảo Turing.[8] Đây là 1 máy hiện trạng hữu hạn đem băng hiểu / ghi nhiều năm vô hạn. Máy rất có thể dịch chuyển đi qua lại, thay cho thay đổi nội dung của chính nó Lúc tiến hành thuật toán. Máy phát động ở hiện trạng thuở đầu, trải qua quýt một chuỗi quá trình và tạm dừng Lúc bắt gặp hiện trạng ngừng.[9] Máy này được một vài người xem là xuất xứ của công tác PC được tàng trữ vày John von Neumann (1946) mang đến "Công cụ năng lượng điện toán năng lượng điện tử" hiện nay có tên phong cách thiết kế von Neumann.[10]
Máy tính lập trình sẵn ban đầu[sửa | sửa mã nguồn]
Máy tính Z3, được sáng tạo vày Konrad Zuse (1941) ở Đức, là 1 PC nghệ thuật số và rất có thể lập trình sẵn.[11] Một PC nghệ thuật số dùng năng lượng điện thực hiện bộ phận đo lường và tính toán. Z3 chứa chấp 2.400 rơle muốn tạo mạch. Các mạch cung ứng một PC nhị phân, vệt phẩy động, với chín mệnh lệnh. Lập trình Z3 trải qua 1 bàn phím được kiến thiết quan trọng và băng xâu lỗ nhỏ.
ENIAC - Máy tính và tích ăn ý số năng lượng điện tử (mùa thu 1945) là 1 PC hoàn hảo, nhiều chức năng, Turing khá đầy đủ, dùng 17.468 cẳng chân ko muốn tạo rời khỏi những mạch. Tại lõi của chính nó là 1 loạt những Pascaline được nối cùng nhau.[12] 40 phần tử của chính nó nặng trĩu 30T, cướp 1.800 foot vuông (167 m2), và dung nạp $650 từng giờ (giá trị chi phí năm 1940) lúc không dùng.[12] Nó đem trăng tròn máy nằm trong số hạ tầng 10. Lập trình mang đến ENIAC rơi rụng cho tới nhì mon.[12] Ba bảng tính năng được đặt điều bên trên những bánh xe cộ và cần phải cuộn nhập những bảng tính năng cố định và thắt chặt. Các bảng tính năng được liên kết với những bảng tính năng bằng phương pháp dùng cáp đen kịt nặng trĩu. Mỗi bảng tính năng đem 728 núm xoay. Lập trình ENIAC cũng tương quan cho tới việc thiết lập một vài nhập số 3.000 vũ khí gửi mạch. Sửa lỗi một công tác rơi rụng một tuần.[12] Các lập trình sẵn viên của ENIAC là những người dân phụ phái nữ được gọi cộng đồng là "những cô nàng ENIAC".[13] ENIAC đem những hoạt động và sinh hoạt tuy vậy tuy vậy. Các cỗ thu thập không giống nhau rất có thể mặt khác hoạt động và sinh hoạt bên trên những thuật toán không giống nhau. Nó đang được dùng máy xâu lỗ nhỏ mang đến nguồn vào và Output, và nó được tinh chỉnh và điều khiển vày tín hiệu đồng hồ thời trang. Nó đang được hoạt động và sinh hoạt được 8 năm, đo lường và tính toán những thông số kỹ thuật mang đến bom hydro, Dự kiến những loại khí hậu và phát triển những bàn phun nhằm coi súng cao xạ.
Manchester Baby (tháng 6 năm 1948) là 1 PC được tàng trữ công tác.[14] Lập trình đang được đem thay cho thay đổi kể từ cáp dịch chuyển và xoay số; thay cho nhập cơ, một công tác PC được tàng trữ nhập bộ nhớ lưu trữ bên dưới dạng số. Chỉ đem phụ vương bit bộ nhớ lưu trữ đã có sẵn trước nhằm tàng trữ từng mệnh lệnh, chính vì vậy máy bị số lượng giới hạn với tám mệnh lệnh. 32 vũ khí gửi mạch đang được đã có sẵn trước nhằm sử dụng nhập việc lập trình sẵn.
Máy tính sau này[sửa | sửa mã nguồn]

Các PC được phát triển cho tới trong năm 1970 đem những công tắc nguồn phần bên trước nhằm lập trình sẵn. Chương trình PC được viết lách trong giấy nhằm xem thêm. Một chỉ dẫn được thể hiện nay vày một thông số kỹ thuật setup nhảy / tắt. Sau Lúc thiết lập thông số kỹ thuật, một nút thực thi đua sẽ tiến hành nhấn. Quá trình này tiếp sau đó và đã được tái diễn. Các công tác PC cũng khá được nhập tay chân trải qua băng giấy má hoặc thẻ xâu lỗ nhỏ. Sau Lúc phương tiện đi lại được vận chuyển, vị trí chính thức được đặt điều qua quýt những công tắc nguồn và nhấn nút thực thi đua.[15]
Vào năm 1961, Burroughs B5000 được sản xuất riêng rẽ và để được lập trình sẵn vày ngôn từ ALGOL 60. Các mạch Hartware đặc thù nhằm tiến trình biên dịch được dễ dàng rộng lớn.[16]
Năm 1964, IBM System/360 là 1 loại bao gồm sáu PC, từng PC đem nằm trong phong cách thiết kế tập dượt mệnh lệnh. Model 30 là nhỏ nhất và không nhiều tốn xoàng nhất. Khách mặt hàng rất có thể tăng cấp và níu lại ứng dụng phần mềm tương tự động.[17] Mỗi quy mô Hệ thống / 360 đem công dụng nhiều công tác. Với sự tương hỗ của hệ điều hành quản lý, nhiều công tác rất có thể ở trong bộ nhớ lưu trữ và một khi. Khi một công tác đang được đợi đầu vào/đầu rời khỏi, công tác không giống rất có thể đo lường và tính toán. Mỗi quy mô cũng rất có thể tế bào phỏng những PC không giống. Khách mặt hàng rất có thể tăng cấp lên System/360 và níu lại ứng dụng phần mềm IBM 7094 hoặc IBM 1401 của mình.
Xem thêm: Cách làm vỏ bánh xèo bằng cơm nguội cực đơn giản tại nhà
Lập trình máy tính[sửa | sửa mã nguồn]
Lập trình PC là quy trình viết lách hoặc sửa đổi mã mối cung cấp. Chỉnh sửa mã mối cung cấp bao hàm đánh giá, phân tách, tinh ma chỉnh và thỉnh thoảng phối phù hợp với những lập trình sẵn viên không giống nhập một công tác được cải tiến và phát triển cộng đồng. Một người thực hành thực tế tài năng này được gọi là lập trình sẵn viên PC, ngôi nhà cải tiến và phát triển ứng dụng và thỉnh thoảng là lập trình sẵn viên.
Quá trình thỉnh thoảng kéo dãn của lập trình sẵn PC thông thường được gọi là cải tiến và phát triển ứng dụng. Thuật ngữ technology ứng dụng đang được trở thành thông dụng vì thế tiến độ này được xem là một chuyên nghiệp ngành nghệ thuật.
Ngôn ngữ lập trình[sửa | sửa mã nguồn]

Các công tác PC rất có thể được phân loại theo gót quy mô ngôn từ lập trình sẵn được dùng nhằm phát triển bọn chúng. Hai nhập số những quy mô đó là khẩu lệnh và khai báo.
Ngôn ngữ mệnh lệnh[sửa | sửa mã nguồn]
Các ngôn từ lập trình sẵn mệnh lệnh xác lập một thuật toán tuần tự động bằng phương pháp dùng những khai báo, biểu thức và câu lệnh:[18]
- Một khai báo kết hợp một thương hiệu thay đổi với cùng một loại tài liệu - ví dụ:
var x: integer;
- Một biểu thức mang đến một độ quý hiếm - ví dụ:
2 + 2
mang đến 4 - Một câu lệnh rất có thể gán một biểu thức cho 1 thay đổi hoặc dùng độ quý hiếm của một thay đổi để thay thế thay đổi luồng tinh chỉnh và điều khiển của công tác - ví dụ:
x:= 2 + 2; if x = 4 then do_something();
Một chỉ trích về ngôn từ khẩu lệnh là thuộc tính phụ của câu mệnh lệnh gán bên trên một tấm thay đổi được gọi là thay đổi ko toàn bộ.[19]
Ngôn ngữ khai báo[sửa | sửa mã nguồn]
Các ngôn từ lập trình sẵn khai báo tế bào miêu tả những gì đo lường và tính toán nên được tiến hành và ko tế bào miêu tả phương pháp làm thế nào nhằm đo lường và tính toán nó. Các công tác khai báo bỏ lỡ luồng tinh chỉnh và điều khiển và được xem là tập hợp những mệnh lệnh. Hai loại ngôn từ khai báo rộng lớn là ngôn từ tính năng và ngôn từ logic. Nguyên tắc phía sau những ngôn từ tính năng (như Haskell) là ko được chấp nhận những cảm giác bên mép, điều này canh ty đơn giản dễ dàng lý luận về những công tác tựa như các hàm toán học tập.[19] Nguyên tắc phía sau những ngôn từ logic (như Prolog) là xác lập yếu tố cần thiết giải quyết và xử lý - mục tiêu - và nhằm lại biện pháp cụ thể mang đến chủ yếu khối hệ thống Prolog.[20] Mục tiêu xài được xác lập bằng phương pháp cung ứng một list những điểm phụ. Sau cơ, từng subgoal được xác lập vày nối tiếp cung ứng một list những subgoals của chính nó, vv Nếu một tuyến phố subgoals thất bại trong các việc tìm hiểu rời khỏi biện pháp, tiếp sau đó subgoal được xoay lùi và đường đi không giống được demo ngỏ rời khỏi một cơ hội khối hệ thống.
Biên dịch và thông dịch[sửa | sửa mã nguồn]
Một công tác PC ở dạng ngôn từ lập trình sẵn PC nhưng mà người rất có thể nắm rõ được gọi là mã mối cung cấp. Mã mối cung cấp rất có thể được quy đổi trở thành một dạng thực thi đua nhờ một trình biên dịch hoặc trình thi công ráp ăn ý ngữ, hoặc tiến hành ngay lập tức ngay lập tức với việc trợ canh ty của một trình thông dịch.
Trình biên dịch được dùng nhằm dịch mã mối cung cấp kể từ ngôn từ lập trình sẵn lịch sự mã đối tượng người sử dụng hoặc mã máy.[21] Mã đối tượng người sử dụng cần thiết xử lý tăng nhằm phát triển thành mã máy và mã máy bao hàm những mệnh lệnh gốc của đơn vị chức năng xử lý trung tâm, sẵn sàng nhằm thực thi đua. Các công tác PC được biên dịch thông thường được gọi là tệp thực thi đua, hình hình ảnh nhị phân hoặc giản dị là tệp nhị phân - một tham lam chiếu cho tới format tệp nhị phân được dùng nhằm tàng trữ mã thực thi đua.
Một số công tác đối tượng người sử dụng được biên dịch và thi công ráp cần phải phối hợp trở thành những mô-đun với tiện nghi link (linker) muốn tạo rời khỏi một công tác thực thi đua.
Trình thông dịch được dùng nhằm thực thi đua mã mối cung cấp kể từ từng loại ngôn từ lập trình sẵn. Trình thông dịch giải thuật từng câu mệnh lệnh và tiến hành hành động của chính nó. Một ưu thế của thông dịch viên là chúng ta rất có thể đơn giản dễ dàng được không ngừng mở rộng trở thành một phiên tương tác. Lập trình viên được trình diễn với cùng một vệt nhắc và những loại mã riêng rẽ lẻ được nhập và tiến hành ngay lập tức ngay lập tức.
Nhược điểm chủ yếu của trình thông dịch là công tác PC chạy đủng đỉnh rộng lớn đối với Lúc được biên dịch. Mã thông dịch đủng đỉnh rộng lớn vì thế trình thông dịch nên giải thuật từng câu mệnh lệnh và tiếp sau đó tiến hành nó. Tuy nhiên, việc cải tiến và phát triển ứng dụng rất có thể thời gian nhanh rộng lớn Lúc dùng trình thông dịch vì thế việc đánh giá là ngay lập tức ngay lập tức Lúc bước biên dịch bị bỏ lỡ. Một điểm yếu kém không giống của trình thông dịch là 1 trình thông dịch nên xuất hiện bên trên PC thực thi đua. trái lại, những công tác PC được biên dịch ko cần thiết trình biên dịch nhập quy trình thực thi đua.
Xem thêm: Cách làm bánh mì truyền thống bằng máy và lò nướng cực thơm ngon tại nhà
Xem thêm[sửa | sửa mã nguồn]
- Trí tuệ nhân tạo
- Lập trình tự động động
- Firmware
- Phần mềm
- Lỗi ứng dụng [22]
Tham khảo[sửa | sửa mã nguồn]
- ^ Rochkind, Marc J. (2004). Advanced Unix Programming, Second Edition. Addison-Wesley. tr. 1.1.2.
- ^ Kapur, Ajay; Carnegie, Dale; Murphy, Jim; Long, Jason (2017). “Loudspeakers Optional: A history of non-loudspeaker-based electroacoustic music”. Organised Sound. Cambridge University Press. 22 (2): 195–205. doi:10.1017/S1355771817000103. ISSN 1355-7718.
- ^ Noel Sharkey (2007), A 13th Century Programmable Robot, University of Sheffield
- ^ a b c McCartney, Scott (1999). ENIAC – The Triumphs and Tragedies of the World's First Computer. Walker and Company. tr. 16. ISBN 978-0-8027-1348-3.
- ^ Bromley, Allan G. (1998). “Charles Babbage's Analytical Engine, 1838” (PDF). IEEE Annals of the History of Computing. 20.
- ^ Tanenbaum, Andrew S. (1990). Structured Computer Organization, Third Edition. Prentice Hall. tr. 15. ISBN 978-0-13-854662-5.
- ^ Lovelace & Babbage and the creation of the 1843 'notes'
- ^ Rosen, Kenneth H. (1991). Discrete Mathematics and Its Applications. McGraw-Hill, Inc. tr. 654. ISBN 978-0-07-053744-6.
- ^ Linz, Peter (1990). An Introduction đồ sộ Formal Languages and Automata. D. C. Heath and Company. tr. 234. ISBN 978-0-669-17342-0.
- ^ Engines of Logic: Mathematicians and the origin of the Computer, 2000
- ^ “History of Computing”.
- ^ a b c d McCartney, Scott (1999). ENIAC – The Triumphs and Tragedies of the World's First Computer. Walker and Company. tr. 102. ISBN 978-0-8027-1348-3.
- ^ Frink, Brenda D. (ngày 1 mon 6 năm 2011). “Researcher reveals how "Computer Geeks" replaced "Computer Girls"”. Gender News. Stanford University. Lưu trữ bạn dạng gốc ngày 12 mon 3 năm 2015. Truy cập ngày 22 mon 10 năm 2018.
- ^ Computing's Golden Jubilee
- ^ Silberschatz, Abraham (1994). Operating System Concepts, Fourth Edition. Addison-Wesley. tr. 6. ISBN 978-0-201-50480-4.
- ^ Tanenbaum, Andrew S. (1990). Structured Computer Organization, Third Edition. Prentice Hall. tr. 20. ISBN 978-0-13-854662-5.
- ^ Tanenbaum, Andrew S. (1990). Structured Computer Organization, Third Edition. Prentice Hall. tr. 21. ISBN 978-0-13-854662-5.
- ^ Wilson, Leslie B. (1993). Comparative Programming Languages, Second Edition. Addison-Wesley. tr. 75. ISBN 978-0-201-56885-1.
- ^ a b Wilson, Leslie B. (1993). Comparative Programming Languages, Second Edition. Addison-Wesley. tr. 213. ISBN 978-0-201-56885-1.
- ^ Wilson, Leslie B. (1993). Comparative Programming Languages, Second Edition. Addison-Wesley. tr. 244. ISBN 978-0-201-56885-1.
- ^ “What is a Compiler?”. Truy cập ngày 10 mon một năm 2012.
- ^ Tanenbaum, Andrew S. (1990). Structured Computer Organization, Third Edition. Prentice Hall. tr. 11. ISBN 978-0-13-854662-5.
Bình luận