众所周知计算机的所有计算都是通过 0 ,1 来计算的!也就是说计算机只认识 0 1 两个数字!
那么在计算机的底层是通过什么来表示0,1的呢? 本质是电路,即有电表示1,没电表示0!
如同上面这样!那么计算机又是怎么用0,1来表示我们现在的复杂信息和运算的呢? 我们可以通过上面的灯泡来发明一种灯泡语言!比如我在电脑中安装 3个这样的电路分别排序为123,那么就可以产生一下的排列组合!
亮亮亮 ---》 下
亮亮灭 ---》 班
亮灭灭 ----》后
亮灭亮 ----》一
灭灭亮 ---》 起
灭灭灭 ---》 打
灭亮亮 ----》游
灭亮灭 ----》戏
就这样我通过3组电灯泡的亮和灭来表示了一句话! 上面这个简单的案例就是我们计算机中的“码表”,也就是我们通常熟悉的 GBK,UTF-8等等 那么 我们以此类推!
如果我在计算机中安装 16个这样的电路,我们可以产生多少种排列组合呢?
答案是: 2^16 = 65536 个汉字! 我们常用的汉字只有4000个,通过16组灯泡的亮灭排列组合我们就可以 完成所有想要的交流了!
========================================================================
注意上面我们提到了码表 : 那么什么是乱码呢? 乱码的本质是 我写在计算机里面的数据是用UTF-8的码表来表示的 ,但是我读取的时候是通过GBK来读取的,这就产生了乱码! 为什么呢?
比如:UTF-8 中 亮亮亮 表示 "我" ,但是 GBK 中 亮亮亮 表示 "&" ! 那么我们写进去的是“我”读出来却是“&”所以就产生了乱码!
========================================================================
ALU是计算机的CPU中用来计算的一个组件部分!
注意:我们通常说CPU的速度比内存的速度要快,指的不是“计算速度”而是“数据的读取速度!”
CPU的数据读取速度是指上图中 ALU ---> Registers 中的读取速度!
内存的速度指的是上图中 ALU ----> 内存 中的读取速度!
这两个速度的比值大概可能是 1:100!
========================================================================
具体课程可以学习哔站的:大牛耗时480分钟终于把计算机组成原理、计算机的发展史,CPU电路原理,进程与线程, 编译器屏障与指令屏障,关中断、总线锁、缓存锁,操作系统给大家一次性讲明白了_哔哩哔哩_bilibili
这个课程直接说明白了计算机的组成原理和发展历史!