当前在计算机科学中,当我们输入数据(例如字母,数字,符号等)时,会将其转换为二进制并存储在计算机上。因此,所有最多255个8位二进制数都已分配了一些预定义值。
我的问题是:如果生成了一些新符号,并且我想将其存储或表示在计算机上,该怎么办?该二进制数是如何分配的?
答案 0 :(得分:1)
如果生成了一些新符号会发生什么
这取决于谁生成了符号(ITYM字符)。您作为最终用户只能从private use area,see an example分配/选择一个数字(代码点)。
如果需要互操作性,则需要submit the characters to the Unicode consortium。
答案 1 :(得分:0)
这总是发生在unicode中的字符分配中。例如,2019年4月在Unicode v12.0中添加了字符,包括打哈欠的脸,?
(代码点1F971),导盲犬(代码点1F9AE),?
和yo-yo { {1}}(代码点1FA80)。根据您的浏览器和操作系统版本,您可能会或不会将其视为表情符号。
互联网上最常用的编码方案是UTF-8,它是几种Unicode编码之一。
ASCII作为一种编码,为7位,覆盖值0-127。如果尝试将超出该范围的字符解码为ASCII,则错误将取决于实现。例如,“ A”同时以ASCII码(7位)和LATIN1(8位)形式出现,而“¡”仅在LATIN1中出现。在python中,这会产生错误:
?
答案 2 :(得分:0)
您的问题是关于编码和解码(语义/符号到/来自代码/数字)。
这个问题太笼统了。这取决于编码方法。有些是完整的,因此没有地方可以扩展新符号(例如ASCII)。某些预见方法在某种程度上得到了增强和完善(例如Unicode)。
有时,“增强”是在另一个级别上完成的:通常先使用ASCII,然后转义序列或代码(html:Ⓒ
或©
注意:两个不同的符号,也相同/相似符号可能具有不同的编码;或者也可以通过切换代码点平面/字体来实现ASCII转义序列)。有时就像化妆语言一样\copyright
。
所以有很多方法。我只是希望人们能一开始就考虑增强功能,并以可以扩展的方式实施标准/惯例/协议。