-
-
[旧帖]
[原创]初学C语言笔记之[一]……
0.00雪花
-
发表于:
2013-4-24 21:06
3955
-
[旧帖] [原创]初学C语言笔记之[一]……
0.00雪花
首先,就在此谢谢大家了……本人没什么本事,只是把刚学到的东西整理成笔记。
方便日后,以及其他跟我一样程度的人。
====[ 0x110 简单介绍下register
简单的来说,register就是当系统运行机器码时,负责管理那些系统的暂时性变数,或者是负责“导入”源文件。
在此列下:
EAX = Accumulator register
ECX = Counter register
EDX = Data register
EBX = Base register
还有些比较特殊的有ESP, EBP, ESI 和 EDI。虽然有的时候,它们被叫成了pointer,但是技术上还是被归类为register。主要的功能还是差不了多少,都是负责指向系统要读取还是写入的文件。
ESP = Stack register
EBP = Base pointer
ESI = Source index
EDI = Destination index
EIP = Intruction pointer === 比较特殊,负责指向目前执行的机器码指令
EFLAGS register === 标记一个指令的状况((包含状态旗标比如进位、溢出、结果为零,等等
每个暂存器(register)都有各自不同的功能,例如ECX可以被用来作loop指令的计数器那样
----[ 0x120 通过简单的helloworld程序深入了解register
作为一个程序员,我们大可以只着重于代码整洁,思路啊,结构就行了。但是作为一个黑客,逆向破解爱好者,我们必须从底层下手,深入了解程序的运作方式,这就是其魅力之所在。
现在,这里是一个C语言写的helloworld程序,功能就是打印10行hello, world!
[招生]科锐逆向工程师培训(2024年11月15日实地,远程教学同时开班, 第51期)