看雪学院-解密入门教学(二)笔记

本文是看雪学院解密教学的笔记,重点介绍了80x86汇编语言中的寄存器,包括通用寄存器EAX、EBX、ECX、EDX等的用途,以及堆栈指针ESP、基址指针EBP的作用。讲解了如何在内存寻址和API调用中利用堆栈,同时提到了EIP指令指针寄存器和FLAGS标志寄存器的重要性和常用汇编指令。
摘要由CSDN通过智能技术生成

解密入门教学(二)— 看雪学院

原作地址:http://mp.weixin.qq.com/s?__biz=MjM5NTc2MDYxMw==&mid=2458281884&idx=2&sn=786b29f538d74709508f4e7d4cdfcd6e&chksm=b181571686f6de00563e5af53ba8447c040ace84c494da2016f7686a47d24e10517c0a8e383f&mpshare=1&scene=23&srcid=0203P1jr9XSOUQT2dMJekJVN#rd

 

一个二进制位 ~ 一位

八位 ~ 一个字节

在内存中,以字节为单位存储信息。每一个字节单元给以一个唯一的存储器地址(即物理地址)

八个二进制位 ~ 八位 ~ 一个字节 即可表示所有ASCII~ 一个英文字符或数字

十六个二进制位 ~ 十六位~ 两个字节~ 两个内存单元~ 一个汉字

三十二位 ~ 双字

六十四位 ~ 四字

 

需要掌握的十六个寄存器

通用寄存器

八个,分别是EAX EBX ECX EDX ESP EBP EDI ESI

EAX EBX ECX EDX数据寄存器

主要用于暂时存放计算过程中所用的操作数、结果或其他信息。

除直接访问外,还可分别对其高十六位和低十六位进行访问。低十六位就是把它们前面的E去掉,即EAX的低十六位为AX

它们的低十六位又可以分别进行八位访问。即AX还可分为高八位AH和低八位AL

所以,想操作的是一个八位数据:MOV ALMOV AH

  一个十六位数据:MOV AX

一个三十二位数据:MOV EAX

ESP EBP EDI ESI变址寄存器

主要用于在存储器寻址时,提供偏移地址。只能用字来访问。

没看懂的一段:从386以后,所有的寄存器都可以用来存储内存地址。(这里给你讲一个小知识,你在破解的时候是不是看到过[EBX]这样的形式呢?这就是说此时EBX中装的是一个内存地址,而真正要访问的,就是那那个内存单元中所存储的值)。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值