大学c语言第一章课件

上传人:wt****50 文档编号:50177772 上传时间:2018-08-07 格式:PPT 页数:39 大小:2.79MB
返回 下载 相关 举报
大学c语言第一章课件_第1页
第1页 / 共39页
大学c语言第一章课件_第2页
第2页 / 共39页
大学c语言第一章课件_第3页
第3页 / 共39页
大学c语言第一章课件_第4页
第4页 / 共39页
大学c语言第一章课件_第5页
第5页 / 共39页
点击查看更多>>
资源描述

《大学c语言第一章课件》由会员分享,可在线阅读,更多相关《大学c语言第一章课件(39页珍藏版)》请在金锄头文库上搜索。

1、级高语言设计程 序1 1章节自测及在线编程练习: http:/* *第一章计算机组 成与程序 设计语言2 2* *3 3内容提要内容提要4.C is the most beautiful language!3.由低级语言到高级语言2.进制1.计算机的前世今生5.C程序开发过程内容提要内容提要* *计算机4 4石器时代石头、手指、绳子铜器时代算筹(商周时代)、格子(西方)铁器时代算盘 通过程序设计语言来开 发软件加在硬件之上,控制硬件 完成功能物质基础1.1.计算机的前世今生计算机的前世今生 * *5 5冯冯诺依曼诺依曼的程序存储思想的程序存储思想n“计算机之父”冯 诺依曼的程序存储思想:计算机

2、应该采用二进制 操作指令也是一种信息 ,也 用二进制数表示程序和数据的存储形式可以 完全相同 程序本身也可包含数据* *6 6关于第一台计算机关于第一台计算机n1946.2.14 ENIAC(埃尼阿克)n现在保存在宾夕法尼亚大学n这台机器名为“电子数值积分 和计算机”(简称埃尼阿克,完 全是一个庞然大物,占地面积 达170m2,质量达30t,耗电量 也很惊人,功率为150kW,共使 用了近两万个电子管,在工作 时这些管子看上去活像两万只 点着的灯泡。n埃尼阿克主要用来进行弹道计 算的数值分析 * *7 7其他版本的第一台计算机其他版本的第一台计算机n图灵机:计算机科学之父、人工 智能之父, “

3、图灵奖”n德国人Conran Euse代号为 “Z”的计算机n哈佛,IBM的Mark系列大型电子 计算机n真正的第一台计算机是上面三 台中之一,无从考证* * *8 8计算机组计算机组成成n计算机的组成: 硬件系统+软件系统 n计算机的作用:用来处理存储的数据,处理和存储是一 个整体.comput + er 计算的机器 计算机是一种具有记忆能力,能自动执 行指定的任务并能高速执行运算功能的 电子设备。* *9 9控制总线CPU计算机硬件的组成运算器控制器存储器接口输入设备输出设备地址总线数据总线进行各种算术运算和逻辑运算 控制和指挥整个运算过程,使 指令按要求一条一条执行。 存放程序指令 及数

4、据 输入指令代码 和原始数据 显示或打印 计算结果 处 理 1010关于关于CPUCPUnCPU:Central Processor Unit,中央处理器,完成各 种处理(运算+控制),是计算机最核心部件。nCPU中设寄存器的目的:存放数据或计算的中间结果, 不通过地址总线和数据总线 ,处理速度快 。n寄存器有两种:通用寄存器和专用寄存器。是运算器的组成部 分,暂存操作数及 运算的中间结果 每一个都有特定的作用 * *1111关于存储器关于存储器n存储器的组成:由存储单元组成,每个单元1个字节( 1B),1B=8bit,每个单元有一个地址。 n存储单元中的内容与存储单元的地址是两个概念,其 区

5、别如同房间里的东西与房间号码。n存储器的大小指它有多少个字节,也就是有多少个不 同的地址号,取决于地址总线的根数,n根地址总线, 存储器容量为:2nn常用存储单位:1TB=210GB=220MB=230KB=240B* *位与字节位与字节n一个位有多大? 只能是1位“0”或者“1”,换言之,可以表示两个数。n一个字节有多大? 8个bit,可以表示2*2*2*2*2*2*2*2 = 28 = 256个数n计算机常用一个字节来表示字符,即8位bit对应一 个字符,一个字节共能表示256个不同字符* *1212nbit,称为比特或者位。1比特可以存放一位二进制 的0或者1nByte,字节。 1 B1

6、 B = = 8 b8 bnKilobyte(KB)。 1 KB1 KB = = 1,024 B1,024 BnMegabyte(MB)。 1 MB1 MB = = 1,024 KB1,024 KBnGigabyte(GB)。 1 GB1 GB = = 1,024 MB1,024 MBnTerabyte(TB)。 1 TB 1 TB = = 1,024 GB1,024 GB存储容量的衡量单位存储容量的衡量单位* *13132.2.进进制制n我们使用得最多的是十进制。n日常生活中的其它进制:n六十进制(分、秒),十二进制(月份)等。n计算机中采用二进制。* *1414计算机为什么使用二进制?计算

7、机为什么使用二进制?n为什么不使用十进制? 二进制在电器元件中容易实现 二进制运算比十进制运算简单n计算机中采用二进制,是由冯诺伊曼提出的。* *1515二进制二进制n二进制采用0、1两个符号来表示所有的数,其特点 是“逢2进1”。0、1、10、11n二进制中的“二”称为“基数”。表示该数制中允 许使用的基本符号个数。 * *1616二进制二进制n“世界上有10种人,一种人懂二进制,另一种人不 懂。”n问题:在书写二进制数时,有可能与习惯用的十进 制数发生混淆。n解决办法:用后缀“B”(Binary)或者下标“2” 注明。 (1101)10:十进制数1101。 (1101)2 1101B :二

8、进制数1101。* *1717二进制数的算术运算基本规则二进制数的算术运算基本规则1.二进制数的加法运算2.二进制数的减法运算加法运算法则0+0=0 1+0=10+1=1 01+01=101101 + 111011011减法运算法则0-0=0 1-1=01-0=1 10-01=0111011 - 1110110 1* *1818二进制转换为十进制二进制转换为十进制(1101)2 = 123+122+021+120 = 13 (101.11)2 = 122+021+120+12-1+12-2= 5.75 * *1919n进制数的展开 (1101)10=1103+1102+0101+1100 (1

9、101)2=123+122+021+120n如果出现了小数? (101.11)10 = 1102+0101+1100+110-1+110-2 (101.11)2 = 122+021+120+12-1+12-2十进制整数转换为二进制十进制整数转换为二进制n除二求余法(“逐次除以2,倒着排余数”) 例:将十进制数68转化为二进制数 解: 2 68 余 数2 34 0 低位2 17 02 8 12 4 02 2 02 1 00 1 高位 所以 681010001002* *21218进制 16进制进 制每位 符号逢几 进一位 权n位数的 不同个数例子(结果统一到十进制)十091010i10n341=

10、3*102+4*101+1*100=341二0122i2n101=1*22+0*21+1*20=5八0788i8n127=1*82+2*81+7*80=87十 六09 AF1616i16n31D=3*162+1*161+13*160=797另:3位二进制数相当于1位八进制数: 101 011B=(53)8=53Q4位二进制数相当于1位十六进制数: 1101 1001B=(D9)16=D9H=d9H* *3.3.由由低级语言到高级语言低级语言到高级语言n程序是用计算机“理解”的语言所编写的一组命令,让 计算机来完成某个任务。* *2222机器语机器语言言n计算机能直接理解的语言 机器语言(Mac

11、hine Language)n由一系列二进制0和1组成10111000 00000001 00000000 00000101 00000001 00000000所编写的计算机程序体现为一系列 指令的集合,每条指令的操作码和 操作数都用二进制数表示。用机器语言编写的源程序就是机器 能识别并执行的目标程序* *2323机器语机器语言言n很久以前,那还是我用win98的时候有次我系统崩溃了,因为我是电脑白痴, 我朋友给我介绍了一个高手来帮我修电脑。n 他看了一下电脑,问我有没有98的盘,我说没有。n 他想了一下,叫我把固定电话拿给他,我想修电脑要电话干什么,但人 家是高手,我也不好说什么,就把电话拔

12、下来给他了。n 他把电话线空着的一头接在电脑的一个插孔内,然后进入了dos,然后就 开始在电话上不停的按着键,他按键的速度非常快,但是只按0,1两个键, 我搞不懂这有什么用,但也不敢问,看了半个多小时,他还是不停的按这两 个键,我渐渐的有些困,我问他这东西要搞多久,他说要几个小时,我给他 倒了杯茶,就一个人去隔壁睡觉了。n 醒来的时候,一看已经过了4个多小时,我起身到隔壁,看见他正在98里 面调试,过了一会儿,他说,你试试,我坐上椅子用了一下,真的好了,我 当时也不懂电脑,谢过人家就走了。n 后来我慢慢对电脑有了了解,终于了解,原来当时那位高手是用机器语 言编了一个98系统,我后来问我朋友那位

13、高手的下落,我朋友说前几年去了 美国之后,杳无音讯.* *2424汇编语言与高级语言汇编语言与高级语言n汇编语言:比机器语言“高级”一些的语言 ,引入一些助记符来表示代码和数据。MOV AX , 1ADD AX , 1n高级语言:比汇编语言“高级”一些的语言 。如Basic、Fortran、C、C+、Java等。* *2525C C程序设计语言程序设计语言硬件(硬件(HardwareHardware)操作系统(操作系统(OSOS)应用程序应用程序 (ApplicationApplication)低级语低级语 言的地言的地 盘盘高级语高级语 言的地言的地 盘盘C C语语 言言 的的 地地 盘盘*

14、 *2626计算机如何读懂高级语言?计算机如何读懂高级语言?n编译器(Compiler) 作用:把源代码转换为计算机能读懂的机器代码。 本身也是一个程序。 机器代码以可执行文件的形式保存。n不同的语言编译器不同n同一种语言可以有多种编译器* *2727一次转换的过程一次转换的过程n程序员用高级语言编写源程序n编译器把高级语言源程序变成目标程序(可 执行程序)n用户在计算机上执行目标程序C C语言源程序语言源程序可执行程序可执行程序编译器编译器* *28282929由低级语言到高级语言由低级语言到高级语言n机器语言:是第一代程序设计语言,是计算机硬件系 统能识别和执行的唯一语言。n机器语言的3个

15、局限性:(1)程序不容易读写,操作码和操作数都是二进制数(2)对计算机硬件的依赖性很强,可移植性差(3)指令功能简单,没有按照数据类型分类改进:用助记符代替机器的数字指令,用符号地址表示存储单元的数字地址汇编语言(第二代程序设计语言)改进:面向问题而非面向机器,与计算机硬件结构无关改进:提供丰富的数据类型,语句一般都采用自然语汇,一条语句往往相当于多条指令。 * *3030由低级语言到高级语言由低级语言到高级语言n第一种高级程序设计语言:Fortran语言(1954年)n第一种结构化程序设计语言:Pascal语言(1970年)n面向问题而不是面向机器n通用性、可移植性、效率提高n高级语言的发展:(1)从早期语言到结构化程序设计语言(2)从面向过程到非过程化程序设计语言(面向对象)(3)发展趋势:面向应用* *2009.8 2009.8 朱立华朱立华 俞琼俞琼 王立柱王立柱3131由低级语言到高级语言由低级语言到高级语言n区分两组概念:n(1)程序设计语言与程序(类似于汉语与文章的关系)n(2)源程序与目标程序:源程序:程序员编写的程序目标程序:计算机最终能识别并运行的程序(二进制) 源 程 序目 标 程 序用机器语言编写用汇编语言

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 生活休闲 > 社会民生

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号