go的底层是汇编语言,利用汇编来实现不同平台,不同cpu的实现。 简单做个测试。 拷贝汇编的indexbyte到项目,顺呗拷贝一份go的申明,假如这个文件是cgo ![image.png](https://static.studygolang.com/190412/ccb1903953f96700e7f7595051611720.png) 在项目中使用cgo中的indexbyte ![image.png](https://static.studygolang.com/190412/c2fc55e0008cba2cf4e2d4f7a3094fb2.png) 你会发现,他进入了汇编语言 ![image.png](https://static.studygolang.com/190412/80fdb56c211fc096203586261483c447.png) 顺便放上第一版的go,确实是c实现的编译。发展到后面go自己用汇编实现 ![image.png](https://static.studygolang.com/190412/1fc8e134f6e7262f58902b78265f37ed.png) cgo是另一回事,go可以直接调用c的代码 最后安利一个自己写的golang游戏服务器,分布式,mmo,长连接 https://github.com/bobohume/gonet