三进制很简单,但要把它变成一个标准体系,需要会排列分子的人。
二进制同样简单,0与1而已,只不过在计算机应用领域傻瓜化的同时,背后的运算急剧的复杂化了。
需要存储调用的固定模块资料,越来越多,越来越臃肿了。
WIN视窗之前,网吧里玩游戏,在DOS环境下,想打哪个游戏,DIR看一下游戏名单,输入1,2,3,4等不同名字的字符,然后回车,C&C沙丘,红警,仙剑一类的游戏就运行了。
这就是批处理,123等字符后面,是BAT处理程序,指向的是EXE后缀的可执行文件。
DOS就是程序规则手册,规定CD空格,DELTREE,DIR等等命令,规定拓展名EXE,BAT各为什么文件,如何编译打开与调用执行。
C语言是编译规则,朝上解释机器码运行规则的同时,朝下给DOS画了一个圈,规定了DOS这类程序规则手册,要用什么规则来写。
无论是硬盘上的WIN程序包调用运行规则,软盘内存上的DOS规则,还是在ROMBASIC的内存环境下的规则,执行的都是上一级规则。
核心的规则就是0与1的二进制,早期程序员要戳纸带,让计算机吃条子的。一个眼是0,两个排列在一起的眼是00,分开的是01,三个就是000。
尽管只有两个数字,但可以代表一切,批处理一切命令。
比如显示画面,计算机是认不出图形图像的,屏幕上是一横一纵无数的点构成的。
程序决定的是哪行,哪纵,哪个点,用哪个颜色,多长时间显示一次。
早期图像模糊,分辨率低,就是横少,纵少,点少,显示的慢。
一个计算器上面的小液晶屏,就是无数的点。
一个俄罗斯方块,就是大像素包裹小像素。
一个吃豆子的游戏,就是程序带动的无数方块形的像素。
等横纵多了,点的密度大了,色彩多了,扫描的快了,电脑就可以播放日本AV了。
即便色彩,也是一个单独的色彩存储包,无数的色彩存在包里,是用简单的0与1字符组成的调用程序,去分别调用出来。
一个个存储包,就是不同的衣服,就放在桑拿换衣服的衣柜里,人就是调用程序。
人与衣服与存衣服的柜子加在一起,就叫数据库。衣柜的钥匙,就是调用命令。
各种语言纷纷扰扰,各类数据库多如牛毛,APP始终不少。
以架构论,0与1的二进制法则,控制了C一类的编译规则,C控制了DOS一类的命令包,DOS控制了操作系统的调度规则。
操作系统的调度法则,规定了PC端程序与手机APP可以在多大的圈子里活动。
硬件运行法则与软件运行环境的对接,就是计算机各类标准的生成地。
软件再好,硬件不响应。
硬件一毫米八万个晶体管,软件就调八个,气死你。
或者瞬间调用八万个管一起工作,烧了你。
究其本质,0与1是标准源体,一切下层标准皆由此来。
0与1是法则,任外界纷扰,多少程序与应用辉煌或是毁灭,0与1始终不变。
越是本质的东西越简单,最复杂的密码,还是如何排列0与1的问题。
穷举到两种排列为极限,就是局限式思维,是低级密码,。
0与1不单可以排列成01或10,它还有000,010,0111等无数选择,2个数就是无穷。
这也是二战德国迷式密码机的算子理论。
最难破译的密码,反而是对照密码。一本论语或圣经,一本0至9十个数字的对照表,拿不到圣经,就无法破译,只能做填字游戏。
通过大量收集数据,作对照剔除分析。找出多次出现的相同字眼,指向的同等对象,一旦对准,就找到了一个字,一个字一个字的做填空题。
为了加快填字的速度,大英帝国战争部要在报纸上刊印填字游戏,做一个批处理隐瞒掉真实的破译目的。把每一个英国人当成晶体管,一起做填字游戏,一起运算。
图灵的计算机之所以发明出来,不是为了造福人类,就是为了加快做填空题的速度,加快破译纳粹德国密码的速度。
象形文字与日本二战密码被破译,就是用这种方法。
美军密码破译部门,通过监听日本无线电通讯,试发蜜罐式响应通讯,锁定了AF两个字的对照秘本,就锁定了中途岛。
现实世界只要是可以无限试探响应,就没有什么密码是可以保密的。
比如通讯卫星,数据加密不加密,对大众是秘密,对密码破译部门来讲如果是秘密,部门还有存在的价值么?
特别是可以无限响应的网银,全世界的网络银行,没有一家存在所谓的密码安全。
数字加密就是排列0与1,指纹虹膜就是圣经与0到9的比对。
指纹是唯一的不假,收集全世界的指纹库,一扫不就出来了。
运算量加大之后,指纹库都不需要,设定与扫描指纹输入设备同样的分辨率,穷举点的排列组合就可以了。
指纹与虹膜加密,比古老的密码对照本更容易破解。
本质又会回到0与1。
变的是方式,不变的是本质。