【发布时间】:2014-01-23 04:40:33
【问题描述】:
我想知道是否可以将二进制数据存储在一个数字中,以及如何将尽可能多的二进制数据存储在一个数字中。
例如,假设我想将以下文本存储在一个数字中:
Lorem ipsum dolor sit amet,consectetur adipiscing elit。多内克埃斯塔斯 nunc eget rhoncus blandit。
二进制形式是:
01001100 01101111 01110010 01100101 01101101 00100000 01101001 01110000 01110011 01110101 01101101 00100000 01100100 01101111 01101100 01101111 01110010 00100000 01110011 01101001 01110100 00100000 01100001 01101101 01100101 01110100 0101100 00100000 01100011 01101111 01101110 01110011 01100101 01100011 01110100 01100101 01110100 01110101 01110010 00100000 01100001 01100100 01101001 01110000 01101001 01110011 01100011 01101001 01101110 01100111 00100000 01100101 01101100 01101001 01110100 0101110 00100000 01000100 01101111 01101110 01100101 01100011 00100000 01100101 01100111 01100101 01110011 01110100 01100001 01110011 00100000 01101110 01110101 01101110 01100011 00100000 01100101 01100111 01100101 01110100 00100000 01110010 01101000 01101111 01101110 01100011 01110101 01110011 00100000 01100010 01101100 01100001 01101110 01100100 01101001 01110100 0101110
现在,如果我将其转换为数字,我会得到:2.15146353486 * 10^16
将其转换回二进制是问题所在,我得到00000010。
现在显然我不知道我在这里做什么,所以请理解这不是“为什么这不起作用?”问题,我要问的是,我想做的事情是否可行,如果可以,怎么办?
由于二进制可以转换为 ASCII 或 BASE-64,反之亦然,因此转换为数字并返回应该也可以。毕竟,Base64 基本上是基于 64 的数字系统,而十进制数是基于 10 的系统,而二进制是基于 2 的系统。
任何建议将不胜感激。
【问题讨论】:
-
@OndrejTucny ,我认为这不能回答问题或证明近距离投票是合理的。我知道二进制是什么,我的问题更具体。
-
你的问题表明你有,不幸的是,根本不知道它是如何工作的......另外,顺便说一句。 cmets 不是答案。
-
根据您选择的语言,您将拥有不同的变量类型,它们有自己的上限。超过这些,您将丢失数据,或使程序崩溃。那么,自然而然,数据就会丢失,无法通过反向操作返回。
标签: binary ascii modular-arithmetic number-systems