binary - 计算机如何将十进制转换为二进制整数

标签 binary decimal computer-science

这肯定是重复的,但我无法找到以下问题的答案。

让我们考虑十进制整数 14 .我们可以得到它的二进制表示,1110 ,使用例如除以 2 方法(% 表示取模操作数):

14 % 2 = 0
 7 % 2 = 1
 3 % 2 = 1
 1 % 2 = 1

但是计算机如何将十进制转换为二进制整数呢?

上述方法需要计算机执行算术运算,据我所知,因为算术运算是对二进制数执行的,所以我们似乎又要处理同样的问题了。

我想任何其他算法方法都会遇到同样的问题。计算机如何将十进制转换为二进制整数?

更新 : 在与 Code-Apprentice 讨论之后(见他 answer 下的评论),这里是在两个感兴趣的情况下对问题的重新表述:

a) 当用户在键盘上输入整数时,如何进行二进制转换?

b) 给定编程语言中的数学运算,例如 12 / 3 , 程序运行时如何进行十进制到二进制的转换,使计算机可以进行算术运算?

最佳答案

只有二​​进制

计算机将所有数据存储为二进制。它不会从十进制转换为二进制,因为二进制是它的母语。当计算机显示一个数字时,它将从二进制表示转换为任何基数,默认情况下是十进制。

这里要理解的一个关键概念是计算机内部存储与显示器上的字符表示之间的区别。如果您想将一个数字显示为二进制,您可以在代码中编写一个算法来执行您手动执行的确切步骤。然后打印出字符 10由算法计算。

关于binary - 计算机如何将十进制转换为二进制整数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/49033951/

相关文章:

binary - 在 IDA Pro 中编辑(修补)二进制文件

dart - 如何设置Dart小数点后的最小位数?

java - 如果精度值小于标度则填充零

ruby - Ruby 如何允许方法参数默认值从早期参数派生?

javascript - Colorbox 将图像显示为二进制数据

c - 如果一个二进制文件的内容出现在另一个二进制文件中,如何在 C 中搜索?

C++ 文件 (exe) 读取自身

将整数值转换为十六进制值

algorithm - 如何为最长公共(public)子序列 (LCS) 的这种特殊情况找到更快的算法?

computer-science - 如何运行雅典娜 |公鸡 |伊莎贝尔远程编码?