A tutor on coding, Sep 9, 2011 An Introduction to Computer Programming k wo- ne At twm)4:2sas54 童伟华 E-mail:tongwh@ustc.edu.cn 中国科学技术大学数学系 http://math.ustc.edu.cn/
An Introduction to Computer Programming 童 伟 华 E-mail: tongwh@ustc.edu.cn 中国科学技术大学 数学系 http://math.ustc.edu.cn/ A tutor on coding, Sep 9, 2011
内容提纲 编程概要 编程模型 编程语言 编程环境 软件庠介绍 编程进阶 A tutor on coding, Sep 9, 2011 2
2 A tutor on coding , Sep 9, 2011 内容提纲 编程概要 编程模型 编程语言 编程环境 软件库介绍 编程进阶
编程概要 ■什么是编程? From Wikipedia Computer programming (often shortened to programming or coding) is the process of writing, testing, debugging/troubleshooting and maintaining the source code of computer programs. This source code is written in a programming language. The code may be a modification of an existing source or something completely new. The purpose of programming is to create a program that exhibits a certain desired behaviour(customization).The process of writing source code often requires expertise in many different subjects, including knowledge of the application domain, specialized algorithms and formal logic 编程:编写,测试,调试,维护 ●核心:应用领域知识十算法十数据结构 A tutor on coding, Sep 9, 2011
3 A tutor on coding , Sep 9, 2011 编程概要 什么是编程? ⚫ From Wikipedia : Computer programming (often shortened to programming or coding) is the process of writing, testing, debugging/troubleshooting, and maintaining the source code of computer programs. This source code is written in a programming language. The code may be a modification of an existing source or something completely new. The purpose of programming is to create a program that exhibits a certain desired behaviour (customization). The process of writing source code often requires expertise in many different subjects, including knowledge of the application domain, specialized algorithms and formal logic. ⚫ 编程:编写,测试,调试,维护 ⚫ 核心:应用领域知识+算法+数据结构
编程概要 ■历史简述 编程的概念出现: The concept of devices that operate following a pre-defined set of instructions traces back to Greek Mythology, notably Hephaestus and his mechanical servants. The antikythera mechanism was a calculator utilizing gears of various sizes and configuration to determine its operation ●可编程机械出现:1206年,伊斯兰数学家A Jazari's programmable automata 现代计算机逻辑模型的发明:1936年,Aan Turing在伦敦数学进畏中发表题为“On Computable Numbers, with an Application to the Entscheidungsproblem”,提出通用图 灵机的概念(计算机的逻辑模型),1944年, Von neumann在美国 Los Alamos National Laboratory的 Manhattan Project中提出该体 糸结构,后被 ENIAC project使用 A tutor on coding, Sep 9, 2011 4
4 A tutor on coding , Sep 9, 2011 编程概要 历史简述 ⚫ 编程的概念出现:The concept of devices that operate following a pre -defined set of instructions traces back to Greek Mythology, notably Hephaestus and his mechanical servants. The Antikythera mechanism was a calculator utilizing gears of various sizes and configuration to determine its operation. ⚫ 可编程机械出现:1206年,伊斯兰数学家Al - Jazari's programmable Automata ⚫ 现代计算机逻辑模型的发明:1936年,Alan Turing 在伦敦数学进展中发表题为 “On Computable Numbers, with an Application to the Entscheidungsproblem ”,提出通用图 灵机的概念(计算机的逻辑模型),1944年, Von Neumann在美国Los Alamos National Laboratory 的 Manhattan Project中提出该体 系结构,后被ENIAC project 使用
编程概要 ■图灵机( uring machine) Logical Computing Machine: an infinite memory capacity obtained in the form of an infinite tape marked out into squares on each of which a ymbol could be printed At any moment there is one symbol in the machine; it is called the scanned symbol. The machine can alter the scanned symbol and its behavior is in part determined by that symbol but the symbols on the tape elsewhere do not affect the behavior of the machine. However, the tape can be moved back and forth through the machine, this being one of the elementary operations of the machine Any symbol on the tape may therefore eventually have an innings A tutor on coding, Sep 9, 2011 5
5 A tutor on coding , Sep 9, 2011 编程概要 图灵机(Turing machine) ⚫ Logical Computing Machine :an infinite memory capacity obtained in the form of an infinite tape marked out into squares on each of which a symbol could be printed. At any moment there is one symbol in the machine; it is called the scanned symbol. The machine can alter the scanned symbol and its behavior is in part determined by that symbol, but the symbols on the tape elsewhere do not affect the behavior of the machine. However, the tape can be moved back and forth through the machine, this being one of the elementary operations of the machine. Any symbol on the tape may therefore eventually have an innings