逆向学习 - 进制

版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/qq1119278087/article/details/60508401

本学习过程参考滴水逆向第三期视频

常见进制

  1. 十进制
  2. 二进制
  3. 十六进制
    上面是最常见的进制。正是因为太常见,以至于打消了我们对它们的质疑。比如,1+1=2,我们都潜移默化的认为它是再正确不过了,但是事实真的是这样的吗?不!这根本不少进制的实质!我们得重新去认识它,质疑它!假如你以前没有背诵过十进制的加法表,十进制的乘法表,你还会做1+1 or 1*1吗?

进制的本质

在这之前我们先来看看进制的定义:

  1. 十进制:由十个符号组成,分别是0 1 2 3 4 5 6 7 8 9 逢十进一
  2. 二进制:由两个符号组成,分别是0 1 逢二进一
  3. 八进制:由八个符号组成,分别是0 1 2 3 4 5 6 7 逢八进一
    。。。
  4. N进制:?

    这些都是我们学过的,已经根深蒂固的装在我们的脑袋里了,但是万一有一天,这些规则被打破了呢?例如

    十进制:由十个符号组成,分别是9 1 5 3 6 0 2 4 7 8 逢十进一
    你还会做加法吗?知道这些符号代表的含义吗?
    如果把这些符号改成图片呢?

    因此进制的本质,个人理解:

N进制是:由N个符号组成,这N个符号可以被任意符号来表示,逢N进一
如果这个定义被人广泛的使用,比如十进制,那它就是一种通用的语言。
如果这个定义只有少部分人知道和使用,这就是加密!

计算机为啥采用二进制

1.二进制已经足够了
2.受硬件的制约–高电平,低电平

数学计算

还记得小时后老师,父母逼着你背诵加法表,乘法表吗?现在回想一下你在计算1+1的时候,你脑袋里为啥会出现2?因为你脑袋里已经由那张加法表了!乘法也是同样的。做计算的本质就是去查表!

计算机呢?我们这样聪明的人类都是如此,计算机同样如此,只是它查表的速度非常快!

运算的本质就是查表
不管多么复杂的计算,只需要查表即可!

加法表:
加法表

乘法表:
乘法表

那么你是否想过,加法表和乘法表是怎么来的呢?
当然也是查表!

初始符号表:
原始表

比如:
2+8

1.在初始符号表中查 2
2.从2开始向后查8个数 即为所求结果

于是为了计算方便,我们在初始表的基础上做出来了加法表,这样我们能在加法表中直接定位到2+8,提高了加法的查表效率

5*3

1.拆分5*3 为5+5+5
2.做加法查加法表5+5 结果为10
3.做加法查加法表10 +5 没有
4.换原始表,从10开始向后查5个数 结果为15

可以看出:
任何计算都是通过查表得来的,并且都可以通过查初始符号表得来(不考虑速度or效率)

猜你喜欢

转载自blog.csdn.net/qq1119278087/article/details/60508401