赞
踩
目录
计算机内存都是由IC电子原件组成的,其中CPU和内存也是IC电子原件的一种
CPU图:
内存条图:
CPU和内存使用IC电子原件作为基本单元,IC电子原件有不同钟形状,但是其内部的组成单元称为一个个的引脚。有人说CPU和内存内部都是超大规模集成电路,其实IC就是集成电路(Integrated Circuit)
IC元件切面图:
IC元件两侧排列的四方形就是引脚,IC的所有引脚,只有两种电压:0V 和 5V,IC的这种特性,也就决定了计算机的信息处理只能用0和1表示,也就是二进制来处理。一个引脚可以表示一个0或1,所以二进制的表示方式就变成0,1,10,11,100,101等,虽然二进制数并不是专门为引脚来设计的,但是和IC引脚的特性非常吻合
计算机的最小集成单位为 位 ,也就是 比特(bit),二进制数的位数一般为8位、16位、32位,64位,也就是8的倍数,为什么要跟8扯上关系?因为在计算机中,把8位二进制数统称为一个字节,一个字节有8位,也就是由8个bit构成
为什么1个字节等于8位?因为8位能够涵盖所有的字符编码
字节是最基本的计量单位,位是最小的单位
用字节处理数据时,如果数字小于存储数据的字节数(= 二进制的位数),那么高位和数学的数字表示是一样的,左侧表示高位,右侧表示低位。比如这个六位数用二进制数来表示就是100111,只有6位,高位需要用0填充,填充完后是00100111,占一个字节,如果用16位表示就是0000 0000 0010 0111占用两个字节
我们一般口述的32位和64位的计算机一般就指的是位数,32位一次可以表示4个字节,64位一次可以表示8个字节的二进制数
我们一般在软件开发中用十进制数表示逻辑运算,也会被计算机转换为二进制数处理。对于二进制数,计算机不会区分它是图片、音频文件还是数字,这些都是一些数据的结合体
我们把00100111 这个数转换为十进制,二进制转换为十进制数,直接将各位置上的值 * 位权即可
二进制转换十进制示意图:
也就是说,二进制数代表的 0010011转换成十进制就是39,这个39并不是3和9两个数字连着写,而是3 * 10 + 9 *1 ,这里面的 10,1 就是位权,以此类推,上述例子中的位权从高为到低位以此就是 7 6 5 4 3 2 1 0 。这个位权也叫做次幂,那么最高位就是2的7次幂,2的6次幂等等。二进制数的运算每次都会以2为底,这个2指的就是基数,那么十进制的基数也就是10。在任何情况下位权的值都是 数的位数 -1,那么第一位的位权就是 1 -1 =0,第二位的位权就是 2 -1=1,依次类推
其他进制转换的可参考我以前的博客:
跟十进制一样,二进制也能加减乘除,只要注意逢2进位即可。二进制的运算,也是计算机程序所特有的运算,因此了解二进制的运算必须要掌握
移位运算是指将二进制的数值的各个位置上的元素左移和右移操作
移位过程图:
上述例子还是以39为例,我们先把十进制的39转换为二进制的 0010 0111,然后 向左移位 << 一个字节,也就变成了 0100 1110 ,那么再把此二进制数转换为十进制数就是上面的78,十进制的78竟然是十进制的39的2倍关系。在让 0010 0111左移两位,也就是 1001 1100,得出来的值是156,相当于扩大了四倍
因此可以得出结论,左移相当于是数值扩大的操作
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。