1、进制表示(以go语言为例)
1)二进制,用b表示,在go语言中没有直接定义二进制变量,不过可以通过byte数组和string搭配使用解决。
fmt.Printf("%b\n", 11) // 以二进制来输出整型的方式,输出结果为1011
2)八进制,用字母o表示,定义变量时前缀为0,x := 012,就表示x是八进制的12,实际上十进制代表10。
fmt.Printf("%o\n", 10) // 以八进制来输出整型的方式,输出结果为12
3)十进制,用d表示,定义变量时没有前缀,x := 123,就表示x是十进制整形123。
fmt.Printf("%d\n", 123) // 以十进制来输出整型的方式,输出结果为123
4)十六进制,用x表示,定义变量时前缀为0x,y := 0x12,就表示y是十六进制的12,实际上十进制代表18。
fmt.Printf("%x\n", 20) // 以十六进制来输出整型的方式,输出结果为14
2、文件权限解读
比如设置某个文件的权限为0644,下面进行解释:
0代表是八进制,转换成二进制就是 110 100 100
6代表该文件的所有者(owner)对该文件的权限为可读可写不可执行(110 <=> rw-)
4代表与文件所有者同一组的用户的权限(group)对该文件的权限仅为可读(100 <=> r--)
4代表不与文件所有者同一组的其他用户的权限(other)对该文件的权限仅为可读(100 <=> r--)
关于linux文件权限的详细内容,请参考:http://www.linuxidc.com/Linux/2015-04/116103.htm