C&C++   发布时间:2022-04-03  发布网站:大佬教程  code.js-code.com
大佬教程收集整理的这篇文章主要介绍了c – 二进制文件和操作系统大佬教程大佬觉得挺不错的,现在分享给大家,也给大家做个参考。
我目前正在学习C并且有一些(基本的)我不知道的东西以及我在不同搜索引擎上找不到任何有用的东西.

>因为所有操作系统的可执行程序(Windows / Linux / MaC)都有不同的“二进制格式” – 有什么区别?我的意思是它们都是二进制的,但是除了所有的OS API之外还有什么真的不同吗?
>(Windows)这是一个愚蠢的问题 – 但是所有的应用程序都只是二进制(我的意思是只有0和1)?它们以哪种格式存储? (因为在所有文本编辑器中都没有看到0和1,但主要是不可显示的字符)

最好的祝福,
喇嘛

解决方法

Windows(PE),Linux(ELF),OS / X等(MACH-O)的可执行文件格式往往旨在解决常见问题,因此它们共享共同的@L_673_8@.但是,每个平台都指定了不同的标准,因此即使平台使用相同类型的cpu,这些文件也不会跨平台兼容.

可执行文件格式不仅用于可执行文件,还用于库,它们也包含代码但从不直接由用户运行 – 只加载到内存中以满足直接可执行二进制文件的需要.

可执行文件格式的共同特征:

>一个或多个可执行代码
>一个或多个只读数据块,如文本和数字
>一个或多个读/写数据块
>有关在运行应用程序时将这些块放在内存中的位置的说明
>还需要加载有关哪些库(也是“可执行文件格式”)的说明,以及它们如何连接(链接)到此可执行文件.
>一个或多个表将代码和数据位置映射到描述它们的字符串或id,对链接和调试很有用.

将这些格式与更基本的格式进行比较是很有趣的,例如古老的DOS .com文件,它简单地描述了要在下一个可用位置加载的64K各种“东西”,并且上面列出的@L_673_8@很少.

在这个意义上的二进制用于将它们与以文本格式编写的“源”文件进行比较.二进制格式只是说它们是以非文本方式编码的,并不真正与0和1二进制意义相关.

大佬总结

以上是大佬教程为你收集整理的c – 二进制文件和操作系统全部内容,希望文章能够帮你解决c – 二进制文件和操作系统所遇到的程序开发问题。

如果觉得大佬教程网站内容还不错,欢迎将大佬教程推荐给程序员好友。

本图文内容来源于网友网络收集整理提供,作为学习参考使用,版权属于原作者。
如您有任何意见或建议可联系处理。小编QQ:384754419,请注明来意。