2014-02-16 65 views
0

我正在开发基于Windows CE 6.0内核的自己的嵌入式操作系统,我已经生成了我的操作系统运行时映像并将其上传到仿真器,然后我开发了一个应用程序以立即与操作系统一起启动,并且我已经使用注册表来启动它在project.reg文件我必须声明的过程启动和依赖:为什么要在“reginit.ini”中声明HEX而不是DECIMAL?

“Launch99”=”MyApp.exe” 
“Depend99”=hex:3C,00 

当我在“reginit.ini”文件仰望我发现:

“Launch20”=”device.dll” 
“Launch30”=”gwes.dll” 
“Depend30”=hex:14,00 
“Launch50”=”explorer.exe” 
“Depend50”=hex:14,00,1E,00 
“Launch60”=”servicesStart.exe” 
“Depend60”=hex:14,00 
“Launch99”=”MyApp.exe” 
“Depend99”=hex:3C,00 

那很好,但我的问题是基本的:为什么我应该用HEX值而不是DECIMAL声明依赖性?

+0

因为这就是他们设计的方式吗?你想在这里解决什么问题? –

+0

http://blog.stackoverflow.com/2011/12/dont-be-afraid-to-use-the-science/ –

+0

@JonathonReinhart是的,但我的好奇心扩大,我必须问这些问题,这是基本的是的,但有一个原因,我知道这不会是一个交易,但我喜欢知道为什么!这简直就是兄弟! – Bouzenzel

回答

0

通常,hex values优于decimal values,因为从十六进制转换为二进制包含的计算量少于从decimal转换的计算量。

您可以看到,为便于内存访问,所有地址都优选为十六进制值。这是因为它们简洁,可以表示为字节级别。由于几乎所有的数据,命令和地址传输以及寄存器都是以字节为单位的,所以这是首选。

十六进制值简化了程序员大量的表示。因此,十六进制位于首选项的首选列表中。它已成为一个不成文的规则/规范,我们将尽可能使用十六进制值。因此,一切都是基于此设计的,其中包括Dependxx的格式reginit.ini

+0

thats clear boss,thank you ... :) – Bouzenzel

相关问题