计算机内部均采用二进制来表示各种信息。
一、数的位置计数法及进制的概念
① 数制只采用R个基本符号——基R数制,R称为数制的“基数”。
② 数制中每一位(e.g.十进制的个十百千位等)对应的单位称为“权”,权即以R为底的幂。
③ 每一位数的数值=数码×权,数码为0~R-1。
二、数制之间的转换
① R转十
按权展开求和。
② 十转R
整数部分采用除基数取余法,小数部分采用乘基数取整法。
【个人理解】小数部分权值的指数为负——R-1,除相当于乘以R。
可带入公式:数值=数码×权,数码即为待求量。
三、计算机中数的表示(定点数,原码,反码,补码)
① 计算机中数据分为数值数据和非数值数据,数值数据分为无符号数和有符号数。
无符号数多用于表示字符、地址以及逻辑值等。
有符号数的最高位作为符号位,“0”表示正,“1”表示负,即把符号数值化,这样的数称为“机器数”,机器数对应的原来有正负号的数称为“真值”。
有符号数分为定点数和浮点数。定点数分为定点整数(纯整数)和定点小数(纯小数)。
② 机器数三种表示形式——原码、反码、补码
原码:整数X的原码为,符号位为0表示正,为1表示负,数值部分就是X的绝对值的二进制数。
反码:正数的反码与原码相同;对负数,符号位不变,其数值位(X的绝对值位)按位取反。
补码:正数补码与原码相同,对负数,符号位不变,数值位(X的绝对值位)按位取反后在最低位加1。
补码运算简单方便,符号位可作为数据的一位参与运算,不必单独处理,且最后结果的符号位仍然有效。
四、计算机中实数的浮点表示
① 实数X的浮点形式(科学表示法)若采用二进制表示为:X=±M×2±E,M为X的尾数,采用二进制纯小数形式(0.xxxxx),代表X的全部有效数字,其位数反映了数据的精度。
E为X的阶码,表示2的几次方,通常采用二进制整数形式,决定了数的范围。
M和E都可以是正数或者负数,即阶码和尾数都是带符号的数,可以采用不同的码制表示法,例如尾数可以用原码或补码表示,阶码用补码表示。
② 浮点数的具体格式随机器不同而有区别。
IEEE754标准。
五、数的表示范围
机器中数的表示范围与数据位数及表示方法有关。
一个m位整数(包括一位符号位),如果采用原码或反码表示,范围是2m-1-1到-(2m-1-1);若采用补码表示,范围是2m-1-1到-2m-1。