Go参考手册
散列 | hash
hash/crc64
- import "hash/crc64"
- 概述
- 索引
概述
Package crc64 实现64位循环冗余校验或 CRC-64 校验和。有关信息,请参阅http://en.wikipedia.org/wiki/Cyclic_redundancy_check。
索引
- 常量
- func Checksum(data []byte, tab *Table) uint64
- func New(tab *Table) hash.Hash64
- func Update(crc uint64, tab *Table, p []byte) uint64
- type Table
- func MakeTable(poly uint64) *Table
包文件
crc64.go
常量
预定义的多项式。
const (
// ISO多项式,在ISO 3309中定义并用于HDLC。
ISO = 0xD800000000000000
// ECMA多项式,在ECMA 182中定义。
ECMA = 0xC96C5795D7870F42
)
CRC-64校验和的大小(以字节为单位)。
const Size = 8
func Checksum(查看源代码)
func Checksum(data []byte, tab *Table) uint64
校验和使用表格表示的多项式返回数据的 CRC-64 校验和。
func New(查看源代码)
func New(tab *Table) hash.Hash64
New 创建一个新的 hash.Hash64 ,使用 Table 表示的多项式计算 CRC-64 校验和。它的 Sum 方法将以 big-endian 字节顺序排列值。
func Update(查看源代码)
func Update(crc uint64, tab *Table, p []byte) uint64
更新返回将 p 中的字节添加到 crc 的结果。
type Table(查看源代码)
表格是一个256字的表格,表示高效处理的多项式。
type Table [256]uint64
func MakeTable(查看源代码)
func MakeTable(poly uint64) *Table
MakeTable 返回一个由指定多项式构成的表。该表的内容不得修改。
散列 | hash相关
Go 是一种编译型语言,它结合了解释型语言的游刃有余,动态类型语言的开发效率,以及静态类型的安全性。它也打算成为现代的,支持网络与多核计算的语言。要满足这些目标,需要解决一些语言上的问题:一个富有表达能力但轻量级的类型系统,并发与垃圾回收机制,严格的依赖规范等等。这些无法通过库或工具解决好,因此Go也就应运而生了。
主页 | https://golang.org/ |
源码 | https://go.googlesource.com/go |
发布版本 | 1.9.2 |