首页
社区
课程
招聘
[求助]汇编语言中进转表示中的疑问
发表于: 2008-1-23 11:54 4777

[求助]汇编语言中进转表示中的疑问

2008-1-23 11:54
4777
.radix 16

mov eax,10D
mov ebx,10B

以上代码中,我在数字后面加的符号是想表示十进制10,和二进制10,可是编译后,用OD反汇编,他却表示十六进制的10D和10B,后面的符号被当做了数字的一部分。这是为什么,我用的是RadAsm写的Win32程序。

[培训]内核驱动高级班,冲击BAT一流互联网大厂工作,每周日13:00-18:00直播授课

收藏
免费 0
支持
分享
最新回复 (9)
雪    币: 202
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
2
怎么就没人理俺呢,俺的问题太白痴了吗?
2008-1-23 14:02
0
雪    币: 2384
活跃值: (766)
能力值: (RANK:410 )
在线值:
发帖
回帖
粉丝
3
.radix 16这一句不要。
2008-1-23 14:09
0
雪    币: 202
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
4
俺就是想明白,不去.radix 16的情况下,如何表示十进制数
2008-1-23 14:13
0
雪    币: 2384
活跃值: (766)
能力值: (RANK:410 )
在线值:
发帖
回帖
粉丝
5
不去.radix 16好像没办法使用其他进制,因为你这一句已经告诉了编辑器默认使用16进制了。
不过,我觉得还是去掉这一句比较好,起码数据使用比较灵活。
2008-1-23 14:24
0
雪    币: 202
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
6
.radix 2
mov eax,10D
mov ebx,10H

就可以正常编译成十进制的10和十六进制的10



.radix 16

mov eax,10D
mov ebx,10B

就不可以编译成十进制的10和二进制的10,是不是很奇怪
2008-1-23 17:05
0
雪    币: 202
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
7
.radix 2
mov eax,10D
mov ebx,10H

就可以正常编译成十进制的10和十六进制的10



.radix 16

mov eax,10D
mov ebx,10B

就不可以编译成十进制的10和二进制的10,是不是很奇怪
2008-1-23 17:05
0
雪    币: 2384
活跃值: (766)
能力值: (RANK:410 )
在线值:
发帖
回帖
粉丝
8
这是当然的,16进制已经是最高的进制了,10进制以下的进制都包含在16进制内了,所以已经不需要用h、d、b之类后缀表示了,所以无效。而10进制以下的还有比他们高的进制,所以可以用h、b之类的后缀表示比默认的高的进制。
2008-1-23 23:17
0
雪    币: 486
活跃值: (13)
能力值: ( LV9,RANK:430 )
在线值:
发帖
回帖
粉丝
9
是优先级问题,如果缺少情况下为十六进制数的话,那么编译器首先会认为一个数是十六进制数然后才是其它进制数。这就是说,如果一个数为合法的十六进制形式,那么编译器就会把它当作一个十六进制数。
2008-1-24 01:43
0
雪    币: 202
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
10
在缺省是十六进制情况下,有没有办法表示十进制数和二进制数呢?
2008-1-24 08:52
0
游客
登录 | 注册 方可回帖
返回
//