概要
- 进制
- 单位
- 编码
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])
}