概要
- 进制
- 单位
- 编码
1 进制
计算机的底层本质上都是二进制操作
二进制是满二进一、八进制是满八进一、十进制是满十进一、十六进制是满十六进一
2 单位
- 计算机底层本质都是二进制
- 位,一个二进制位
- 字节,1字节 = 8位
- 千字节,1kb = 1024字节 = 1024 * 8位
- 兆字节,1mb = 1024kb = 1024 * 1024字节 = 1024 * 1024 * 8位
生活中的场景:
- 电脑的内存:64GB
- 硬盘的容量:1TB
3 编码
ascii编码
unicode字符集
utf-8编码(对unicode进行压缩,因为unicode使用4个字节存储,浪费空间,utf-8表示中文时,用的是3个字节)
4 编码示例
package main import "fmt" func main() { // 定义字符串,字符串是以什么形式存在于Go编译器中的?(utf-8编码) name := "Nagase Ren" // 在其他语言中 0:N 1:a 2:g //fmt.Println(name[0]) // 78 //fmt.Println(name[1]) // 97 //fmt.Println(name[2]) // 103 //fmt.Println(name[3]) // 97 name = "苹果" // 苹,下边3个字节才是代表一个中文,因此从0-2。 fmt.Println(name[0]) fmt.Println(name[1]) fmt.Println(name[2]) // 果 fmt.Println(name[3]) fmt.Println(name[4]) fmt.Println(name[5]) }