原码就是取 绝对值。反码是原码取反。补码是反码+1。
int
int 在32/64位系统中占4个字节,一个字节能含八位二进制数字0/1,四个字节含32位,所以表示的数的范围为-(2的31次方-1)到(2的31次方-1),数字为-2 147 483 647~2 147 483 647.
float占四个字节,对于单精度浮点数(float)来说,有一位符号位,指数位共8位,尾数共23位。指数能够表示的指数范围为-128~127。尾数为23位。当尾数全1时再加上小数点前面的1,指数取到最大正数127(8位,正数最大127,负数最小-128),浮点数取得正数的最大值。
+1.111111111111111111111*2^127(1.后面23个1,由于尾数的范围1~2,其最高位总为1,故只需存取小数部分,所以小数为是23位1),,解释出二进制1.11111111111111111111111=1+1/2+1/4+1/8+1/16..........,约等于2,2*2^127=3.4*10^38。为3.4*10^38负数亦然。
double占八个字节,Double的计算与此类似,double的符号位为52位,指数为62~52位,共11位。表示的范围为-1024~1023。尾数为51~0。表示的范围为+1.111111111111111111111*2^1023(1.后面52个1)为1.7*10^308。负数亦然。
char
占一个字节,原码就是取 绝对值。反码是原码取反。补码是反码+1,
char类型是8位,singed char 原码 :1111 1111-01111111 最高位为符号位,1负0正 - 127 --- +127
-127补码10000001,还有一个1000 0000 用它来表示 -128,因为没有负0的概念。计算机里负数都是用补码来表示。
所以就是-128- 127
计算机本身确实以机器的思维进行处理的”。就表现为“计算机对数据的处理其实是以‘补码’的形式
能被11整除的数的特征
1、能被11整除的数的特征能被11整除的数的特征 把一个数由右边向左边数,将奇位上的数字与偶位上的数字分别加起来,再求它们的差,如果这个差是11的倍数(包括0),那么,原来这个数就一定能被11整除. 例如:判断491678能不能被11整除. 奇位数字的和9+6+8=23 偶位数位的和4+1+7=12 23-12=11 因此,491678能被11整除. 这种方法叫"奇偶位差法". 除上述方法外,还可以用割减法进行判断.即:从一个数里减去11的10倍,20倍,30倍到余下一个100以内的数为止.如果余数能被11整除,那么,原来这个数就一定能被11整除. 又如:判断583能不能被11
2、整除. 用583减去11的50倍(583-11×50=33)余数是33, 33能被11整除,583也一定能被11整除.11与0的特性: 1是任何整数的约数,即对于任何整数a,总有1|a. 0是任何非零整数的倍数,a0,a为整数,那么a|0. 2假设一个整数的末位是0、2、4、6或8,那么这个数能被2整除。 3假设一个整数的数字和能被3整除,那么这个整数能被3整除。 (4) 假设一个整数的末尾两位数能被4整除,那么这个数能被4整除。 5假设一个整数的末位是0或5,那么这个数能被5整除。 6假设一个整数能被2和3整除,那么这个数能被6整除。 7假设一个整数的个位数字截去,再从余下的数中,
3、减去个位数的2倍,如果差是7的倍数,那么原数能被7整除。如果差太大或心算不易看出是否7的倍数,就需要继续上述截尾、倍大、相减、验差的过程,直到能清楚判断为止。例如,判断133是否7的倍数的过程如下:133×27,所以133是7的倍数;又例如判断6139是否7的倍数的过程如下:6139×2595 , 595×249,所以6139是7的倍数,余类推。 8假设一个整数的未尾三位数能被8整除,那么这个数能被8整除。 9假设一个整数的数字和能被9整除,那么这个整数能被9整除。 10假设一个整数的末位是0,那么这个数能被10整除。 11假设一个整数的奇位数字之和与偶位数字之和
4、的差能被11整除,那么这个数能被11整除。11的倍数检验法也可用上述检查7的割尾法处理!过程唯一不同的是:倍数不是2而是1! 12假设一个整数能被3和4整除,那么这个数能被12整除。 13假设一个整数的个位数字截去,再从余下的数中,加上个位数的4倍,如果差是13的倍数,那么原数能被13整除。如果差太大或心算不易看出是否13的倍数,就需要继续上述截尾、倍大、相加、验差的过程,直到能清楚判断为止。 14假设一个整数的个位数字截去,再从余下的数中,减去个位数的5倍,如果差是17的倍数,那么原数能被17整除。如果差太大或心算不易看出是否17的倍数,就需要继续上述截尾、倍大、相减、验差的过程,直到能清楚
5、判断为止。 15假设一个整数的个位数字截去,再从余下的数中,加上个位数的2倍,如果差是19的倍数,那么原数能被19整除。如果差太大或心算不易看出是否19的倍数,就需要继续上述截尾、倍大、相加、验差的过程,直到能清楚判断为止。 16假设一个整数的末三位与3倍的前面的隔出数的差能被17整除,那么这个数能被17整除。 17假设一个整数的末三位与7倍的前面的隔出数的差能被19整除,那么这个数能被19整除。 18假设一个整数的末四位与前面5倍的隔出数的差能被23(或29)整除,那么这个数能被23整除。能被2、3、4、5、6、7、8、9等数整除的数的特征性质1:如果数a、b都能被c整除,那么它们的和a+b
6、或差(ab)也能被c整除。性质2:几个数相乘,如果其中有一个因数能被某一个数整除,那么它们的积也能被这个数整除。能被2整除的数,个位上的数能被2整除偶数都能被2整除,那么这个数能被2整除能被3整除的数,各个数位上的数字和能被3整除,那么这个数能被3整除能被4整除的数,个位和十位所组成的两位数能被4整除,那么这个数能被4整除能被5整除的数,个位上为0或5的数都能被5整除,那么这个数能被5整除能被6整除的数,各数位上的数字和能被3整除的偶数,如果一个数既能被2整除又能被3整除,那么这个数能被6整除能被7整除的数,假设一个整数的个位数字截去,再从余下的数中,减去个位数的2倍,如果差是7的倍数,那么原
7、数能被7整除。如果差太大或心算不易看出是否7的倍数,就需要继续上述截尾、倍大、相减、验差的过程,直到能清楚判断为止。例如,判断133是否7的倍数的过程如下:133×27,所以133是7的倍数;又例如判断6139是否7的倍数的过程如下:6139×2595 , 595×249,所以6139是7的倍数,余类推。能被8整除的数,一个整数的末3位假设能被8整除,那么该数一定能被8整除。能被9整除的数,各个数位上的数字和能被9整除,那么这个数能被9整除能被10整除的数,如果一个数既能被2整除又能被5整除,那么这个数能被10整除即个位数为零能被11整除的数,奇数位从左往右数上的
8、数字和与偶数位上的数字和之差大数减小数能被11整除,那么该数就能被11整除。 11的倍数检验法也可用上述检查7的割尾法处理!过程唯一不同的是:倍数不是2而是1!能被12整除的数,假设一个整数能被3和4整除,那么这个数能被12整除能被13整除的数,假设一个整数的个位数字截去,再从余下的数中,加上个位数的4倍,如果差是13的倍数,那么原数能被13整除。如果差太大或心算不易看出是否13的倍数,就需要继续上述截尾、倍大、相加、验差的过程,直到能清楚判断为止。能被17整除的数,假设一个整数的个位数字截去,再从余下的数中,减去个位数的5倍,如果差是17的倍数,那么原数能被17整除。如果差太大或心算不易看出
9、是否17的倍数,就需要继续上述截尾、倍大、相减、验差的过程,直到能清楚判断为止。另一种方法:假设一个整数的末三位与3倍的前面的隔出数的差能被17整除,那么这个数能被17整除能被19整除的数,假设一个整数的个位数字截去,再从余下的数中,加上个位数的2倍,如果差是19的倍数,那么原数能被19整除。如果差太大或心算不易看出是否19的倍数,就需要继续上述截尾、倍大、相加、验差的过程,直到能清楚判断为止。另一种方法:假设一个整数的末三位与7倍的前面的隔出数的差能被19整除,那么这个数能被19整除能被23整除的数,假设一个整数的末四位与前面5倍的隔出数的差能被23(或29)整除,那么这个数能被23整除能被25整除的数,十位和个位所组成的两位数能被25整除。能被125整除的数,百位、十位和个位所组成的三位数能被125整除。