中国高校课件下载中心 》 教学资源 》 大学文库

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

文档信息
资源类别:文库
文档格式:PDF
文档页数:25
文件大小:955.28KB
团购合买:点击进入团购
内容简介
南京大学:《计算机问题求解》课程教学资源(课件讲稿)如何将算法告诉计算机
刷新页面文档预览

问题求解论题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: 1,计算机提供基本的hardwired“原子操作” 1111000000100101 2,提供编码方式,支持程序员组合“原子操 0000000000000101 作”,编写“程序” 0000000000000110 3,将“程序”存放在存储空间中 0000000000000000 4,计算机“解读”程序编码,执行原子操作

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

例如: ·0010:操作码,将”某个”内存中的数据 复制到”某个”寄存器中 Q0.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 你看到 “编程”了吗? 你看到“语言”了吗?

符号语言 The early programmers realized that it would be a tremendous help to use mnemonic symbols for the instruction codes and memory locations,so they developed assembly language for this purpose. .ORIG x3000 Address (in hexadecimal)of the first instruction LD R1, FIRST Copy the number in memory location FIRST to register R1 LD R2, SECOND Copy the number in memory location SECOND to register R2 ADD R3,R2,R1 Add the numbers in R1 and R2 and place the sum in ;register R3 ST R3,SUM Copy the number in R3 to memory location SUM HALT Halt the program FIRST FILL #5 Location FIRST contains decimal 5 SECOND FILL #6;Location SECOND contains decimal 6 SUM BLKW #1 Location SUM (contains 0 by default) .END End of program

符号语言 • The early programmers realized that it would be a tremendous help to use mnemonic symbols for the instruction codes and memory locations, so they developed assembly language for this purpose

共25页,试读已结束,阅读完整版请下载
刷新页面下载完整文档
VIP每日下载上限内不扣除下载券和下载次数;
按次数下载不扣除下载券;
注册用户24小时内重复下载只扣除一次;
顺序:VIP每日次数-->可用次数-->下载券;
相关文档