文档详情

黄永峰《程序设计教学》第2讲数据类型(上).ppt

发布:2018-05-11约2.99千字共27页下载文档
文本预览下载声明
* 第2讲 数据类型和变量 黄永峰 2015-09-21 yfhuang@ 推荐2位良师益友 网络资源 百 度 IE 开心一笑 对于各种凌乱的电脑问题,手机问题,其他行业的人,以为程序员们什么都会;程序员中,女程序员以为男程序员什么都会;男程序员中,一般程序员以为技术好的程序员什么都会;技术好的程序员,都在网上苦苦找答案 ….. 助教组长 陶怀舟taohuaizhou@ 本讲要点 计算机中数据的表示 C++的数据类型 第1次实验作业 对应教材的第2章P19-30的内容 程序=算法+数据结构 为什么从“数据”开始学编程? 语句是C++程序的基本单位 语句=“表达式”+“;” 表达式=数据+运算符 2.1数据在计算机中的表示 在计算机中,数据以“二进制编码”形式存放于内存中 内存最小的存储单位是表示0或1的位(bit) 字节是内存分配和使用最基本的单位,通常以8位为一个字节(byte) 每个字节包含8位,可以表示256 ([0,28-1])种不同的数值 计算机内存结构 C++语言中数据的表示都是以字节为基础的。不同数据类型占有的空间都是字节的整数倍 229 a0011000011101101 ….. 2.1数据在计算机中的表示 --进制概念 2.1数据在计算机中的表示 --二进制概念 世界上只有10种人,1种人懂二进制, 另外1种人不懂二进制 为什么二进制适用于计算机? 位权:一个数字符号处在数据中位置所代表的值 例如:324=3*102+2*101+4*10 提问:101101=( ??? )10 整数19如何转换2进制? 2.1数据在计算机中的表示 --2与10进制转换 (101101)2 =1*25+0*24+1*23+1*22+0*21+1*20=32+8+4+1=(45)10 (19)10=(10011)2 2.1数据在计算机中的表示 --16进制和8进制 16进制 表示符号:0~9、A、B、C、D、E、F; 表示方法:以“0x”或“0X”开始的整数。例如:0X11 转换:自右往左,4位分节 例:101,1101,0111=(?)16 8进制 表示符号:0~7 表示方法:以数字“0”开始的整数。注意011与11的区别 转换:自右往左,3位分节, 例如:10,111,010,111=(? )8 2.1数据在计算机中的表示 --数据单位 --1byte 有多大? 2.2 数据类型 英文字符:a,A,1,?.... 中文字符:黄,中,。,.... 整型数据,12,666,... 实型数据,3.14,... 图像数据, ... 音频数据, ASCII GB2312 补码 偏移码 H.264 G.723 自然界信息 计算机内数据 数据编码 问题:计算机如何知道“编码类型和数据长度”-数据类型 ………. 2.2 数据类型 --C++语言数据类型(参考P20) 基本类型 构造类型 指针类型 空类型 整型 字符型 实型 枚举类型 (浮点型) 单精度型 双精度型 数组类型 结构体类型 共用体类型 数据类型 不同的数据类型就决定了不同的数据长度和编码格式 2.2 数据类型 --数值型数据的编码与长度 问题:16位无符号和有符号整数范围是多少? 2.2 数据类型 --整型数据(补码)表示 2.2 数据类型--实型数据的表示 实型数据采用偏移码表示 同样长度的浮点数表示范围要大于整数,注意“溢出” 计算机内的实型数是非连续 2.2 数据类型 --字符型(ASCII码) 2.2 数据类型 --字符型(ASCII码) 犀利哥的故事1 话说犀利哥一窜网络红人,风光回乡,一觉醒来,蓦地收到“天仙妹妹”短信,内容为:0x49204c6他百思不得其解,发帖请助破译。一网友赐其一程序?犀利哥运行一看结果,欣喜抓狂。欲知原委如何?请见…. 2.2 数据类型 --字符型(ASCII码) int 73 32 1111 8101 8101 85 32 32 2.2 数据类型--C++语言数据类型 犀利哥的故事2 话说犀利哥偶得短信。另一网友亦赐其一程序。犀利哥运行一看结果,一脸雾水。欲知原委?请见…. 数据大于类型表 示范围,即“上溢 出”,这样会出错 实型数表示范围大于整数 数据小于类型表 示精度,即“下溢 出”,结果为0 2.2 数据类型小结 本讲重点小结 整型数的2、8、16进制转换,以及2进制表示 数据类型 另外,教材的2.1节可以不作重点看 下讲内容 常量和变量 运算符 C++表达式 参考教材的第2章,希望大家做好预习 第一次 实验练习 1.实验目的:熟悉VS2008集成开发工具软件的使用。包括:项目建立、源
显示全部
相似文档