gpt4 book ai didi

encoding - 机器语言、二进制代码和二进制文件之间的区别

转载 作者:行者123 更新时间:2023-12-02 16:34:27 25 4
gpt4 key购买 nike

我正在学习编程,在许多来源中我看到了这些概念:“机器语言”、“二进制代码”和“二进制文件”。我不清楚这三者之间的区别,因为根据我的理解,机器语言意味着计算机可以理解的原始语言,即 0 和 1 的序列。

现在,如果机器语言是 0 和 1 的序列,而二进制代码也是 0 和 1 的序列,那么机器语言 = 二进制代码

二进制文件呢?什么是真正的二进制文件?对我来说,“二进制文件”这个词意味着一个由二进制代码组成的文件。例如,如果我的文件是:

010010101010010
010010100110100
010101100111010
010101010101011
010101010100101
010101010010111

这是一个二进制文件吗?如果我搜索二进制文件并看到 Wikipedia我看到这个二进制文件的示例图片,这让我很困惑(它不是二进制文件?...)

Hex image

我的困惑发生在哪里?我在这里混合文件编码还是什么?如果我让一个人告诉我什么是机器语言、二进制代码和二进制文件,它们会是什么? =) 我想这种区别对我来说太抽象了。

感谢您的帮助! =)

更新:

例如,在Python中,文件I/O中有一个短语tutorial ,我不明白:打开仅以二进制格式读取的文件。以二进制格式读取文件意味着什么?

最佳答案

机器代码和二进制是相同的 - 以 2 为基数的数字系统 - 1 或 0。 但是机器代码也可以用十六进制格式表示(十六进制) - a以 16 为基数的数字系统。二进制系统和十六进制彼此之间非常相关,很容易从二进制转换为十六进制以及从十六进制转换回二进制。而且由于十六进制比二进制更具可读性和实用性 - 它经常被使用和显示。例如,在您的问题中的上图中 - 使用十六进制数字!

假设您有二进制序列 1001111000001010 - 通过分组可以轻松地将其转换为十六进制 - 每个 block 由四位组成。

 1001 1110 0000 1010 => 9  14 0 10 which in hex becomes: 9E0A. 

人们可以同意 9E0A 比二进制文件更具可读性 - 而十六进制就是您在图像中看到的内容。

关于encoding - 机器语言、二进制代码和二进制文件之间的区别,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21571709/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com