Go 语言

Go 语言教程 Go 语言环境安装 Go 语言结构 Go 语言基础语法 Go 语言数据类型 Go 语言变量 Go 语言常量 Go 语言运算符 Go 语言条件语句 Go 语言 if 语句 Go 语言 if...else 语句 Go 语言 if 语句嵌套 Go 语言 switch 语句 Go 语言 select 语句 Go 语言循环语句 Go 语言 for 循环 Go 语言循环嵌套 Go 语言 break 语句 Go 语言 continue 语句 Go 语言 goto 语句 Go 语言函数 Go 语言函数值传递值 Go 语言函数引用传递值 Go 语言函数作为值 Go 语言函数闭包 Go 语言函数方法 Go 语言变量作用域 Go 语言数组 Go 语言多维数组 Go 语言向函数传递数组 Go 语言指针 Go 语言指针数组 Go 语言指向指针的指针 Go 语言指针作为函数参数 Go 语言结构体 Go 语言切片(Slice) Go 语言范围(Range) Go 语言Map(集合) Go 语言递归函数 Go 语言类型转换 Go 语言接口 Go 错误处理 Go 语言开发工具Go 语言标准库

Go 语言标准库


package crc64

import "hash/crc64"

Package crc64 implements the 64-bit cyclic redundancy check, or CRC-64, checksum. See http://en.wikipedia.org/wiki/Cyclic_redundancy_check for information.

Go语言标准库 >>


  • Constants
  • type Table
  • func Checksum(data []byte, tab *Table) uint64
  • func Update(crc uint64, tab *Table, p []byte) uint64
  • func New(tab *Table) hash.Hash64
  • Constants

    const (
        // ISO 3309定义的ISO多项式,用于HDLC
        ISO = 0xD800000000000000
        // ECMA 182定义的ECMA多项式
        ECMA = 0xC96C5795D7870F42
    )

    预定义的多项式。

    const Size = 8

    CRC-64校验和的字节数。

    type Table

    type Table [256]uint64

    长度256的uint64切片,代表一个用于高效运作的多项式。

    func MakeTable

    func MakeTable(poly uint64) *Table

    返回一个代表poly指定的多项式的*Table。

    func Checksum

    func Checksum(data []byte, tab *Table) uint64

    返回数据data使用tab代表的多项式计算出的CRC-64校验和。

    func Update

    func Update(crc uint64, tab *Table, p []byte) uint64

    返回将切片p的数据采用tab表示的多项式添加到crc之后计算出的新校验和。

    func New

    func New(tab *Table) hash.Hash64

    创建一个使用tab代表的多项式计算CRC-64校验和的hash.Hash64接口。