汇编语言学习
文章平均质量分 53
jiangyuanfu
这个作者很懒,什么都没留下…
展开
-
org指令
伪指令org用来规定目标程序存放单元的偏移量。比如,如果在源程序的第一条指令前用了如下指令: org 200h 那么,汇编程序会把指令指针的ip的值设成200h,即目标程序的第一个字节放在200h处,后面的 内容则顺序存放,除非遇上另一个org 语句原创 2009-07-27 18:41:00 · 1079 阅读 · 0 评论 -
80x86汇编指令详解
80x86指令系统,指令按功能可分为以下七个部分。 (1) 数据传送指令。 (2) 算术运算指令。 (3) 逻辑运算指令。 (4) 串操作指令。 (5) 控制转移指令。 (6) 处理器控制指令。 (7) 保护方式指令。 3.3.1数据传送指令 数据传送指令包括:通用数据传送指令、地址传送指令、标志寄存器传送指令、符号扩展指令、扩展传送指令等。 一、通用数据传送指令 1 传送指原创 2009-07-28 12:28:00 · 1440 阅读 · 0 评论 -
如何用汇编语言定义数据结构
1.数据对齐原创 2009-07-29 13:05:00 · 3034 阅读 · 1 评论 -
反汇编深入分析函数调用
函数:int fun(int a, int b) { char var[128] = "A"; a = 0x4455; b = 0x6677; return a + b;}int main() { fun(0x8899,0x1100); return 0;}F11跟踪到fun,alt+8看反汇编代码:00401078转载 2009-07-30 17:52:00 · 1024 阅读 · 0 评论 -
软件破解
下面谈到了一些在学习解密过程中经常遇到的问题,本人根据自己的经验简单给大家谈一谈。这些问题对于初学者来说常常是很需要搞明白的,根据我自己的学习经历,如果你直接照着很多破解教程去学习的话,多半都会把自己搞得满头的雾水,因为有很多的概念要么自己不是很清楚,要么根本就不知道是怎么一回事,所以希望通过下面的讨论给大家一定的帮助: 1. 断点 所谓断点就是程序被中断的地方,这个词对于解密者来说转载 2009-08-03 13:00:00 · 532 阅读 · 0 评论 -
__cdecl?__fastcall与?__stdcall
__cdecl?__fastcall与?__stdcall调用约定:__cdecl __fastcall与 __stdcall,三者都是调用约定(Calling convention),它决定以下内容:1)函数参数的压栈顺序,2)由调用者还是被调用者把参数弹出栈,3)以及产生函数修饰名的方法。1、__stdcall调用约定:函数的参数自右向左通过栈传递,被调用的函数在返回前清理传送参数的内转载 2009-07-31 12:51:00 · 348 阅读 · 0 评论 -
80X86寄存器介绍
80X86寄存器介绍 32位CPU所含有的寄存器有:4个数据寄存器(EAX、EBX、ECX和EDX)2个变址和指针寄存器(ESI和EDI) 2个指针寄存器(ESP和EBP)6个段寄存器(ES、CS、SS、DS、FS和GS)1个指令指针寄存器(EIP) 1个标志寄存器(EFlags)1、数据寄存器数据寄存器主要用来保存操作数和运算结果等信息,从而节省读取操作数所需占用总线和访问存储器的时间。3原创 2009-08-05 17:55:00 · 633 阅读 · 0 评论 -
汇编指令与机器码地相互转换
机器语言我们只要重点理解一下几个概念:1. 机器语言指令有操作码(OP)和地址码两部分组成 |_____________OP_______________|__d__|__w__||_____________OP_______________|__s__|__w__| 在多数操作码中,常使用某些位来指示某些信息:如图上结构里的: w=1 时 对字来操作w=0 时 对字节来操作d原创 2009-08-17 17:52:00 · 1871 阅读 · 0 评论