吾爱破解 - 52pojie.cn

 找回密码
 注册[Register]

QQ登录

只需一步,快速开始

查看: 19684|回复: 123
收起左侧

[调试逆向] 逆向基础笔记一 进制篇

    [复制链接]
lyl610abc 发表于 2021-2-27 22:53
本帖最后由 lyl610abc 于 2021-3-12 16:36 编辑

本文为本人的滴水逆向学习笔记之一,为本人对以往所学的回顾和总结,可能会有谬误之处,欢迎大家指出。
陆续将不断有笔记放出,希望能对想要入门的萌新有所帮助,一起进步
其它笔记链接:
逆向基础笔记二 数据宽度和逻辑运算
逆向基础笔记三 通用寄存器和内存读写
逆向基础笔记四 堆栈篇
逆向基础笔记五 标志寄存器
逆向基础笔记六 汇编跳转和比较指令
逆向基础笔记七 堆栈图(重点)
逆向基础笔记八 反汇编分析C语言
逆向基础笔记九 C语言内联汇编和调用协定
逆向基础笔记十 汇编寻找C程序入口
逆向基础笔记十一 汇编C语言基本类型
逆向基础笔记十二 汇编 全局和局部 变量
逆向基础笔记十三 汇编C语言类型转换
逆向基础笔记十四 汇编嵌套if else
逆向基础笔记十五 汇编比较三种循环
逆向基础笔记十六 汇编一维数组
逆向基础笔记十七 汇编二维数组 位移 乘法
逆向基础笔记十八 汇编 结构体和内存对齐
逆向基础笔记十九 汇编switch比较if else
逆向基础笔记二十 汇编 指针(一)
逆向基础笔记二十一 汇编 指针(二)
逆向基础笔记二十二 汇编 指针(三)
逆向基础笔记二十三 汇编 指针(四)
逆向基础笔记二十四 汇编 指针(五) 系列完结

进制

进制的定义

  • 十进制的定义:由十个符号组成,分别是0 1 2 3 4 5 6 7 8 9 逢十进一
  • 九进制的定义:由九个符号组成,分别是0 1 2 3 4 5 6 7 8 逢九进一
  • 十六进制的定义:由十六个符号组成,分别是0 1 2 3 4 5 6 7 8 9 A B C D E F
  • N进制的定义:由N个符号组成 逢N进一

进制的本质

N进制的定义实则为由N个符号组成,逢N进位

这里的符号不一定要是 0 1 2 3 4 ....

也可以自定义

R T Y U I O 等其它符号

符号 R T U I O
含义 0 1 2 3 4

自定义进制的符号可以作为一种加密的手段,给解密者带来麻烦

计算机中数字的形式

计算机中的任何信息,如图片、视频、音乐等等,都是以二进制的形式进行存储的

二进制比较冗长,于是在用进制查看工具如UltraEdit中,是以十六进制来显示数据的

十六进制数与二进制数的对应关系为:一个十六进制数由4位二进制数表示

二进制与十六进制的映射关系(最好记下)

0 1 2 3 4 5 6 7 8 9 A B C D E F
0000 0001 0010 0011 0100 0101 0110 0111 1000 1001 1010 1011 1100 1101 1110 1111

进制的运算

进制运算的本质实际就是根据进制表查表所得

我们平时的十进制是如何运算的?九九乘法表大家肯定都熟稔于心了吧

所谓的九九乘法表其实就是十进制的乘法表,与之相关的还有加法表

十进制加法表

1+1 =2
1+2 =3 2+2 =4
1+3 =4 2+3 =5 3+3 =6
1+4 =5 2+4 =6 3+4 =7 4+4 =8
1+5 =6 2+5 =7 3+5 =8 4+5 =9 5+5 =10
1+6 =7 2+6 =8 3+6 =9 4+6 =10 5+6 =11 6+6 =12
1+7 =8 2+7 =9 3+7 =10 4+7 =11 5+7 =12 6+7 =13 7+7 = 14
1+8 =9 2+8 =10 3+8 =11 4+8 =12 5+8 =13 6+8 =14 7+8 = 15 8+8 = 16
1+9 =10 2+9 =11 3+9 =12 4+9=13 5+9 =14 6+9 =15 7+9 = 16 8+9 = 17 9+9 = 18

十进制乘法表

1*1 =1
1*2 =2 2*2 =4
1*3 =3 2*3 =6 3*3 =9
1*4 =4 2*4 =8 3*4 =12 4*4 =16
1*5 =5 2*5 =10 3*5 =15 4*5 =20 5*5 =25
1*6 =6 2*6 =12 3*6 =18 4*6 =24 5*6 =30 6*6 =36
1*7 =7 2*7 =14 3*7 =21 4*7 =28 5*7 =35 6*7 =42 7*7 = 49
1*8 =8 2*8 =16 3*8 =24 4*8 =32 5*8 =40 6*8 =48 7*8 = 56 8*8 = 64
1*9 =9 2*9 =18 3*9 =27 4*9=36 5*9 =45 6*9 =54 7*9 = 63 8*9 = 72 9*9 = 81

八进制进制表

以下为八进制的0~71,注意最后一行

0 1 2 3 4 5 6 7
10 11 12 13 14 15 16 17
20 21 22 232 4 25 26 27
30 31 32 33 34 35 36 37
40 41 42 43 44 45 46 47
50 51 52 53 54 55 56 57
60 61 62 63 64 65 66 67
70 71 72 73 74 75 76 77
100 101 102 103 104 105 106 107

八进制加法表

1+1 =2
1+2 =3 2+2 =4
1+3 =4 2+3 =5 3+3 =6
1+4 =5 2+4 =6 3+4 =7 4+4 =10
1+5 =6 2+5 =7 3+5 =10 4+5 =11 5+5 =12
1+6 =7 2+6 =10 3+6 =11 4+6 =12 5+6 =13 6+6 =14
1+7 =10 2+7 =11 3+7 =12 4+7 =13 5+7 =14 6+7 =15 7+7 = 16

八进制乘法表

1*1 =1
1*2 =2 2*2 =4
1*3 =3 2*3 =6 3*3 =11
1*4 =4 2*4 =10 3*4 =14 4*4 =20
1*5 =5 2*5 =12 3*5 =17 4*5 =24 5*5 =31
1*6 =6 2*6 =14 3*6 =22 4*6 =30 5*6 =36 6*6 =44
1*7 =7 2*7 =16 3*7 =25 4*7 =34 5*7 =43 6*7 =52 7*7 = 61

对比总结

  • 进制表是根据逢N进位的特点得来的
  • 加法表是由进制表得来的
  • 乘法表则是由加法表得来的(乘法可以转化为加法  例:3*4=3+3+3+3=4+4+4)
例子

计算八进制的3*3=?

首先将乘法转化为加法:3*3=3+3+3(乘法表的由来)

接下来查八进制加法表得到3+3=6

再查八进制加法表得到6+3=11

其中6+3也可以到八进制进制表中找到6,然后往后数3个位置得到11(加法表的由来)

自定义进制符号

让2+3=1成立

自定义十进制符号为:0 2 3 1 8 7 6 9

此时映射关系为

符号 0 2 3 1 8 7 6 9 5 4
含义 0 1 2 3 4 5 6 7 8 9

此时'2'+'3'=1+2=3='1'(‘ ’内为符号,没''的为符号代表的数值)


免费评分

参与人数 55威望 +1 吾爱币 +62 热心值 +49 收起 理由
yiic + 1 谢谢@Thanks!
gingwn + 1 感谢发布原创作品,吾爱破解论坛因你更精彩!
诺风 + 1 + 1 感谢发布原创作品,吾爱破解论坛因你更精彩!
wraxle + 1 + 1 谢谢@Thanks!
zhenkaixin852 + 1 + 1 谢谢@Thanks!
xwl + 1 + 1 厉害了哈哈哈
wm148600 + 1 + 1 谢谢@Thanks!
CoderWang119 + 1 用心讨论,共获提升!
辰辰因人而异 + 1 + 1 感谢发布原创作品,吾爱破解论坛因你更精彩!
zscrzsc + 1 我很赞同!
senur + 1 谢谢@Thanks!
wzyh + 1 我很赞同!
DONWEI + 1 我很赞同!
wha + 1 + 1 感谢楼主分享!
lsieun + 1 + 1 用心讨论,共获提升!
梵星啊 + 1 + 1 谢谢@Thanks!
18581221312 + 1 + 1 谢谢@Thanks!
LDF806 + 1 + 1 鼓励转贴优秀软件安全工具和文档!
sunshinewxg + 1 我很赞同!
尘世过客z + 1 + 1 用心讨论,共获提升!
wuai164 + 1 谢谢@Thanks!
己卯甲戌 + 1 我很赞同!
风中找感觉 + 1 + 1 谢谢@Thanks!
sinnvg + 1 + 1 学习了,笔记整理的非常好。谢谢~~
lcstwp + 1 + 1 谢谢@Thanks!
duanlitao + 1 + 1 我很赞同!
Hmily + 1 + 20 + 1 感谢发布原创作品,吾爱破解论坛因你更精彩!
QRQ + 1 我很赞同!
抱歉、 + 1 用心讨论,共获提升!
neohzw + 1 + 1 用心讨论,共获提升!
love514415 + 1 + 1 谢谢@Thanks!
fanfei + 1 用心讨论,共获提升!
意沙海 + 1 用心讨论,共获提升!
此昵称已被注册 + 1 + 1 我很赞同!
ayukawatenri + 1 + 1 用心讨论,共获提升!
hualala123 + 1 谢谢@Thanks!
Pony21 + 1 + 1 谢谢@Thanks!
cherrytoffee + 1 + 1 打卡纯小白,借笔记抄抄
yangsenhappy + 1 + 1 谢谢@Thanks!
有点低调 + 1 + 1 用心讨论,共获提升!
18780334870 + 1 + 1 感谢发布原创作品,吾爱破解论坛因你更精彩!
在线小学生 + 1 + 1 谢谢@Thanks!
dronw + 1 感谢发布原创作品,吾爱破解论坛因你更精彩!
gerrylin + 1 + 1 难得的好文章
cka890712 + 1 用心讨论,共获提升!
i7777777 + 1 谢谢@Thanks!
火树银花 + 1 + 1 谢谢@Thanks!
科目呵 + 1 + 1 谢谢@Thanks!
xinyangtuina + 1 + 1 谢谢@Thanks!
RedLips彡 + 1 + 1 谢谢@Thanks!
ij1371 + 1 + 1 我很赞同!
nirunyu + 1 + 1 谢谢@Thanks!
minboss + 1 + 1 热心回复!
hanaoran1234 + 1 + 1 我很赞同!
国际豆哥 + 1 + 1 感谢发布原创作品,吾爱破解论坛因你更精彩!

查看全部评分

本帖被以下淘专辑推荐:

发帖前要善用论坛搜索功能,那里可能会有你要找的答案或者已经有人发布过相同内容了,请勿重复发帖。

 楼主| lyl610abc 发表于 2021-3-10 16:51
Hmily 发表于 2021-3-10 16:28
@lyl610abc 这个笔记算是学习别人教程的内容?不是自己原创的内容吧?如果不是就没法加精华了。

笔记是学习别人教程自己总结出来的,加入了很多自己的理解整理而成,但严格上来说不能算作是原创内容,算是读书笔记吧,主要是分享出来和大家一起学习
没法加精华也没关系,能帮助到大家就好
zhanglei1371 发表于 2021-2-27 23:35
 楼主| lyl610abc 发表于 2021-2-27 23:39
zhanglei1371 发表于 2021-2-27 23:35
基础内容太枯燥了。一般人看不下去的

学习笔记可以作为遇到某些问题时查阅的资料,不一定要硬啃,可以结合实例,我后续也会结合实例来联系上这些基础内容
qianshang666 发表于 2021-2-27 22:59
讲解的很详细,感谢楼主的分享
marlborogolo 发表于 2021-2-28 01:53
谢谢楼主分享
绫音 发表于 2021-2-28 08:15
学到了  感谢楼主
绝恋人间 发表于 2021-2-28 09:44

讲解的很详细,感谢楼主的分享
chishingchan 发表于 2021-2-28 10:57
九进制我未听说过,二进制、十进制、十六进制 是计算机常用的,八进制感觉不常用。
nirunyu 发表于 2021-2-28 11:06
感谢大佬分享,准备收藏了,期待后续的分享
领悟AK47king 发表于 2021-2-28 11:09
感谢楼主分享
您需要登录后才可以回帖 登录 | 注册[Register]

本版积分规则

返回列表

RSS订阅|小黑屋|处罚记录|联系我们|吾爱破解 - LCG - LSG ( 京ICP备16042023号 | 京公网安备 11010502030087号 )

GMT+8, 2024-11-21 20:09

Powered by Discuz!

Copyright © 2001-2020, Tencent Cloud.

快速回复 返回顶部 返回列表