南京大学:《计算机问题求解》课程教学资源(PPT课件讲稿)如何将算法告诉计算机

问题求解论题1-6 如何将算法告诉计算机 陶先平
问题求解论题1-6 如何将算法告诉计算机 陶先平

问题1 什么叫设计实现一个算法?
问题1 什么叫设计/实现一个算法?

问题求解 计算机 开始 能够精 实现阶段 确识别 的语言 问题理解和定义 将自然语言描述的“算法” 算法 。一“翻译”成。 程序 计算机语言描述的“程序”的过程 手工测试和检查 人可识 测试 别和使 用的自 然语言 设计阶段
问题求解 开始 问题理解和定义 算法 手工测试和检查 设计阶段 人可识 别和使 用的自 然语言 程序 测试 实现阶段 计算机 能够精 确识别 的语言 将自然语言描述的“算法” “翻译”成 计算机语言描述的“程序”的过程

请思考以下问题 ·在任何时候,编程之前必须先完成算法设计 ·Why? ·计算机能够识别和处理的“语言”,不仅仅是C、C+等,也可以 是自己定义的语言 ·For example? ·程序运行出错,涉及到哪些内容? ·在“翻译”之前,尽量排除算法错误
请思考以下问题 • 在任何时候,编程之前必须先完成算法设计 • Why? • 计算机能够识别和处理的“语言”,不仅仅是C、C++等,也可以 是自己定义的语言 • For example? • 程序运行出错,涉及到哪些内容? • 在“翻译”之前,尽量排除算法错误

问题2 计算机知可从二进制ts中识别 乔执行程序指令呢?
问题2 计算机如何从二进制bits中识别 并执行程序指令呢?

40年代的编程: Before the middle of the 1940s, computer operators "hardwired" their programs
40年代的编程: Before the middle of the 1940s, computer operators “hardwired” their programs

而后,二进制代码 显然,hardwired program不易修改,set switches 不能算是编码! 0010001000000100 如何让计算机的执行做到:programmable? 0010010000000100 A big problem! 0001011001000010 0011011000000011 Big idea: l,计算机提供基本的hardwired“原子操作” 1111000000100101 2,提供编码方式,支持程序员组合“原子操 0000000000000101 作”,编写“程序” 0000000000000110 3,将“程序”存放在存储空间中 0000000000000000 4,计算机“解读”程序编码,执行原子操作
而后,二进制代码 显然,hardwired program不易修改,set switches 不能算是编码! 如何让计算机的执行做到:programmable? A big problem! Big idea: 1,计算机提供基本的hardwired“原子操作” 2,提供编码方式,支持程序员组合“原子操 作”,编写“程序” 3,将“程序”存放在存储空间中 4,计算机“解读”程序编码,执行原子操作

例如: ·0010:操作码,将”某个”内存中的数据 复制到”某个"寄存器中 QQ.1.0001000000100 0010010000000100 ·001:001号寄存器 0001011001000010 ·第一个操作数 0011011000000011 ·000000100:地址偏移量,4 1111000000100101 ·第二个操作数:从下一条指令所存储的 地址向后偏移4个16位,取值5 0000000000000101 0000000000000110 执行效果:将5赋值给1号寄存器 0000000000000000
例如: • 0010: 操作码,将”某个”内存中的数据 复制到”某个”寄存器中 • 001: 001号寄存器 • 第一个操作数 • 000000100:地址偏移量,4 • 第二个操作数:从下一条指令所存储的 地址向后偏移4个16位,取值5 执行效果:将5赋值给1号寄存器

问题3 你看到“编程”了吗? 你看到“语言”了吗?
问题3 你看到 “编程”了吗? 你看到“语言”了吗?

以汇编指令为表示的机器级操纵指令 ·用机器语言编写程序,并记录在纸带或卡片上 输入:按钮、开关; 所有信息都 输出:指示灯等 是0/1序列1 假设:0010-jxx 穿孔表示0,未穿孔表示1 0:01010110 1:00100100 07(1J)22-1D4设EpTJ:4200R110:25T2,01463(2,)0 2: ●●●●● 3: ●●0●0● 太原始了,无法忍受,咋办? 4: 01100111 5: 21111112 10111 用符号表示而不用0/1表示! 6: 144a14141:4:I4440491t4144144944114444h4444444 若在第4条指令前加入指令,则 541s151553s1511531555555555555551551515515515555555i 5S656186E1656568685456655666566631661CA1C664564686886E656L058686M6 需重新计算地址码(如jxx的目 7111717177月177111711111917117111111912177117721011717771112111 标地址),然后重新打孔。 1ol111Al731111 不灵活!书写、阅读困难! 2022年1 10 11
• 用机器语言编写程序,并记录在纸带或卡片上 2022年12月14日 引言 10 以汇编指令为表示的机器级操纵指令 穿孔表示0,未穿孔表示1 0:0101 0110 1:0010 0100 2: …… 3: …… 4: 0110 0111 5: …… 6: …… 假设:0010-jxx 若在第4条指令前加入指令,则 需重新计算地址码(如jxx的目 标地址),然后重新打孔。 不灵活!书写、阅读困难! 太原始了,无法忍受,咋办? 用符号表示而不用0/1表示! 输入:按钮、开关; 输出:指示灯等 所有信息都 是0/1序列!
按次数下载不扣除下载券;
注册用户24小时内重复下载只扣除一次;
顺序:VIP每日次数-->可用次数-->下载券;
- 南京大学:《计算机问题求解》课程教学资源(PPT课件讲稿)计算思维引导.pptx
- 南京大学:《计算机问题求解》课程教学资源(PPT课件讲稿)常用的证明方法.pptx
- 南京大学:《计算机问题求解》课程教学资源(PPT课件讲稿)基本的算法结构.pptx
- 南京大学:《计算机问题求解》课程教学资源(PPT课件讲稿)什么样的推理是正确的.pptx
- 南京大学:《计算机问题求解》课程教学资源(PPT课件讲稿)为什么计算机能解题.ppt
- 《计算机问题求解》课程参考书籍:《算法学——计算精髓》PDF电子版(Algorithmics - The Spirit of Computing,THIRD EDITION,David Harel).pdf
- 南京大学:《计算机问题求解》课程教学资源(PPT课件讲稿)算法问题的形式化描述.pptx
- 南京大学:《计算机问题求解》课程教学资源(PPT课件讲稿)近似算法的基本概念.pptx
- 南京大学:《计算机问题求解》课程教学资源(PPT课件讲稿)串匹配.ppt
- 南京大学:《计算机问题求解》课程教学资源(PPT课件讲稿)NP完全理论初步.pptx
- 南京大学:《计算机问题求解》课程教学资源(PPT课件讲稿)密码算法.pptx
- 南京大学:《计算机问题求解》课程教学资源(PPT课件讲稿)代数编码.pptx
- 南京大学:《计算机问题求解》课程教学资源(PPT课件讲稿)数论基础.pptx
- 南京大学:《计算机问题求解》课程教学资源(PPT课件讲稿)群同态基本定理与正规子群.pptx
- 南京大学:《计算机问题求解》课程教学资源(PPT课件讲稿)群初步.pptx
- 南京大学:《计算机问题求解》课程教学资源(PPT课件讲稿)线性规划.pptx
- 南京大学:《计算机问题求解》课程教学资源(课件讲稿)矩阵计算.pdf
- 南京大学:《计算机问题求解》课程教学资源(课件讲稿)图论的其它专题(平面图与图着色).pdf
- 南京大学:《计算机问题求解》课程教学资源(课件讲稿)最大流算法.pdf
- 南京大学:《计算机问题求解》课程教学资源(课件讲稿)图中的匹配与覆盖(图中的匹配与因子分解).pdf
- 南京大学:《计算机问题求解》课程教学资源(PPT课件讲稿)数据与数据结构.pptx
- 《计算机问题求解》课程教学资源(阅读材料)Computational Thinking:What and Why?.pdf
- 南京大学:《计算机问题求解》课程教学资源(PPT课件讲稿)关系及其基本性质.pptx
- 南京大学:《计算机问题求解》课程教学资源(PPT课件讲稿)集合及其运算.pptx
- 南京大学:《计算机问题求解》课程教学资源(PPT课件讲稿)函数.pptx
- 南京大学:《计算机问题求解》课程教学资源(PPT课件讲稿)有限与无限.pptx
- 《计算机问题求解》课程教学资源(参考教材)Computer Algorithms - Introduction to Design and Analysis.pdf
- 南京大学:《计算机问题求解》课程教学资源(PPT课件讲稿)Hashing方法.pptx
- 南京大学:《计算机问题求解》课程教学资源(PPT课件讲稿)分治法与递归.pptx
- 南京大学:《计算机问题求解》课程教学资源(PPT课件讲稿)基本数据结构.pptx
- 南京大学:《计算机问题求解》课程教学资源(PPT课件讲稿)堆与堆排序.pptx
- 南京大学:《计算机问题求解》课程教学资源(PPT课件讲稿)排序与选择.pptx
- 南京大学:《计算机问题求解》课程教学资源(PPT课件讲稿)概率分析与随机算法.pptx
- 南京大学:《计算机问题求解》课程教学资源(PPT课件讲稿)离散概率基础.pptx
- 南京大学:《计算机问题求解》课程教学资源(PPT课件讲稿)算法正确性.pptx
- 南京大学:《计算机问题求解》课程教学资源(PPT课件讲稿)算法的效率.pptx
- 南京大学:《计算机问题求解》课程教学资源(PPT课件讲稿)组合与计数.pptx
- 南京大学:《计算机问题求解》课程教学资源(PPT课件讲稿)递归及其数学基础.pptx
- 南京大学:《计算机问题求解》课程教学资源(PPT课件讲稿)B树.pptx
- 南京大学:《计算机问题求解》课程教学资源(PPT课件讲稿)动态规划.pptx