数制
定义:按进位的原则进行计数称为进位计数制,简称数制。
位权表示数制的特点:(1)数字的总个数等于基数(2)最大的数字比基数小一,最小的数字是0.(3)每个数字都要乘以基数的幂次,该幂次由每个数字所在的位置决定(位权)。
十进制
采用0,1,2,3,4,5,6,7,8,9这十个数字,采用“逢十进一”的原则。
二进制
采用0,1,这俩个数字。
八进制
采用0,1,2,3,4,5,6,7这8个数字,采用“逢8进一”。
十六进制
采用0,1,2,3,4,5,6,7,8,9,A,B,C,D,E,F,这16个符号,其中A代表10,B代表11,C代表12,D代表13,E代表14,F代表15.采用“逢16进一”。
非十进制转换为十进制数
位权法:把非十进制数按权展开,然后求和。
(10110)2=0*2**0+1*2**1+1*2**2+0*2**3+1*2**4=(22)10
2代表2进制,0代表位权。
十进制整数转换为非十进制整数
方法:除基取余,先余为低,后余为高。
(1)求(55)10的二进制数
55/2=27....1 27/2=13.....1 13/2=6....1 6/2=3...0 3/2=1....1 1/2=0....1
所以结果为(110111)2
(2)求(55)10的八进制
55/8=6....7 6/8=0....6
所以结果为(67)8
(3)求(55)10的十六进制
55/16=3...7 3/16=0....3
所以结果为(37)16
十进制小数转换非十进制小数
方法:乘基取整,先整为高,后整为低。
求(0.625)10的二进制
0.625*2=1.25 1 0.25*2=0.5 0 0.5*2=1 1
所以结果为(0.101)2
如果一个十进制数既有整数又有小数部分,则应该让整数部分和小数部分分别进行转换。
二进制与八进制之间的转换
二进制数转换成八进制数:以小数点为界,将整数部分自右向左和小数部分自左向右每三位为一组(不足三位的用0补齐),然后将各个三位二进制数转换成对应的八进制数
八进制数转换成二进制数:把每一位八进制数转换为对应得到三位二进制数。
例(1)(010 111 001 010.101 101 100)2=(2712.554)8
例(2)(456.174)8=( 100 101 110.001 111 100)2
二进制数与十六进制数的转换
二进制数转换成十六进制数:以小数点为界,将整数部分自右向左和小数部分自左向右每四位为一组(不足四位的用0补齐),然后将各个四位二进制数转换成对应的十六进制数
十六进制数转换成二进制数:把每一位十六进制数转换为对应得到四位二进制数。
例(1)(0101 1100 1010.1011 0110)2=(5CA.B6)16
例(2)(1A9F.1BD)16=(0001 1010 1001 1111.0001 1011 1101)2
信息编码
1.二个基本符号:0和1。
2.每种类型数据在计算机中分配的空间大小是固定的。即每种类型的数据采用固定数目的二进制来表示,而不是根据数值大小分配空间。
无符号整数的编码
无符号整数:主要用于计数或者不存在负数的情况。
例:按二进制计数方式编码 :5 :101
在计算机中无符号整数占8位,所以5的编码为0000 0101。
带符号数在计算机中的表示
数值数据在计算机中的表示必须明确指明符号的表示方法和小数点的位置表示方法。
符号:0表示正,1表示负。
原码
用符号位和数值表示带符号数
反码
正数的反码和原码相同,负数的反码为该数的原码除符号位相同外各位取反
补码
1.正数的补码和原码相同,负数的补码为该数的原码除符号位相同外各位取反,然后在最后一位加一。
2.假设带符号整数占用n为二进制,并且整数用补码编码,那么整数的范围为:
-2**(n-1)---2**(n-1)-1
3.假设无符号整数占用n为二进制,那么无符号整数的表示范围为:
0---2**n-1
4.二进制补码计数法中的加法:
十进制问题 二进制补码问题 十进制答案
3+2 0011+0010=0101 5
-3+ (-2) 1101+1110=1011 -5
7+(-5) 0111+1011=0010 2
小数(浮点数)的表示
1.浮点表示:小数点的位置不固定,一个小数点分为阶码和尾数二部分。
2.阶码:用于表示小数点在该数中的位置,是一个整数。
3.尾数:用于表示该数的有效数值,可以采用整数或者示纯小数二种形式。
4.设字长为32位:
阶符 阶码 尾符 尾数
1位 7位 1位 23位
5.浮点数的规格化形式:为了提高浮点数的精确度规定尾数的最高位必须示非零的有效位
例子:设字长为16位,其中阶符1位,阶码4位,尾符1位,尾数10位,把101101.0101携程规格化的浮点补码数
101101.0101=+0.1011010101*2**6
0 0110 0 1011010101
非数值数据
非数值数据有:字符,声音,图像,图形等
ASCII码:有128种字符,其中10个数字,26个大写字母,26个小写字母,以及各种运算符和表点符。编码位0-31和127,是不可显示和打印字符,称为控制码。(占7位)