首页
社区
课程
招聘
DEBUG查看内存有个疑问
发表于: 2009-4-23 00:14 3521

DEBUG查看内存有个疑问

2009-4-23 00:14
3521
-d 1000:0 的时候出现以下信息
1000:0000   72 64 73 20 63 6F 60 60 - 65 6E 74 73 20 28 72 65  
1000:0010   6D 61 72......

一行输出的内容是16个单元的内容,但是第10位却是6D 而不是74 我D1000:15也是第二行的内容,而不是第一行的65 这是为什么10位后的内容难道是没什么意思的吗,只是按16的倍数输出???惑?

我用E命令写入指令,比如偏移到13还是在第一行,查看却在第二行....很无语- -!

[课程]FART 脱壳王!加量不加价!FART作者讲授!

收藏
免费 0
支持
分享
最新回复 (7)
雪    币: 442
活跃值: (43)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
2
首先你要明确这样一条规则

这里面显示的全部是十六进制,我现在假设你懂什么是十六进制,如果不懂请翻阅资料

1000:0010

冒号两边都是16进制,那1000h就是1600d咯,那你所谓的'第十位'10h,其时也就是十进制的16d

每一行从0开始一直到Fh,包括0在内就是16d个数
2009-4-23 06:42
0
雪    币: 201
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
3
不知道我的理解有问题,还是你不知道我说的啥!你的回答让我更迷茫.....

进制之间的转换我还是清楚地,内存信息是以16进制显示我也是清楚地!一行输出16个数我也是清楚的,1000:10--1000:20 之间是10个数是不?但是一行输出的是16个数!10后面的那5个数如何偏移出来?

还是谢谢你
2009-4-23 10:10
0
雪    币: 427
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
4
1000:0010是十六进制,0010换成十进制是16。
2009-4-23 10:26
0
雪    币: 442
活跃值: (43)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
5
[QUOTE=第一次黑;610494]1000:10--1000:20 之间是10个数是不?[[/QUOTE]

上面不是说了,所有数字是十六进制

那1000:10--1000:20 之间是当然是16d个数

单位h=十六进制,d=十进制

十六进制的10是十进制的16

十进制的10是十六进制的A

再看再理解
2009-4-23 13:38
0
雪    币: 201
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
6
完全理解了- -!谢谢!非常感谢!!
2009-4-23 14:01
0
雪    币: 2110
活跃值: (21)
能力值: (RANK:260 )
在线值:
发帖
回帖
粉丝
7
“1000:10--1000:20 之间是10个数”——确实是“10”个数,但不是十进制的“十”,是十六进制的“10”个数。
2009-4-23 14:02
0
雪    币: 2110
活跃值: (21)
能力值: (RANK:260 )
在线值:
发帖
回帖
粉丝
8
写程序时看到10,从来只念做“厶零”,不念做“十”的。

呵呵,我想起看到过一个人的签名是这样写的:

世界上只有10种人:

懂二进制的人 和 不懂二进制的人。
2009-4-23 14:05
0
游客
登录 | 注册 方可回帖
返回
//