我认为key:MetaTag Value:
key:BrandName Value:value
是rune
的别名,因为它应该是hold all valid Unicode code points。目前显然有about 1,114,112 Unicode code points,因此有必要将它们存储在四位或int32
大小的寄存器中,这可以存储最多2,147,483,647的整数。
然而,我有一些关于UTF-8字符和整数的二进制编码的问题。
int32
和rune
都占用了四个字节。如果2147483647是能够以四个字节(四位八位字节)表示的最高整数,为什么它的二进制表示int32
,即31 1'而不是32?它的标志有点保留吗? binary converter I used中可能存在错误,因为-2147483648仍然可以用4个字节表示(因为它仍然能够在{{{{}}中表示。 1}}类型),但它在那里以1111111111111111111111111111111
输出,即33 1& s和31 0'它们明显超出了4字节的容差。那里的故事是什么?int32
之类的' C' (1111111111111111111111111111111110000000000000000000000000000000
,根据unicode to binary table和整数67(也是rune
,根据我使用的binary to decimal转换器..Intuition告诉我,某些位必须是保留给那些信息。哪些?我已经做了相当多的谷歌搜索,但我显然错过了解释这一点的资源,所以请随意解释,比如我是5.请随时纠正术语误用。