![](https://img-blog.csdnimg.cn/20201014180756926.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
汇编语言
jimette
无论赞许还是否认生活总是自己过
展开
-
lea和offset的区别
LEA BX BUFFER”在实际执行时才会将buffer的地址放入bx 而“MOV BX, OFFSET BUFFER 在编译时就已经计算出buffer的地址为4300(假设), 然后将上句替换为: mov bx,4300 LEA是传送地址的 OFFSET是传送偏移地址 例如: LEA DS 2000H OFFSET BI 200H MOV BX,DS+BI PUS原创 2013-01-07 14:59:34 · 5462 阅读 · 0 评论 -
举例说明在汇编语言中,"[]"的用法
1、push dword ptr [024c1100] 压栈024c1100值的双字 2、cmp eax,[ebp+14] eax-ebp+14的有效值,不保留值,主要看标志位 3、cmp byte ptr [eax],46 字节型eax-46,看标志位 4、lea eax,[edx-02] 把edx-02的有效值(一个地址值)给eax 5、mov ecx,[edx+08] edx+8值作转载 2013-01-07 16:03:35 · 588 阅读 · 0 评论 -
[]
以c++反汇编为例 35: int a[2]={1,4}; 0104159E C7 45 F4 01 00 00 00 mov dword ptr [a],1 //把1放入a所在内存单元 a表示地址 010415A5 C7 45 F8 02 00 00 00 mov dword ptr [ebp-8],4 36: int *p = &a[1]原创 2013-01-07 15:59:16 · 412 阅读 · 0 评论