目录

  • 1 计算机概述
    • 1.1 课程简介
    • 1.2 计算机的发展历程
    • 1.3 冯•诺依曼计算机工作原理
    • 1.4 计算机硬件系统
    • 1.5 计算机软件系统
    • 1.6 计算机应用及发展趋势
    • 1.7 中国的第五大发明
    • 1.8 思政-算盘打出来的原子弹
    • 1.9 思政-图灵测试、中国的计算机之父
    • 1.10 单元测试1
  • 2 计算学科的核心概念
    • 2.1 数据表示与存储
    • 2.2 数据操纵与语言发展
    • 2.3 算法
    • 2.4 数据结构
    • 2.5 Raptor软件及实验
    • 2.6 单元测试2
  • 3 计算学科的基本问题
    • 3.1 问题抽象
    • 3.2 可计算与不可计算问题
    • 3.3 GOTO语句与程序结构
    • 3.4 哲学家共餐问题与计算机资源管理
    • 3.5 两军问题与计算机网络
    • 3.6 人工智能的若干哲学问题
  • 4 计算学科的三个形态
    • 4.1 学生选课案例
    • 4.2 数据库系统概论
    • 4.3 抽象形态、理论形态、设计形态
    • 4.4 三个学科形态的内在联系
  • 5 学科的数学方法与系统科学方法
    • 5.1 学科的数学方法
      • 5.1.1 数学与计算科学的不同
      • 5.1.2 系统同构
      • 5.1.3 充分条件和必要条件
      • 5.1.4 计算学科的数学方法
    • 5.2 学科的系统科学方法
      • 5.2.1 人的固有能力与工具的力量
      • 5.2.2 软件开发与复杂性
  • 6 社会与职业问题
    • 6.1 道德分析
    • 6.2 职业和道德责任
    • 6.3 软件风险
    • 6.4 团队工作
    • 6.5 知识产权
    • 6.6 隐私和公民权利
    • 6.7 计算机犯罪
计算机软件系统

1.5a 计算机软件的分类

1.5b 程序设计语言及其分类

1.5c 史上第一位程序员

世界首位程序员艾达·洛芙莱斯(1815年12月10日出生)

计算机和互联网的发展 , 离不了程序员,程序员是从事程序开发、维护的专业人员。随着时代的变化,很多IT工程师也自嘲为“码农”。但您知道世界上第一个程序员是谁吗 ?您一定想不到世界上的首位程序员是艾达·洛芙莱斯,她是英国诗人拜伦的独生女,师从计算机数学基础布尔代数的创始人之一摩根,因第一个为分析机编出了程序即“第一套计算机软件”,被誉为“世界上第一位软件工程师”。

乔治·戈登·拜伦是英国19世纪初期伟大的浪漫主义诗人,代表作品有《恰尔德·哈洛尔德游记》、《唐璜》等,并在他的诗歌里塑造了一批“拜伦式英雄”。安娜贝拉·米尔班克是一位成功的数学家,而在结婚后被称为拜伦夫人。1815年12月10日,他们的女儿艾达·拜伦出生在这个著名的富裕家庭。就在1816年初,米尔班克决定带着五周大的艾达离开拜伦勋爵,她还对拜伦提出了离婚指控,当时有两项指控罪名。这场离婚风波很快就传遍英国的街头巷尾,拜伦因此逃离了英国,以逃避屈辱。而身处风暴中心的艾达则在母亲的庄园里,近乎与世隔绝地长大了。陪伴她的只有家庭教师,还有一只名为泡芙小姐的猫。

艾达是个聪明伶俐的小女孩,很容易就能吸收,她从私人老师那里学到的知识。虽然她容易生病,但她是一个精力充沛的孩子,想象力丰富,经常梦想着在空中飞翔。在当时那个女性几乎得不到什么教育的年代,艾达的母亲却对一件事情异常的执着:也就是让女儿从小就一定要受到良好、恰当的教育,千万不能变成她父亲那样疯疯癫癫的诗人。为了调动女儿的热情,米尔班克把艾达培养到自己的专业领域——数学。

远离诗歌和文学,艾达的学习重心被强制放在了数学和逻辑上。但这绝不是想让艾达变成女科学家,仅仅为了让数理逻辑压抑住艾达的想象力。在家中,拜伦甚至成了不能提起的名字,连画像都被藏起来,直到艾达20岁时才看到。艾达·洛芙莱斯长大后从未见过她的父亲。

“我的女婿必须得是个贵族!当然要是有百年以上的贵族底蕴那就更理想了。”——以上就是艾达母亲颇为苛刻的择婿条件。毕竟对于出身名门的她来说,这样的女婿才算得上是门当户对。然而在女儿18岁的时候,一位不符合以上任何条件的年轻家教出现了。米尔班克当然嗅到了苗头,她立即解雇了这位家教。随后,她没有想到自己的女儿艾达竟然私奔了!

于是米尔班克动用包括亲朋好友在内的一系列手段才终于把女儿接了回来,并且压下了丑闻。两年后,20岁的艾达嫁给了比她大10岁的威廉·金。米尔班克那些挑剔的择婿条件他全都符合,简直是一个近乎完美的女婿人选。而艾达本人对威廉还有这门亲事也颇为欢喜,因为从今以后她就不用受制于母亲了。结婚三年后,威廉由于杰出的功绩被授予爵位,而艾达也成为了洛芙莱斯伯爵夫人。

当时艾达的朋友圈里,有一个叫查尔斯.巴贝奇的人,这个人了不得,可谓是计算机的鼻祖,他制造了一个机器叫差分机,是为了解决高等数学,微积分里差分这个复杂的数学计算。巴贝奇的差分机如果能够成功做出来的话,确实算得上是一件旷世奇作。在他的设想当中,差分机由刻有数字的齿轮叠加而成,转动其手柄便可进行准确的计算。

1834年底,巴贝奇跟艾达商量说,想要做一个比差分机更厉害更复杂的机器,叫做分析机。它可以通过打孔卡片的控制来实现各种复杂的操作,像公式计算、条件选择等等。仔细听完了巴贝奇的计划和想法后,艾达深深为之陶醉。这种能够改变世界运作方式的科学机器,对于用数学和想象看世界的艾达来说有着致命的吸引力。尤其是借鉴自提花机的打孔卡片,更是让艾达看到了分析机的无限潜力。巴贝奇终于得遇知音。就这样,她入了伙,成为了巴贝奇建造分析机路上的重要伙伴。

在巴贝奇的演讲稿被写成论文后,艾达做了翻译,并且巴贝奇鼓励她给论文写注解。这一写不打紧,这份注解比论文原文还要出名,以至在150年后又重新出版。这份注解让艾达成为计算机史上不可绕过的人物,为了纪念她,1979年5月,美国军方将第一个计算机程序设计语言命名为:ADA语言。作者艾萨克森说:艾达确实帮助播下了数字时代的种子。1981年,这种语言被正式命名为ADA语言,以纪念这位“世界上第一位软件工程师”。

数学让艾达看清了这个世界。在这份注释中,她提出了一个比巴贝奇以往提出的更具普遍性、前瞻性的设想:分析机不仅可以执行计算,它还执行操作(operations);在将来,它还可以实现绘画、纺织、演奏音乐等等功能。她还说到:“虽然这种机器可以实现负责的运算,但是只能按照人类的指令来运行,并没有自我分析真理的能力。”

看到艾达翻译后的著作,巴贝奇大为赞赏和惊讶。在写给艾达的信中,他将她称作“数字女巫”。艾达拥有天才般的想象力,这是任何人都无法压制的。她曾在信中对母亲说:“就算你不能给我诗,我也可以学习到诗一样的科学。”

受技术的限制,巴贝奇穷其一生还是没能造出分析机,只留给后世一台模型机和两千多张图纸。