当前的计算机系统,如Window ,Linux,Mac 基本都是基于冯诺依曼的驱动架构设计的。
输入设备先输入公式,给运算器,运算器先算 先算2*5 ,临时放在CPU内部寄存器中,寄存器不够用的时候会把数据放入内存中。我们可以要把算出来的结果持久化到外部存储器方便以后看。 控制器协调各个组件的工作。
内存可以放高电位和低电位,存储的其实就是可以代表1和0的电。
还有非门电路。大概感觉一下,内存的物理逻辑即可。
计算机的电路 由 逻辑门电路组成。一个逻辑门电路可以看成为一个开关,每个开关的状态是“开” 则 高电位 对应 1 或者 “关” 则 低电位 对应 0 , 那么1和0 刚刚好用二进制数来表示:
每个位只能取1和0 ,称为 one 个 bit ,简写 b。
8个二进制位称为 一个字节 byte ,简写 B
1024个byte = 1KB,1024KB=1MB .... GB,TB 如此1024下去,也就是开始 的bit和byte是8个关系,后面就开始1024的倍数,往后开展了。
不要小瞧1和0 ,以2为底,2的N个次幂 这样的形式,足以表示并且传播非常多的信息。
比如:8个连续的0或1 ,即一个字节,就可以来表示一个字母,数字或者标点符号,如:00100000表示空格,用01100001表示字母a, 加个1可以表示b —— 01100010,再加个1就可以表示c —— 01100011....如此下去,这8个bit的组合可以表示2^8次方 即 256个不同的组合;而阿拉伯数字才10个 + english 中的 大小写字母 46个 + 各种标点符号 即整个ASCII编码方案,也够这8个数来表示。所以ASCII码可以表示的字符数量是多少个? 256个,截至1986年一共定义了128个字符。01可以表示字符,那么一篇论文肯定也是可以用01来表示出来。
01 除了可以表示文字,还可以表示图片,视频和甚至是可执行的程序。
图片:图片由像素构成,像素就是一个点,这个点如何描述呢?描述就是描述这个点的颜色,人眼就识别几十万种颜色,我们就可以用一个32位的数据来表示一个颜色妥妥够了,32bit = 4byte的大小的数据,2的32次方很大了,比如 #000000 黑 这样的,一个像素点就是一个颜色,一个图片就是由无数的像素点组成,一个像素点可以用01串表示,所以,整个图片也可以用01串表示 ; 同理视频就也可以用图像来表示, 1秒种刷新30+次的图片即可。程序就是可执行的指令,就是代码字符串,高级转汇编,汇编再转01串,让计算机执行。
- 进制转换:
K进制 转 10进制 :
n+1位的K进制 :
An .... A2A1A0 ==>An*K^N + .....+ A1*K^1+A0*K^0
数本质就是数,就是它自己,它没有进制之分;只是人类对它描述的形式,有进制之分。比如 “十六” 这个数,10进制就写成16,16进制就写F 。
- 短除法 转N进制:
如:十进制转二进制
K 进制的小数:
(0.15)十进制表示 = 1*10^-1次方 + 5*10^-2次方 = (0.1)*1 + (0.01)*5
十六进制 : 0-9 之前没什么特殊的,从10开始用A,B,C,D,E,F表示,A10,B11,C12,D13,E,14,F15
十六进制的单字节,F在计算机中 1111就可以完成表示,所以4个bit就可以了。 8 - 1000,3 - 0011 ,F -1111 这三个常用的记住,以提高对16进制的敏感度。