![[理学]lecture1C语言.ppt_第1页](http://file.renrendoc.com/FileRoot1/2018-12/23/629c0854-a495-4bea-a95f-b60aa2766666/629c0854-a495-4bea-a95f-b60aa27666661.gif)
![[理学]lecture1C语言.ppt_第2页](http://file.renrendoc.com/FileRoot1/2018-12/23/629c0854-a495-4bea-a95f-b60aa2766666/629c0854-a495-4bea-a95f-b60aa27666662.gif)
![[理学]lecture1C语言.ppt_第3页](http://file.renrendoc.com/FileRoot1/2018-12/23/629c0854-a495-4bea-a95f-b60aa2766666/629c0854-a495-4bea-a95f-b60aa27666663.gif)
![[理学]lecture1C语言.ppt_第4页](http://file.renrendoc.com/FileRoot1/2018-12/23/629c0854-a495-4bea-a95f-b60aa2766666/629c0854-a495-4bea-a95f-b60aa27666664.gif)
![[理学]lecture1C语言.ppt_第5页](http://file.renrendoc.com/FileRoot1/2018-12/23/629c0854-a495-4bea-a95f-b60aa2766666/629c0854-a495-4bea-a95f-b60aa27666665.gif)
已阅读5页,还剩30页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1,C 语 言 程 序 设 计,Spring 2007,2,Lecture 1,程序设计的预备知识 硬件模型 软件模型 程序设计语言 C语言 程序设计过程 程序开发环境 阅读: Chapter 1,3,Hardware Model,冯 . 诺依曼结构,Secondary Storage,Input Devices,Output Devices,CPU,Main Memory,4,ENIAC,5,IBM Blue Gene,65536 PowerPC 440 700MHz CNK/Linux 峰值:183500GFlops 核能研究,典型应用场景,从磁盘加载程序到内存 分配资源(内存 、文件);进程 执行 线程调度 与用户交互 I/O管理; 存储 文件系统,6,7,程序执行,隐藏硬件,8,Q1:考虑“自助旅行”和“跟团”的差别? Q2:OS提供了什么?,BIOS和OS,BIOS(基本输入输出系统) 机器自检、引导 服务例程 OS(Operating System) 进程管理、线程调度(CPU) 内存管理 文件系统 设备管理,9,模块化不要从轮子造起,OS提供了大量公共的基础服务(API) Kernel32.dll;User32.dll;GDI32.dll。 运行时(CRT)、类库 “输入” vs “input” 竖排、自左向右等,10,11,Source code:,void main() float angle,radian ; scanf(“%f”, ,C程序基本结构,G(x,y)=f(x)+h(x,y) f(x)=x*2+3;,12,开发工具链,编辑(Editer) 编译(Complier) 独立编译 链接(Linker) 静态(lib) 动态(dll) 集成开发环境(IDE),13,obj,exe,lib,科学和工程,科学 算法:建模,形式化工具证明 高层抽象,不同的现实问题归结为一个 eg.SNS中的好友推荐;C2B中的商品推荐 工程 架构:实现,测试工具评价 eg.C/S、B/S、P2P、云计算 粘合剂,14,I/O设备,多样化 硬件上需要扩展:总线 软件上需要抽象:统一的编程接口 如何抽象 OS提供管理机制 要理解这些机制,根据应用的目标合理选择 轮询、中断 同步、异步,15,数据存储,文件系统(File system) 数据库(Database) 关系型:SQL NoSQl,16,网络,结构:C/S、B/S 协议:TCP/IP,17,程序自身的逻辑 时间并行 vs 空间并行 靠编译器自动发现、硬件运行时调度 并行编程,计算性能(并行化),现代Compiler的结构,小结,20,21,Program(程序),Program 机器指令的序列,表示了某个任务在计算机上是按什么样的步骤执行的。 程序一般是存储在secondary storage (二级存储 e.g., CD or hard disk),比如以exe文件的形式存在,在执行时,首先由OS装载到Memory(内存),再由CPU从内存中逐条的取出指令,执行,从而完成程序所表达的功能。 在整个阶段,程序都是以二进制的形式存在,22,Programming Languages (PL),谁能看懂 ?,好一点了吧?,23,PL: Machine(机器) Languages,某个CPU 仅能理解自己的机器语言= 可移植性问题 在Motorola 68000, 下面的字节序列表示一条把register D3的值移动到地址为104的贮存单元中. 在Intel 80486, 相同的字节序列表示不同的指令 代码冗长,容易出错,24,PL: Assembly(汇编) Languages,采用类似英语的助记符号 e.g. 前面的MC68000机器指令可以写成: MOVE D3, 104 更容易理解 需要一个assembler (汇编器)翻译成机器指令 不同的CPU有不同的指令集合 e.g. MOVE D3, 104 在Intel 80486中是非法的,因为其中没有一个叫D3的register(寄存器) = portability problem(可移植性问题),25,PL: High-level(高级) Languages,接近人类语言 需要compiler/linker(编译器/链接器) 翻译成机器语言 更好的可移植性 相同的程序代码可以运行在不同的机器上 e.g. Fortran, COBOL, Pascal, Ada, Modula, C, C+, Lisp, Prolog, Java, Perl.,26,Example: 华氏转摄氏,void main() float F, C ; scanf(“%f”, ,27,PL: Compiler & Linker,Compiler 把高级语言书写的源代码(source code)转换成目标代码(object code)。 Linker 把程序的目标代码和其他 pre-compiled(预编译)的目标代码组合成可执行代码( executable code ),linker,compiler,source code,object code,other object code,executable code,28,C的历史,C 1972年,Bell实验室,Dennis Ritchie B 1970年,Bell实验室,Ken Thompson BCPL 1967年, Cambridge, Martin Richards,29,C 的特点,最初是为系统编程 诸如 OS (操作系统,e.g. UNIX) 和Compiler (编译器) 应用广泛,执行效率比较高 语法灵活,表达自由 容易导致一些不易检测的错误,PDP - 11,30,C: 标准化 & 库,ANSI/ISO标准: 1990 (ANSI C) C Standard Libraries (C标准库) 包含了预定义的函数 对编程的效率和代码的性能都大有益处 通常由编译器厂商(compiler vendors)提供 专有的库由厂商独立提供,31,如何进行程序设计,问题:角度转换弧度 问题细化:输入一个角度,转换成弧度,输出弧度 解决步骤: 1、输入角度 2、转换成弧度 3、输出弧度 编码 (Coding):转换成C语言的描述 执行程序,进行验证,32,Source code:,void main() float angle,radian ; scanf(“%f”, ,33,设计流程,34,错误类型,Syntax errors (语
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2025年华能电工考试题及答案
- 解压视频试题及答案
- 石材供应链可持续性提升的策略研究-洞察及研究
- 文员电脑题库及答案
- 2025年汽车美容题库及答案
- 2025年新疆民族试卷及答案
- 脑初中考试题及答案
- 2025年人体呼吸试题及答案
- 2025年教师招聘之《幼儿教师招聘》练习题库包附参考答案详解(夺分金卷)
- 教师招聘之《小学教师招聘》考前冲刺练习及答案详解(易错题)
- 麻醉期间体温监测
- 公司第三方回款管理制度
- 海上风电场集电线路方案的选择
- 会展经济与管理课件
- 家庭健康知识课件
- 停车场保安门岗岗位职责
- DG-TJ08-2062-2025 住宅工程套内质量验收标准
- 单位交纳公积金协议书
- 《激光切割机操作》课件
- 仪表安全培训课件
- 吊篮临时用电施工方案
评论
0/150
提交评论