-
Notifications
You must be signed in to change notification settings - Fork 0
20201205关于encoding.binary hex json的探讨
ziyouzy edited this page Dec 5, 2020
·
1 revision
这里需要注意的是,int之类的其实机器是没法读懂的,只是为了提高变成效率,而为程序员准备的一种“临时状态”,而各种ide以及开发环境的“编译”事件,就是为了将所由这些“临时状态”统一转化为“二进制大端序协议”从而让机器读懂,从而让机器可以直接运行你的程序
想到这里就可以明白,physiaclnode结构体虽然接近底层,但是在逻辑上其内部的字段应该存在各个已经实现转换的数据类型,比如string DI1这些,因为通过socket拿到一个“二进制大端序协议字节序"后,第一件事就是应该将他转化成上面所说的“临时状态”,从而方便之后的编程操作,physicalnode的意义只在于拿到无状态的节点信息,同时也应该为后续的操作准备好各个不同的“临时状态”,如int64形式的时间戳,string形式的诸如DO1这样的节点值
接下来再去聊聊hex包,或者说是十六进制协议,16进制数其实本质上也是不能被计算机读取的,或者说,不能被计算机的cpu读取,但是他在编程世界的地位也是一种“临时状态”,同时他也是整形(int)的一种子类型。
src := []byte("abc123")
https://www.cnblogs.com/dzhy/p/10936926.html
func main() {
str := "test笃志弘毅"
for i := 0; i < len(str); i++ {
fmt.Printf("%v %c,", str[i], str[i])
}
}
//116 t,101 e,115 s,116 t,231 ç,172 ¬,131 �,229 å,191 ¿,151 �,229 å,188 ¼,152 �,230 æ,175 ¯,133 �
https://blog.csdn.net/itpika/article/details/94594795