c语言第2章数据的表示和组织.ppt

上传人:max****ui 文档编号:6334338 上传时间:2020-02-23 格式:PPT 页数:28 大小:382.31KB
返回 下载 相关 举报
c语言第2章数据的表示和组织.ppt_第1页
第1页 / 共28页
c语言第2章数据的表示和组织.ppt_第2页
第2页 / 共28页
c语言第2章数据的表示和组织.ppt_第3页
第3页 / 共28页
点击查看更多>>
资源描述
第2章数据的表示和组织 数据的存储介质 存储器数据的组织基本数据类型 本章的基本内容是 2 1数据的存储介质 存储器 二进制 1 进位计数制 简称进制计数方法 当某一位的值达到某个固定量时 就要向高位产生进位 不同的进制以基数来区分 若以r代表基数 则 r 10为十进制 可使用0 1 2 9共10个数码 r 2为二进制 可使用0 1共2个数码 r 8为八进制 可使用0 1 2 7共8个数码 r 16为十六进制 可使用0 1 2 9 A B C D E F共16个数码 每个位置都对应一个权值 称为位权值 r进制数通常写作 an a1a0 a 1 a m r 其中ai 0 1 r 1 m i n 例如 1101 2 689 12 10 二进制 1 进位计数制算术运算 遵守 逢r进1 借1当r 的规则 例如 十进制的运算规则为 逢10进1 借1当10 二进制的运算规则为 逢2进1 借1当2 2 1数据的存储介质 存储器 二进制 2 进位计数制二进制数与十进制数之间的转换 1 二进制数转换为十进制数将二进制数转换为十进制数只需将二进制数按位权值展开然后求和 所得结果即为对应的十进制数 2 1数据的存储介质 存储器 例2 1将二进制数1101 11转换为十进制数 解 1101 11 1 23 1 22 0 21 1 20 1 2 1 1 2 2 13 75则 1101 11 2 13 75 10 二进制 2 进位计数制二进制数与十进制数之间的转换 2 十进制数转换为二进制数十进制整数转换为二进制整数 除基取余 逆序排列 2 1数据的存储介质 存储器 例2 2将十进制整数46转换为二进制整数 解 除数商余数46230231111151521210101则 46 10 101110 2 二进制 2 1数据的存储介质 存储器 十进制小数转换为二进制小数 乘基取整 正序排列 例2 3将十进制小数0 375转换为二进制小数 解 乘数积整数0 3750 7500 751 510 51 01则 0 325 10 0 011 2 存储器 存储器分为两种 内存储器 内存 和外存储器 外存或辅存 我们通常所说的存储器指的是内存储器 内存储器有两种 随机存储器RAM和只读存储器ROM 内存储器的最小存储单位是位 bit 每个位可以存储一位二进制数 存储单元是可管理的最小存储单位 典型的存储单元是一个字节 Byte 每个存储单元的编号称为地址 地址一般从0开始连续编号 线性编址 2 1数据的存储介质 存储器 存储器 任意时刻存储单元的内容都不会是空的 一定是0和1的编码 访问 存取 读出 写入 2 1数据的存储介质 存储器 2 2数据的组织 在计算机内部 任何数据都是以二进制形式存储的 那么 程序是如何操作这些数据的 如果程序需要处理大量的数据 那么 计算机如何是组织这些数据的 1 二进制形式各种数据在计算机底层没有任何含义 程序中的整数 实数 字符等数据都需要编程人员人工用二进制表示出来 再输入到计算机的存储单元中 程序中对数据的处理是基于内存的 即直接操作内存 2 2数据的组织 010101111101011110000 内存 程序 2 基本数据类型数据通常以某种特定形式 整 实 字符串 存在 不同形式的数据其处理规则不同 高级程序设计语言根据数据对象的不同使用规则 在二进制形式存储的基础上引入了整型 实型 字符型 逻辑型等基本数据类型 2 2数据的组织 回避了 存储器 的概念 010101111101011110000 内存 程序 基本数据类型 整型 实型 字符型 逻辑型 3 构造数据类型和自定义数据类型复杂程序经常要用到一些基本数据类型的组合 于是出现了更加抽象的构造数据类型 由于用户的实际需要随着程序的不同而不同 于是出现了自定义数据类型 2 2数据的组织 自行组织数据而不局限于基本数据类型 010101111101011110000 内存 程序 基本数据类型 整型 实型 字符型 逻辑型 构造数据类型和自定义数据类型 4 抽象数据类型可以将抽象数据类型理解为 数据 操作 即把一组数据对象及其上的操作封装成一个整体 例如 整数的数学概念和施加到整数的运算构成一个抽象数据类型 C 语言中的基本数据类型int是对这个抽象数据类型的物理实现 2 2数据的组织 2 2数据的组织 数据组织的发展历程 数据抽象的过程 2 3基本数据类型 整型 在C C 语言中 整型数据的基本类型说明符是int integer的简写 1 存储格式在微型计算机中 整型数据的存储格式一般采用补码表示 2 3基本数据类型 整型 例2 4X 1000101 则 X 补 01000101X 1000101 则 X 补 10111010 1 10111011 X 补 01000101 则X 1000101 X 补 10111011 则X 10111011 1 10111010 1000101 2 3基本数据类型 整型 2 取值范围抽象地讲 整型数据的值域是全体整数 但计算机是有限的 计算机内存和其他硬件设备只能存储和操作一定量的数据 因此 每种计算机能表示的整数都在某一范围之内 例如 4位二进制数表示的整数集合如下 2 3基本数据类型 整型 C C 语言根据取值范围的不同 将整型数据进一步分为 基本整型 int 短整型 修饰符short 和长整型 修饰符long 2 3基本数据类型 有符号数和无符号数 3 运算集合由于整型数据能够表示的整数是有限的 如果运算的结果超过了系统能够表示的整数范围 这种错误现象称为溢出 例3 7假设整数用1个字节表示 计算68 61的值 解 68 1000100 68 补 0100010061 0111101 61 补 0011110101000100 68 补 00111101 61 补10000001 127 补 2 3基本数据类型 整型 2 3基本数据类型 实型 实型也称为浮点型 实型数据也称为实数或浮点数 实型数据在计算机中一般采用浮点形式存储 C语言提供了两种浮点数格式 单精度 float 和双精度 double 1 存储格式一般情况下 float 即floating point的简写 型数据在内存中占4个字节 double 即doubling point的简写 型数据在内存中占8个字节 但是用多少位来表示阶码 即指数部分 用多少位来表示尾数 即小数部分 标准C没有具体规定 由具体的编译系统来决定 2 3基本数据类型 实型 例2 6假设某C C 编译系统的float型数据占32位二进制 其中24位表示尾数 8位表示阶码 给出68 625在内存中的存放形式 解 68 625 10 1000100 101 2 0 1000100101 2111 2 3基本数据类型 整型 2 取值范围根据IEEE标准 float型数据占32位 其中尾数占24位 阶码占8位 而double型数据占64位 其中尾数占52位 阶码占12位 2 3基本数据类型 整型 3 运算集合在C C 语言中 实型数据可以进行基本的算术运算 如加 减 乘 除等 同样需要注意溢出问题 要保证运算结果在系统能够表示的实数范围 在C C 语言中 实型数据可以进行基本的算术运算 如加 减 乘 除等 同样需要注意溢出问题 要保证运算结果在系统能够表示的实数范围 由于实型数据的精度是有限的 所以一般应避免将两个实型数据比较大小 例如 对于float型实数12345 6789和12345 6782 由于float型数据只能存储8位有效数字 第9位数字是系统加上的随机数 所以 这两个实数的比较结果不能确定 实型数据一般不能进行逻辑运算 对实数进行逻辑运算没有实际意义 2 3基本数据类型 字符型 1 存储格式微型计算机一般采用ASCII码 在C语言中 字符型的类型说明符是char char型数据在内存中需要一个字节 2 取值范围char型数据的取值范围是ASCII码值为0 255对应的字符 3 运算集合不同的程序设计语言为字符型数据提供的运算集合不同 2 3基本数据类型 逻辑型 逻辑型也称为布尔型 1 存储格式 不同的程序设计语言对逻辑型数据的表示有所不同 同一程序设计语言的不同编译器对逻辑型数据的表示有所不同 甚至同一编译器的不同版本对逻辑型数据的表示也有所不同 2 取值范围 该类型的数据只有两个可能的取值 真和假 3 运算集合 可以进行逻辑运算 C语言中将整型作为逻辑型 因此 逻辑型数据也可以进行算术运算 本章小结 知识结构图 作业 习题3
展开阅读全文
相关资源
正为您匹配相似的精品文档
相关搜索

最新文档


当前位置:首页 > 图纸专区 > 课件教案


copyright@ 2023-2025  zhuangpeitu.com 装配图网版权所有   联系电话:18123376007

备案号:ICP2024067431-1 川公网安备51140202000466号


本站为文档C2C交易模式,即用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。装配图网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知装配图网,我们立即给予删除!