能力值:
( LV9,RANK:170 )
|
-
-
2 楼
我来给你扫肓,呵~~~~
1、little-endian 与 big-endian
首先需要弄清两个概念:MSB 与 LSB,也就是“最高有效位”与“最低有效位”
如值:01020304h
-------------------------------
MSB 是 01,LSB 是 04
(1)、little-endian:低位在低内存,高位在高内存。即 LSB 在低地址,MSB 在高地址。
>>>> 如:地址 00410000h 的值 0x01020304 是怎样存放的?
LSB (04)放在 00410000h
MSB (01)放在 00410003h
------------------------------
02 放在 00410002,03 放在 00410001h
(2) big-endian:MSB 在低地址,LSB 在高地址。big-endian 意思是从高位开始排。
>>>> 如:地址 00410000h 的值 0x01020304 是怎样存放的?
LSB (04)放在 00410003h
MSB (01)放在 00410000h
------------------------------
02 放在 00410001,03 放在 00410002h
2、push、mov 指令执行后内存排列就是上述所说的 little-endian 排列
|
能力值:
( LV2,RANK:10 )
|
-
-
3 楼
感谢楼上~不过OD的堆栈,左边高位还是右边是高位呢?~
|
能力值:
( LV9,RANK:170 )
|
-
-
4 楼
不知道,没用过 OD,对 OD 不了解
对破解这行没兴趣
|
能力值:
( LV2,RANK:10 )
|
-
-
5 楼
左边是高位,右边是低位
在 内存 看 刚好相反
|
能力值:
( LV2,RANK:10 )
|
-
-
6 楼
1)就假设我在001200FF这个地址push 01020304h,那么在堆栈中他们是怎么存放的(貌似大顶机),是04这个数在001200FF,还是在0012000C这个地址.push这个指令是先压栈,在减自身?
PUSH是 sp-2 再 入栈
2)那mov呢?~00401000这个地址,mov进01020304,在内存中又是怎么样的?~
00401000 02 01 04 03
3)Od的堆栈,001200FF这一行,从左到右是 001200FF 001200FE 001200FD 001200FC还是反过来
不懂
|
能力值:
( LV2,RANK:10 )
|
-
-
7 楼
汇编学习中最集中的问题,一个是堆栈,一个是中段......
|
能力值:
( LV9,RANK:140 )
|
-
-
8 楼
嘿 ,楼主打击人呢
|
|
|