- 7
- 0
- 约1.75万字
- 约 89页
- 2017-08-20 发布于广东
- 举报
C语言程序设计(第3版) 主 教 材:C语言程序设计(第三版) 书 号:ISBN 978-7-113-09512-3 中国铁道出版社 2009年2月 第3版配套教材:C语言程序设计实验教程书 号:ISBN 978-7-113-09513-0 中国铁道出版社 2009年2月 第1版作者电子邮箱: Luojian116@126.com wsjwhz@126.com 2.1 常用的进位制 C语言中的数据类型 2.1.1 二进制数、八进制数与十六进制数 十进制数有10个数码:0~9,加法运算采用“逢十进一”的进位法则 二进制数有2个数码:0和1,加法运算采用“逢二进一”的进位法则 八进制数有8个数码:0~7,加法运算采用“逢八进一”的进位法则。 十六进制数有16个数码:0~9和A~F,加法运算采用“逢十六进一”的进位法则 2.1.2 二进制数、八进制数、十进制数和十六进制数之间的换算 二进制(八进制或者十六进制数)转换为十进制数的换算方法 采用按权展开逐个相加的方法 十进制数转换为二进制数的换算方法 十进制数的整数部分采用除以二取余数,直到商为零;十进制数的小数部分采用乘以二取整(即十分位向个位的进位),直到小数部分为零(或者精确到小数点后规定的位数)。 二进制数转换为八进制数的换算方法 转换时以小数点为分界线,整数部分从低到高,小数部分从高到低按位数分组,每3位二进制数对应1位八进制数;分组时若不足3位数时,整数部分要在前面补0、小数部分要在后面补0。 二进制数转换为十六进制数的换算方法 转换时以小数点为分界线,整数部分从低到高,小数部分从高到低按位数分组,每4位二进制数对应1位十六进制数;分组时若不足4位数时,整数部分要在前面补0、小数部分要在后面补0。 2.2 数与字符在计算机内存中的表示 本节介绍的主要内容包括: 机器数和真值 原码、反码与补码 定点数与浮点数 ASCII编码 2.2.1 机器数与真值 1.机器数 计算机只能识别“0”和“1”两种数码。数的正、负符号也可以用“0”和“1”来表示,具体地,把一个数的最高位作为符号位,称为数符,用“0”表示正,“1”表示负,其余位仍然表示数值。若一个整数在内存中占用16位,则十进制整数+10在内存中的存储情况如下图所示。 注意:机器数表示的范围受到字长的限制,例如,如果表示一个整数,字长是16位,那么最大值是0111111111111111,因此16位整数的最大值是32767。如果超过32767,就要“溢出”。 2.真值 带符号位的机器数对应的数值称为机器数的真值。 【例2.4】写出带符号位的机器数2和2的真值。 2= +33 2= -35 3.无符号数 当计算机字长的所有二进位都用来表示数值时,称为无符号数。一般在不出现负数的情况下,可以使用无符号数。这样可以将最大数增大一倍。例如16位无符号数的最大值是(1111111111111111)2,也就是65535。 2.2.2 原码、反码和补码 符号数值化以后,为了方便地对机器数进行算术运算,提高运算速度,通常使用原码、反码和补码。 为了简单起见,下面只以整数为例,而且假定字长8位。 1.原码 整数X的原码是指:其数符位0表示正,1表示负,其数值部分是X的绝对值的二进制表示。 [+1]原 =[+127]原 =[-1]原 =[-127]原 = 2.反码 整数X的反码是指:对于正数,与原码相同;对于负数,数符位为1,其数值部分是X的绝对值取反,即1变0,0变1。 例如: [+1]反 = [+127]反 =[-1 ]反 = [-127 ]反 =3.补码 整数X的补码是指:对于正数,与原码相同;对于负数,数符位为 1,其数值部分是X的绝对值取反后最低位加1,即负数的补码等于其对应的反码加1。 例如: [+1]补 =[+127]补 =[-1 ]补 =[-127 ]补 =2.2.3 定点数和浮点数 计算机处理的数多数带有小数点,小数点在计算机中不占二进位,那么如何表示小数点的位置,反映数值的大小? 一般有两种表示方法: 第一种是约定机器数的小数点
您可能关注的文档
- C语言程序设计(第二版)电子教案 第5章 函数.ppt
- C语言程序设计(第二版)电子教案 第6章 指针.ppt
- C语言程序设计(第二版)电子教案 第7章 结构体与共用体.PPT
- C语言程序设计(第二版)电子教案 第8章 编译预处理.ppt
- C语言程序设计(第二版)电子教案 第9章 位运算.ppt
- C语言程序设计(第二版)电子教案 第10章 文件.ppt
- C语言程序设计(第二版)电子教案 第11章 综合实例.ppt
- C语言程序设计(第二版)电子教案丁亚涛 第1章 C语言概述.ppt
- C语言程序设计(第二版)电子教案丁亚涛 第2章 数据类型、运算符和表达式.ppt
- C语言程序设计(第二版)电子教案丁亚涛 第3章 简单程序设计.ppt
- C语言程序设计(第三版) 教学课件 作者 罗坚 王声决 主编 第3章 算法与程序设计基础.ppt
- C语言程序设计(第三版) 教学课件 作者 罗坚 王声决 主编 第4章 函数.ppt
- C语言程序设计(第三版) 教学课件 作者 罗坚 王声决 主编 第5章 数组类型与指针类型.ppt
- C语言程序设计(第三版) 教学课件 作者 罗坚 王声决 主编 第6章 结构类型与联合类型.ppt
- C语言程序设计(第三版) 教学课件 作者 罗坚 王声决 主编 第7章 文件.ppt
- C语言程序设计(第三版) 教学课件 作者 恰汗.合孜尔 第1章 概论.ppt
- C语言程序设计(第三版) 教学课件 作者 恰汗.合孜尔 第2章 C语言基础及顺序结构程序设计.ppt
- C语言程序设计(第三版) 教学课件 作者 恰汗.合孜尔 第3章 选择结构程序设计.ppt
- C语言程序设计(第三版) 教学课件 作者 恰汗.合孜尔 第4章 循环结构程序设计.ppt
- C语言程序设计(第三版) 教学课件 作者 恰汗.合孜尔 第5章 数组.ppt
原创力文档

文档评论(0)