Board logo

标题: 十六进制码的00与20有什么区别? [打印本页]

作者: ZJHJ     时间: 2010-5-31 22:11    标题: 十六进制码的00与20有什么区别?

如题。如果将00换成20,解密出是空格符。如果将20换成00,解密出也是空格符。问题是:00与20有什么本质的区别?
作者: slore     时间: 2010-5-31 22:13
00 应该断了的

20是空格没错
作者: ZJHJ     时间: 2010-5-31 22:21
没有明白什么是  应该断了的?如果是10组00,解密出是10个空格符。
问题是,一般的文件,不管用什么方法生成十六进都不会出问题。但是,如果用FC对图片或COM,EXE,就不会正确。就会掉00码。

[ Last edited by ZJHJ on 2010-5-31 at 22:33 ]
作者: slore     时间: 2010-5-31 23:05
如果是字符串的话,00就断了……

这个可能是工具的问题吧
作者: ZJHJ     时间: 2010-5-31 23:24
如果是一个EXE文件,用debug,生成十六进制码,可能有连续的几百组00,但是只要你用记事本打开,不管你做什么手脚,再生成十六进制码,就不会再有00了。
真是有点费解?
作者: slore     时间: 2010-6-1 15:13
不太明白。

记事本打开的话,不都是字符了么?

你要改HEX的,还是用UE或者WINHEX改文件啊。
作者: Hanyeguxing     时间: 2010-6-1 16:07


  Quote:
Originally posted by ZJHJ at 2010-5-31 23:24:
如果是一个EXE文件,用debug,生成十六进制码,可能有连续的几百组00,但是只要你用记事本打开,不管你做什么手脚,再生成十六进制码,就不会再有00了。
真是有点费解?

1,因为记事本主要是处理标准可打印字符的,20空格就是其中之一,但00空字符是控制符,记事本打开并保存后,会将00转成20。
2,通常含有大量00的文件也不该使用记事本打开。

[ Last edited by Hanyeguxing on 2010-6-1 at 18:29 ]