计算机底层是一堆电路,一个电路只有2种状态:通和不通。N个电路就可以有2的N次方个状态的组合,计算机最终处理的都是二进制的信号。
计算机中一个电子元件的状态是1bit(通或不通,只能存储0或1,计算机中最小的存储单位),而人设的规定存储信息的最小单元是一个字节(1byte,即 8 个 bit)。
为了方便计算机和人类信息传递,出现了不同层次的语言(一系列规则):
1、机器语言:每一条机器指令都是二进制形式的指令代码,计算机硬件可以直接识别。高级语言程序通常也需要翻译成汇编语言程序,再进一步翻译成机器语言代码。机器指令代码是被烙印在硬件上的,写死的,所以不同厂商会有不同的指令编码集。
2、汇编语言:是为了便于理解与记忆,将机器指令用助记符代替而形成的一种语言。汇编语言的语句通常与机器指令对应,因此,汇编语言与具体的计算机有关,属于低级语言。
3、高级语言:与具体的计算机硬件无关,其表达方式接近于所描述的问题,易为人们接受和掌握,用高级语言编写程序要比低级语言容易得多,并大大简化了程序的编制和调试,使编程效率得到大幅度的提高。
我们平时算数都是10进制的(即满10进一,如11+9=20,1+9=10),而二进制是满2进1(如01+1=10;11+1=100)
二进制的加减乘除
“+”:有四种情况:0+1=1;1+1=10;1+0=1;0+0=0;也就是逢2进1。
“-”:0-0=0;1-0=1;10-1=01;1-1=0;不满借一
“*”:0*0=0;1*0=0;0*1=0;1*1=1;
“/”:0/1=0;1/1=1;
二进制的原码,反码,补码。
原码就是:十进制数转换成二进制变成的二进制数或者可以说待处理的二进制数都可一说成原码。
反码:就是原码所有取反(1变0,0变1);
补码:就是反码加一。(补码就是负数在计算机中的二进制表示方法)。
转载原文:https://blog.csdn.net/windanchaos/article/details/82564216
http://www.cnblogs.com/BlueSee/p/7245255.html