二进制值如何分配给新符号?

时间:2019-09-23 19:31:31

标签: unicode encoding character-encoding binary ascii

当前在计算机科学中,当我们输入数据(例如字母,数字,符号等)时,会将其转换为二进制并存储在计算机上。因此,所有最多255个8位二进制数都已分配了一些预定义值。

我的问题是:如果生成了一些新符号,并且我想将其存储或表示在计算机上,该怎么办?该二进制数是如何分配的?

3 个答案:

答案 0 :(得分:1)

  

如果生成了一些新符号会发生什么

这取决于谁生成了符号(ITYM字符)。您作为最终用户只能从private use areasee an example分配/选择一个数字(代码点)。

如果需要互操作性,则需要submit the characters to the Unicode consortium

答案 1 :(得分:0)

Unicode

这总是发生在unicode中的字符分配中。例如,2019年4月在Unicode v12.0中添加了字符,包括打哈欠的脸,?(代码点1F971),导盲犬(代码点1F9AE),?和yo-yo { {1}}(代码点1FA80)。根据您的浏览器和操作系统版本,您可能会或不会将其视为表情符号。

互联网上最常用的编码方案是UTF-8,它是几种Unicode编码之一。

ASCII

ASCII作为一种编码,为7位,覆盖值0-127。如果尝试将超出该范围的字符解码为ASCII,则错误将取决于实现。例如,“ A”同时以ASCII码(7位)和LATIN1(8位)形式出现,而“¡”仅在LATIN1中出现。在python中,这会产生错误:

?

答案 2 :(得分:0)

您的问题是关于编码和解码(语义/符号到/来自代码/数字)。

这个问题太笼统了。这取决于编码方法。有些是完整的,因此没有地方可以扩展新符号(例如ASCII)。某些预见方法在某种程度上得到了增强和完善(例如Unicode)。

有时,“增强”是在另一个级别上完成的:通常先使用ASCII,然后转义序列或代码(html:Ⓒ©注意:两个不同的符号,也相同/相似符号可能具有不同的编码;或者也可以通过切换代码点平面/字体来实现ASCII转义序列)。有时就像化妆语言一样\copyright

所以有很多方法。我只是希望人们能一开始就考虑增强功能,并以可以扩展的方式实施标准/惯例/协议。